<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[189394] trunk/LayoutTests</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/189394">189394</a></dd>
<dt>Author</dt> <dd>rniwa@webkit.org</dd>
<dt>Date</dt> <dd>2015-09-04 15:26:37 -0700 (Fri, 04 Sep 2015)</dd>
</dl>

<h3>Log Message</h3>
<pre>Import html/semantics test cases from W3C
https://bugs.webkit.org/show_bug.cgi?id=148822
&lt;rdar://problem/22583647&gt;

Patch by Chris Dumez &lt;cdumez@apple.com&gt; on 2015-09-04
Reviewed by Ryosuke Niwa.

Import 486 html/semantics test cases from W3C.
They take ~30 seconds to run on my MacBookPro.

* TestExpectations:
* http/tests/w3c/html/semantics/*: Added.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsChangeLog">trunk/LayoutTests/ChangeLog</a></li>
<li><a href="#trunkLayoutTestsTestExpectations">trunk/LayoutTests/TestExpectations</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li>trunk/LayoutTests/http/tests/w3c/html/resources/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlresourcescommonjs">trunk/LayoutTests/http/tests/w3c/html/resources/common.js</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/</li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/disabled-elements/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdisabledelementsdisabledElementexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/disabled-elements/disabledElement-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdisabledelementsdisabledElementhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/disabled-elements/disabledElement.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdisabledelementsw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/disabled-elements/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/</li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/</li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatastylingsupportalternatecss">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/alternate.css</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatastylingsupportemptytitlecss">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/emptytitle.css</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatastylingsupportnormalcss">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/normal.css</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatastylingsupportnotitlecss">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/notitle.css</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatastylingsupportunmatchcss">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/unmatch.css</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatastylingsupportw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/w3c-import.log</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatastylingw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathebaseelementbase_href_emptyexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_empty-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathebaseelementbase_href_emptyhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_empty.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathebaseelementbase_href_specifiedsubexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_specified.sub-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathebaseelementbase_href_specifiedsubhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_specified.sub.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathebaseelementbase_href_unspecifiedexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_unspecified-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathebaseelementbase_href_unspecifiedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_unspecified.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathebaseelementbase_multipleexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_multiple-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathebaseelementbase_multiplehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_multiple.html</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/resources/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathebaseelementresourcesexamplehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/resources/example.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathebaseelementresourcesexample2html">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/resources/example2.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathebaseelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathelinkelementlinkloadeventexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-load-event-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathelinkelementlinkloadeventhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-load-event.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathelinkelementlinkrellistexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-rellist-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathelinkelementlinkrellisthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-rellist.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathelinkelementlinkstyleerror01expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-style-error-01-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathelinkelementlinkstyleerror01html">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-style-error-01.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathelinkelementstylecss">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/style.css</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathelinkelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-meta-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathemetaelementcontainsjson">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-meta-element/contains.json</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathemetaelementthelangattribute012expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-meta-element/the-lang-attribute-012-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathemetaelementthelangattribute012html">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-meta-element/the-lang-attribute-012.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathemetaelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-meta-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementhtml_style_in_commentexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/html_style_in_comment-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementhtml_style_in_commenthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/html_style_in_comment.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementstyleerror01expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style-error-01-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementstyleerror01html">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style-error-01.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementstyle_disabledexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_disabled-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementstyle_disabledhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_disabled.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementstyle_eventsexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_events-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementstyle_eventshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_events.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementstyle_mediaexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_media-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementstyle_mediahtml">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_media.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementstyle_scopedexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_scoped-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementstyle_scopedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_scoped.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathetitleelementtitletext01expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-01-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathetitleelementtitletext01html">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-01.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathetitleelementtitletext02expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-02-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathetitleelementtitletext02xhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-02.xhtml</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathetitleelementtitletext03expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-03-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathetitleelementtitletext03html">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-03.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathetitleelementtitletext04expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-04-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathetitleelementtitletext04xhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-04.xhtml</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathetitleelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/edits/</li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-del-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticseditsthedelelementdel_effectexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-del-element/del_effect-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticseditsthedelelementdel_effecthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-del-element/del_effect.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticseditsthedelelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-del-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-ins-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticseditstheinselementins_effectexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-ins-element/ins_effect-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticseditstheinselementins_effecthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-ins-element/ins_effect.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticseditstheinselementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-ins-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/</li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/image-maps/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentimagemapscontainsjson">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/image-maps/contains.json</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentimagemapsw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/image-maps/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsaudio_volume_checkexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/audio_volume_check-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsaudio_volume_checkhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/audio_volume_check.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementscontainsjson">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/contains.json</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/error-codes/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementserrorcodesw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/error-codes/w3c-import.log</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_loadeddataexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadeddata-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_loadeddatahtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadeddata.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_loadeddata_noautoplayexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadeddata_noautoplay-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_loadeddata_noautoplayhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadeddata_noautoplay.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_loadedmetadataexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadedmetadata-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_loadedmetadatahtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadedmetadata.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_loadedmetadata_noautoplayexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadedmetadata_noautoplay-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_loadedmetadata_noautoplayhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadedmetadata_noautoplay.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_loadstartexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadstart-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_loadstarthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadstart.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_loadstart_noautoplayexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadstart_noautoplay-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_loadstart_noautoplayhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadstart_noautoplay.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_order_canplay_canplaythroughexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_canplay_canplaythrough-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_order_canplay_canplaythroughhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_canplay_canplaythrough.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_order_canplay_playingexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_canplay_playing-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_order_canplay_playinghtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_canplay_playing.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_order_loadedmetadata_loadeddataexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_loadedmetadata_loadeddata-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_order_loadedmetadata_loadeddatahtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_loadedmetadata_loadeddata.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_order_loadstart_progressexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_loadstart_progress-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_order_loadstart_progresshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_loadstart_progress.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_pauseexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_pause-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_pausehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_pause.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_pause_noautoplayexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_pause_noautoplay-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_pause_noautoplayhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_pause_noautoplay.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_playexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_play-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_playhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_play.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_play_noautoplayexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_play_noautoplay-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_play_noautoplayhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_play_noautoplay.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_playingexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_playing-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_playinghtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_playing.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_playing_noautoplayexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_playing_noautoplay-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_playing_noautoplayhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_playing_noautoplay.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_progressexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_progress-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_progresshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_progress.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_progress_noautoplayexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_progress_noautoplay-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_progress_noautoplayhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_progress_noautoplay.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_timeupdateexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_timeupdate-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_timeupdatehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_timeupdate.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_timeupdate_noautoplayexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_timeupdate_noautoplayhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_volumechangeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_volumechange-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_volumechangehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_volumechange.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementshistoricalexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/historical-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementshistoricalhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/historical.html</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/</li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/</li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLMediaElementaddTextTrackexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/addTextTrack-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLMediaElementaddTextTrackhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/addTextTrack.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLMediaElementtextTracksexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/textTracks-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLMediaElementtextTrackshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/textTracks.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLMediaElementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementdefaultexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/default-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementdefaulthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/default.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementkindexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/kind-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementkindhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/kind.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementlabelexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/label-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementlabelhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/label.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementreadyStateexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/readyState-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementreadyStatehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/readyState.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementsrcexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/src-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementsrchtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/src.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementsrclangexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/srclang-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementsrclanghtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/srclang.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementtrackexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/track-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementtrackhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/track.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackactiveCuesexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/activeCues-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackactiveCueshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/activeCues.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackaddCueexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/addCue-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackaddCuehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/addCue.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackconstantsexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/constants-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackconstantshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/constants.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackcuesexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/cues-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackcueshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/cues.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackkindexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/kind-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackkindhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/kind.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTracklabelexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/label-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTracklabelhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/label.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTracklanguageexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/language-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTracklanguagehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/language.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackmodeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/mode-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackmodehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/mode.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackoncuechangeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/oncuechange-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackoncuechangehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/oncuechange.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackremoveCueexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/removeCue-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackremoveCuehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/removeCue.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueendTimeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/endTime-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueendTimehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/endTime.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueidexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/id-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueidhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/id.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueonenterexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onenter-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueonenterhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onenter.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueonexitexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onexit-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueonexithtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onexit.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCuepauseOnExitexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/pauseOnExit-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCuepauseOnExithtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/pauseOnExit.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCuestartTimeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/startTime-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCuestartTimehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/startTime.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCuetrackexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/track-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCuetrackhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/track.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCuew3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueListgetCueByIdexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getCueById-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueListgetCueByIdhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getCueById.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueListgetterexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getter-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueListgetterhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getter.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueListlengthexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/length-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueListlengthhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/length.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueListw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackListgetTrackByIdexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getTrackById-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackListgetTrackByIdhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getTrackById.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackListgetterexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getter-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackListgetterhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getter.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackListlengthexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/length-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackListlengthhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/length.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackListonaddtrackexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onaddtrack-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackListonaddtrackhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onaddtrack.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackListonremovetrackexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onremovetrack-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackListonremovetrackhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onremovetrack.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackListw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTrackEventconstructorexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/constructor-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTrackEventconstructorhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/constructor.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTrackEventcreateEventexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/createEvent-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTrackEventcreateEventhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/createEvent.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTrackEventw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceloadeventsnetworkStateexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-events-networkState-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceloadeventsnetworkStatehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-events-networkState.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceloadremovesqueuederroreventexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-removes-queued-error-event-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceloadremovesqueuederroreventhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-removes-queued-error-event.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioncandidatemovedexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-moved-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioncandidatemovedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-moved.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioncandidateremovenolistenerexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-no-listener-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioncandidateremovenolistenerhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-no-listener.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeaudioconstructornosrcexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-audio-constructor-no-src-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeaudioconstructornosrchtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-audio-constructor-no-src.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsynceventexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-in-sync-event-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsynceventhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-in-sync-event.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertfragmentintodocumentexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-fragment-into-document-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertfragmentintodocumenthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-fragment-into-document.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertintodocumentexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-document-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertintodocumenthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-document.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertintoiframehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-iframe.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertparentintodocumentexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-parent-into-document-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertparentintodocumenthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-parent-into-document.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertsourceexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertsourceindivexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-div-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertsourceindivhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-div.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertsourceinnamespaceexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-namespace-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertsourceinnamespacehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-namespace.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertsourcenetworkStateexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-networkState-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertsourcenetworkStatehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-networkState.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertsourcehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeloadexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-load-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeloadhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-load.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokepauseexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokepausenetworkStateexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause-networkState-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokepausenetworkStatehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause-networkState.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokepausehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeplayexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-play-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeplayhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-play.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeremovefromdocumentexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeremovefromdocumentnetworkStateexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document-networkState-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeremovefromdocumentnetworkStatehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document-networkState.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeremovefromdocumenthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeremovesrcexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-src-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeremovesrchtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-src.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokesetsrcexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokesetsrcinnamespaceexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-in-namespace-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokesetsrcinnamespacehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-in-namespace.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokesetsrcnetworkStateexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-networkState-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokesetsrcnetworkStatehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-networkState.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokesetsrcnotindocumentexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-not-in-document-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokesetsrcnotindocumenthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-not-in-document.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokesetsrchtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointercontrolexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-control-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointercontrolhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-control.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointerinsertbrexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-br-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointerinsertbrhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-br.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointerinsertsourceexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-source-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointerinsertsourcehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-source.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointerinserttextexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-text-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointerinserttexthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-text.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointerremovesourceafterexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source-after-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointerremovesourceafterhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source-after.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointerremovesourceexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointerremovesourcehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointerremovetextexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-text-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointerremovetexthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-text.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionremovesourceexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-source-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionremovesourcehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-source.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionremovesrcexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-src-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionremovesrchtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-src.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionsourcemediaexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-source-media-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionsourcemediahtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-source-media.html</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resources/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourcesdelayedbrokenvideopy">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resources/delayed-broken-video.py</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourcesw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resources/w3c-import.log</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourcew3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/location-of-the-media-resource/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementslocationofthemediaresourcew3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/location-of-the-media-resource/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/mime-types/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsmimetypescanPlayTypeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/mime-types/canPlayType-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsmimetypescanPlayTypehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/mime-types/canPlayType.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsmimetypesw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/mime-types/w3c-import.log</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsnetworkState_during_loadstartexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/networkState_during_loadstart-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsnetworkState_during_loadstarthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/networkState_during_loadstart.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsnetworkState_initialexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/networkState_initial-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsnetworkState_initialhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/networkState_initial.html</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsoffsetsintothemediaresourcedurationexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/duration-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsoffsetsintothemediaresourcedurationhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/duration.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsoffsetsintothemediaresourcew3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/w3c-import.log</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementspaused_false_during_playexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/paused_false_during_play-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementspaused_false_during_playhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/paused_false_during_play.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementspaused_true_during_pauseexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/paused_true_during_pause-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementspaused_true_during_pausehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/paused_true_during_pause.html</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsplayingthemediaresourcepausemovetootherdocumentexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-to-other-document-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsplayingthemediaresourcepausemovetootherdocumenthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-to-other-document.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsplayingthemediaresourcepausemovewithindocumentexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-within-document-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsplayingthemediaresourcepausemovewithindocumenthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-within-document.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsplayingthemediaresourcepauseremovefromdocumentexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-remove-from-document-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsplayingthemediaresourcepauseremovefromdocumenthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-remove-from-document.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsplayingthemediaresourceplaybackRateexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/playbackRate-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsplayingthemediaresourceplaybackRatehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/playbackRate.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsplayingthemediaresourcew3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/w3c-import.log</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementspreload_reflects_none_autoplayexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/preload_reflects_none_autoplay-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementspreload_reflects_none_autoplayhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/preload_reflects_none_autoplay.html</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/ready-states/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadystatesw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/ready-states/w3c-import.log</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadyState_during_canplayexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_canplay-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadyState_during_canplayhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_canplay.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadyState_during_canplaythroughexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_canplaythrough-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadyState_during_canplaythroughhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_canplaythrough.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadyState_during_loadeddataexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_loadeddata-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadyState_during_loadeddatahtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_loadeddata.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadyState_during_loadedmetadataexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_loadedmetadata-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadyState_during_loadedmetadatahtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_loadedmetadata.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadyState_during_playingexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_playing-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadyState_during_playinghtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_playing.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadyState_initialexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_initial-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadyState_initialhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_initial.html</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/seeking/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsseekingw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/seeking/w3c-import.log</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementssrc_reflects_attribute_not_source_elementsexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/src_reflects_attribute_not_source_elements-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementssrc_reflects_attribute_not_source_elementshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/src_reflects_attribute_not_source_elements.html</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/synchronising-multiple-media-elements/</li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/synchronising-multiple-media-elements/media-controllers/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementssynchronisingmultiplemediaelementsmediacontrollerstasksourceexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/synchronising-multiple-media-elements/media-controllers/task-source-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementssynchronisingmultiplemediaelementsmediacontrollerstasksourcehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/synchronising-multiple-media-elements/media-controllers/task-source.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementssynchronisingmultiplemediaelementsmediacontrollersw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/synchronising-multiple-media-elements/media-controllers/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/</li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/</li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/resources/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementstracktrackelementresourcestrackdevtt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/resources/track.de.vtt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementstracktrackelementresourcestrackenvtt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/resources/track.en.vtt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementstracktrackelementresourcestrackfrvtt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/resources/track.fr.vtt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementstracktrackelementresourcestrackvtt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/resources/track.vtt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementstracktrackelementresourcesw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/resources/w3c-import.log</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementstracktrackelementsrcclearcuesexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/src-clear-cues-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementstracktrackelementsrcclearcueshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/src-clear-cues.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementstracktrackelementtrackapitexttracksexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/track-api-texttracks-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementstracktrackelementtrackapitexttrackshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/track-api-texttracks.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementstracktrackelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/user-interface/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsuserinterfacemutedexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/user-interface/muted-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsuserinterfacemutedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/user-interface/muted.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsuserinterfacew3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/user-interface/w3c-import.log</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsvideo_volume_checkexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/video_volume_check-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsvideo_volume_checkhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/video_volume_check.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsvolume_nonfiniteexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/volume_nonfinite-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsvolume_nonfinitehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/volume_nonfinite.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-area-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheareaelementareastringifierexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-area-element/area-stringifier-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheareaelementareastringifierhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-area-element/area-stringifier.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheareaelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-area-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheaudioelementaudio_001expectedhtm">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_001-expected.htm</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheaudioelementaudio_001htm">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_001.htm</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheaudioelementaudio_002expectedhtm">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_002-expected.htm</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheaudioelementaudio_002htm">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_002.htm</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheaudioelementaudio_constructorexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_constructor-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheaudioelementaudio_constructorhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_constructor.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheaudioelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dcanvasreadonlyexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.canvas.readonly-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dcanvasreadonlyhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.canvas.readonly.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dcanvasreferenceexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.canvas.reference-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dcanvasreferencehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.canvas.reference.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dgetcontextexistsexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.exists-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dgetcontextexistshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.exists.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dgetcontextextraargsexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.extraargs-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dgetcontextextraargshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.extraargs.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dgetcontextsharedexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.shared-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dgetcontextsharedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.shared.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dgetcontextuniqueexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.unique-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dgetcontextuniquehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.unique.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dscaledmanualpng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.scaled-manual.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dtypeexistsexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.exists-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dtypeexistshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.exists.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dtypeextendexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.extend-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dtypeextendhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.extend.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dtypeprototypeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.prototype-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dtypeprototypehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.prototype.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dtypereplaceexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.replace-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dtypereplacehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.replace.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontainsjson">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/contains.json</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextargumentsmissingexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.arguments.missing-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextargumentsmissinghtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.arguments.missing.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextcasesensitiveexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.casesensitive-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextcasesensitivehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.casesensitive.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextemptystringexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.emptystring-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextemptystringhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.emptystring.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextunrecognisedbadnameexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badname-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextunrecognisedbadnamehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badname.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextunrecognisedbadsuffixexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badsuffix-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextunrecognisedbadsuffixhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badsuffix.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextunrecognisednullsuffixexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.nullsuffix-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextunrecognisednullsuffixhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.nullsuffix.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextunrecognisedunicodeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.unicode-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextunrecognisedunicodehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.unicode.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementfallbackbasicexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.basic-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementfallbackbasichtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.basic.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementfallbackmultipleexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.multiple-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementfallbackmultiplehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.multiple.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementfallbacknestedexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.nested-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementfallbacknestedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.nested.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialcolourexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.colour-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialcolourhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.colour.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialcolourpng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.colour.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialreset2dstateexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.2dstate-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialreset2dstatehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.2dstate.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetclipexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.clip-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetcliphtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.clip.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetdifferentexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.different-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetdifferenthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.different.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetdifferentpng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.different.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetgradientexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.gradient-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetgradienthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.gradient.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetpathexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.path-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetpathhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.path.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetpathpng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.path.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetpatternexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.pattern-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetpatternhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.pattern.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetsameexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.same-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetsamehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.same.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetsamepng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.same.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresettransformexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.transform-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresettransformhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.transform.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritydataURIexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.dataURI-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritydataURIhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.dataURI.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritydrawImagecanvassubexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.drawImage.canvas.sub-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritydrawImagecanvassubhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.drawImage.canvas.sub.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritydrawImageimagesubexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.drawImage.image.sub-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritydrawImageimagesubhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.drawImage.image.sub.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatterncanvasfillStylesubexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.fillStyle.sub-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatterncanvasfillStylesubhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.fillStyle.sub.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatterncanvasstrokeStylesubexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.strokeStyle.sub-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatterncanvasstrokeStylesubhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.strokeStyle.sub.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatterncanvastimingsubexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.timing.sub-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatterncanvastimingsubhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.timing.sub.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatterncreatesubexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.create.sub-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatterncreatesubhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.create.sub.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatterncrosssubexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.cross.sub-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatterncrosssubhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.cross.sub.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatternimagefillStylesubexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.image.fillStyle.sub-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatternimagefillStylesubhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.image.fillStyle.sub.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatternimagestrokeStylesubexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.image.strokeStyle.sub-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatternimagestrokeStylesubhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.image.strokeStyle.sub.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecurityresetsubexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.reset.sub-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecurityresetsubhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.reset.sub.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesdefaultexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.default-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesdefaulthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.default.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesdefaultpng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.default.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesgetpng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.get.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesidlexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.idl-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesidlhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.idl.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesidlsetzeroexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.idl.set.zero-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesidlsetzerohtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.idl.set.zero.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsedecimalexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.decimal-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsedecimalhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.decimal.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsedecimalpng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.decimal.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseemexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.em-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseemhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.em.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseempng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.em.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseemptyexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.empty-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseemptyhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.empty.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseemptypng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.empty.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseexpexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.exp-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseexphtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.exp.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseexppng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.exp.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsehexexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.hex-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsehexhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.hex.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsejunkexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.junk-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsejunkhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.junk.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsejunkpng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.junk.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseminusexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.minus-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseminushtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.minus.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseminuspng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.minus.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseoctalexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.octal-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseoctalhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.octal.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseoctalpng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.octal.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseonlyspaceexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.onlyspace-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseonlyspacehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.onlyspace.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseonlyspacepng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.onlyspace.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsepercentexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.percent-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsepercenthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.percent.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsepercentpng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.percent.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseplusexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.plus-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseplushtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.plus.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsepluspng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.plus.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsespaceexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.space-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsespacehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.space.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsespacepng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.space.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsetrailingjunkexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.trailingjunk-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsetrailingjunkhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.trailingjunk.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsetrailingjunkpng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.trailingjunk.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsewhitespaceexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.whitespace-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsewhitespacehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.whitespace.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsewhitespacepng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.whitespace.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsezeroexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.zero-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsezerohtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.zero.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesreflectsetcontentexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setcontent-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesreflectsetcontenthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setcontent.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesreflectsetcontentpng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setcontent.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesreflectsetidlexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidl-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesreflectsetidlhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidl.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesreflectsetidlpng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidl.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesreflectsetidlzeroexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidlzero-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesreflectsetidlzerohtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidlzero.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesremovedexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.removed-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesremovedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.removed.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesremovedpng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.removed.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetpng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.set.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributedecimalexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.decimal-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributedecimalhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.decimal.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributedecimalpng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.decimal.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeemexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.em-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeemhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.em.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeempng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.em.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeemptyexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.empty-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeemptyhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.empty.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeemptypng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.empty.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeexpexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.exp-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeexphtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.exp.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeexppng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.exp.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributehexexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.hex-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributehexhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.hex.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributejunkexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.junk-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributejunkhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.junk.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributejunkpng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.junk.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeminusexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.minus-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeminushtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.minus.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeminuspng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.minus.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeoctalexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.octal-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeoctalhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.octal.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeoctalpng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.octal.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeonlyspaceexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.onlyspace-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeonlyspacehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.onlyspace.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeonlyspacepng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.onlyspace.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributepercentexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.percent-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributepercenthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.percent.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributepercentpng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.percent.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeplusexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.plus-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeplushtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.plus.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributepluspng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.plus.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributespaceexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.space-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributespacehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.space.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributespacepng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.space.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributetrailingjunkexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.trailingjunk-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributetrailingjunkhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.trailingjunk.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributetrailingjunkpng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.trailingjunk.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributewhitespaceexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.whitespace-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributewhitespacehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.whitespace.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributewhitespacepng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.whitespace.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributezeroexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.zero-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributezerohtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.zero.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesstyleexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.style-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesstylehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.style.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesstylepng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.style.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoBlobjpegexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toBlob.jpeg-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoBlobjpeghtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toBlob.jpeg.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoBlobpngexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toBlob.png-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoBlobpnghtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toBlob.png.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLarguments1expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.1-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLarguments1html">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.1.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLarguments2expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.2-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLarguments2html">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.2.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLarguments3expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.3-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLarguments3html">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.3.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLbogustypeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.bogustype-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLbogustypehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.bogustype.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLdefaultexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.default-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLdefaulthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.default.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegalphaexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.alpha-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegalphahtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.alpha.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegalphapng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.alpha.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegprimarycoloursexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.primarycolours-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegprimarycolourshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.primarycolours.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegprimarycolourspng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.primarycolours.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegqualitybasicexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.basic-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegqualitybasichtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.basic.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegqualitybasicpng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.basic.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegqualitynotnumberexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.notnumber-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegqualitynotnumberhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.notnumber.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegqualityoutsiderangeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.outsiderange-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegqualityoutsiderangehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.outsiderange.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpgexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpg-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpghtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpg.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLlowercaseasciiexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.ascii-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLlowercaseasciihtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.ascii.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLlowercaseunicodeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.unicode-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLlowercaseunicodehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.unicode.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLnocontextexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.nocontext-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLnocontexthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.nocontext.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLpngexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLpngcomplexcoloursexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.complexcolours-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLpngcomplexcolourshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.complexcolours.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLpngcomplexcolourspng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.complexcolours.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLpnghtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLpngprimarycoloursexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.primarycolours-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLpngprimarycolourshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.primarycolours.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLpngprimarycolourspng">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.primarycolours.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLunrecognisedexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.unrecognised-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLunrecognisedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.unrecognised.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLzeroheightexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zeroheight-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLzeroheighthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zeroheight.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLzerosizeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zerosize-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLzerosizehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zerosize.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLzerowidthexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zerowidth-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLzerowidthhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zerowidth.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtypedeleteexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.delete-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtypedeletehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.delete.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtypeexistsexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.exists-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtypeexistshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.exists.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtypeextendexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.extend-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtypeextendhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.extend.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtypenameexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.name-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtypenamehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.name.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtypeprototypeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.prototype-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtypeprototypehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.prototype.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtypereplaceexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.replace-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtypereplacehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.replace.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheembedelementembeddimensionexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-dimension-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheembedelementembeddimensionhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-dimension.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheembedelementembedrepresentnothing01expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-01-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheembedelementembedrepresentnothing01html">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-01.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheembedelementembedrepresentnothing02expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-02-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheembedelementembedrepresentnothing02html">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-02.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheembedelementembedrepresentnothing03expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-03-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheembedelementembedrepresentnothing03html">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-03.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheembedelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementiframe_javascript_url_01expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/iframe_javascript_url_01-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementiframe_javascript_url_01htm">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/iframe_javascript_url_01.htm</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementiframe_sandbox_allow_scriptexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_script-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementiframe_sandbox_allow_scripthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_script.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementmove_iframe_in_dom_01expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_01-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementmove_iframe_in_dom_01html">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_01.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementmove_iframe_in_dom_02expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_02-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementmove_iframe_in_dom_02html">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_02.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementmove_iframe_in_dom_03expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_03-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementmove_iframe_in_dom_03html">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_03.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementmove_iframe_in_dom_04expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_04-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementmove_iframe_in_dom_04html">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_04.html</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/resources/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementresourcessandbox_allow_scripthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/resources/sandbox_allow_script.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelement3jpg">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/3.jpg</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementImageconstructorexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/Image-constructor-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementImageconstructorhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/Image-constructor.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementbrokenimgjpg">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/brokenimg.jpg</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementcontainsjson">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/contains.json</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/current-pixel-density/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementcurrentpixeldensitybasicexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/current-pixel-density/basic-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementcurrentpixeldensitybasichtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/current-pixel-density/basic.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementcurrentpixeldensityerrorexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/current-pixel-density/error-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementcurrentpixeldensityerrorhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/current-pixel-density/error.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementcurrentpixeldensityw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/current-pixel-density/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/environment-changes/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementenvironmentchangesviewportchangeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/environment-changes/viewport-change-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementenvironmentchangesviewportchangehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/environment-changes/viewport-change.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementenvironmentchangesw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/environment-changes/w3c-import.log</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementimage1jpg">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/image-1.jpg</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementimgcompleteexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/img.complete-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementimgcompletehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/img.complete.html</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/sizes/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementsizesparseasizesattributeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementsizesparseasizesattributehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute.html</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/sizes/resources/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementsizesresourcessizesiframedsubhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/sizes/resources/sizes-iframed.sub.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementsizesw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/sizes/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementsrcsetcommonjs">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/common.js</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementsrcsetparseasrcsetattributeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/parse-a-srcset-attribute-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementsrcsetparseasrcsetattributehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/parse-a-srcset-attribute.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementsrcsetselectanimagesourceexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/select-an-image-source-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementsrcsetselectanimagesourcehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/select-an-image-source.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementsrcsetw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/w3c-import.log</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementupdatethesourcesetexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/update-the-source-set-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementupdatethesourcesethtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/update-the-source-set.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheobjectelementobjectattributesexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-attributes-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheobjectelementobjectattributeshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-attributes.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheobjectelementobjectfallbackexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-fallback-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheobjectelementobjectfallbackhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-fallback.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheobjectelementobjecthandlerexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-handler-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheobjectelementobjecthandlerhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-handler.html</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/resources/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheobjectelementresourcestest0html">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/resources/test0.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheobjectelementresourcestest1html">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/resources/test1.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheobjectelementresourcestest2html">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/resources/test2.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheobjectelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementvideotabindexexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video-tabindex-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementvideotabindexhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video-tabindex.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementvideo_content_imageexpectedhtm">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_content_image-expected.htm</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementvideo_content_imagehtm">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_content_image.htm</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementvideo_content_textexpectedhtm">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_content_text-expected.htm</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementvideo_content_texthtm">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_content_text.htm</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementvideo_dynamic_poster_absoluteexpectedhtm">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_dynamic_poster_absolute-expected.htm</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementvideo_dynamic_poster_absolutehtm">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_dynamic_poster_absolute.htm</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementvideo_dynamic_poster_relativeexpectedhtm">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_dynamic_poster_relative-expected.htm</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementvideo_dynamic_poster_relativehtm">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_dynamic_poster_relative.htm</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementvideo_initially_pausedexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_initially_paused-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementvideo_initially_pausedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_initially_paused.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/forms/</li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsattributescommontoformcontrolscontainsjson">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/contains.json</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsattributescommontoformcontrolsdirnameltrexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/dirname-ltr-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsattributescommontoformcontrolsdirnameltrhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/dirname-ltr.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsattributescommontoformcontrolsdisabledelements01expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/disabled-elements-01-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsattributescommontoformcontrolsdisabledelements01html">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/disabled-elements-01.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsattributescommontoformcontrolsformAction_document_addressexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/formAction_document_address-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsattributescommontoformcontrolsformAction_document_addresshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/formAction_document_address.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsattributescommontoformcontrolsformactionexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/formaction-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsattributescommontoformcontrolsformactionhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/formaction.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsattributescommontoformcontrolsw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintscontainsjson">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/contains.json</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationcheckValidityexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-checkValidity-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationcheckValidityhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-checkValidity.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationreportValidityexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-reportValidity-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationreportValidityhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-reportValidity.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvalidateexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validate-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvalidatehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validate.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditybadInputexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-badInput-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditybadInputhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-badInput.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditycustomErrorexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-customError-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditycustomErrorhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-customError.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditypatternMismatchexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-patternMismatch-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditypatternMismatchhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-patternMismatch.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvalidityrangeOverflowexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-rangeOverflow-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvalidityrangeOverflowhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-rangeOverflow.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvalidityrangeUnderflowexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-rangeUnderflow-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvalidityrangeUnderflowhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-rangeUnderflow.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditystepMismatchexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-stepMismatch-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditystepMismatchhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-stepMismatch.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditytooLongexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-tooLong-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditytooLonghtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-tooLong.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditytooShortexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-tooShort-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditytooShorthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-tooShort.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditytypeMismatchexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-typeMismatch-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditytypeMismatchhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-typeMismatch.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvalidityvalidexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-valid-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvalidityvalidhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-valid.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvalidityvalueMissingexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-valueMissing-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvalidityvalueMissinghtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-valueMissing.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationwillValidateexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-willValidate-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationwillValidatehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-willValidate.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsinputwillvalidateexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/inputwillvalidate-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsinputwillvalidatehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/inputwillvalidate.html</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/support/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintssupportvalidatorjs">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/support/validator.js</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintssupportw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/support/w3c-import.log</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-control-infrastructure/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsformcontrolinfrastructurecontainsjson">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-control-infrastructure/contains.json</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsformcontrolinfrastructureformexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-control-infrastructure/form-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsformcontrolinfrastructureformhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-control-infrastructure/form.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsformcontrolinfrastructurew3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-control-infrastructure/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-submission-0/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsformsubmission0containsjson">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-submission-0/contains.json</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsformsubmission0w3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-submission-0/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/forms/introduction-1/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsintroduction1containsjson">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/introduction-1/contains.json</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsintroduction1w3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/introduction-1/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/forms/resetting-a-form/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsresettingaformresetformexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/resetting-a-form/reset-form-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsresettingaformresetformhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/resetting-a-form/reset-form.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsresettingaformw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/resetting-a-form/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstextfieldselectionoriginalidjson">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/original-id.json</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstextfieldselectionselectionexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstextfieldselectionselectionnotapplicationexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection-not-application-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstextfieldselectionselectionnotapplicationtextareaexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection-not-application-textarea-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstextfieldselectionselectionnotapplicationtextareahtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection-not-application-textarea.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstextfieldselectionselectionnotapplicationhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection-not-application.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstextfieldselectionselectionhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstextfieldselectiontextfieldselectionsetSelectionRangeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/textfieldselection-setSelectionRange-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstextfieldselectiontextfieldselectionsetSelectionRangehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/textfieldselection-setSelectionRange.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstextfieldselectionw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-button-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthebuttonelementbuttoneventsexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-button-element/button-events-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthebuttonelementbuttoneventshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-button-element/button-events.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthebuttonelementbuttonvalidationexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-button-element/button-validation-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthebuttonelementbuttonvalidationhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-button-element/button-validation.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthebuttonelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-button-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-datalist-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthedatalistelementdatalistoptionsexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-datalist-element/datalistoptions-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthedatalistelementdatalistoptionshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-datalist-element/datalistoptions.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthedatalistelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-datalist-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthefieldsetelementHTMLFieldSetElementexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/HTMLFieldSetElement-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthefieldsetelementHTMLFieldSetElementhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/HTMLFieldSetElement.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthefieldsetelementdisabled001expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/disabled-001-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthefieldsetelementdisabled001html">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/disabled-001.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthefieldsetelementdisabled002expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/disabled-002-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthefieldsetelementdisabled002xhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/disabled-002.xhtml</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthefieldsetelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementformautocompleteexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-autocomplete-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementformautocompletehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-autocomplete.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementformelementsinterfaces01expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-interfaces-01-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementformelementsinterfaces01html">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-interfaces-01.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementformelementsmatchesexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-matches-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementformelementsmatcheshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-matches.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementformelementsnameditem01expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-nameditem-01-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementformelementsnameditem01html">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-nameditem-01.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementformelementsnameditem02expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-nameditem-02-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementformelementsnameditem02html">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-nameditem-02.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementformnameditemexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-nameditem-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementformnameditemhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-nameditem.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementbuttonexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/button-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementbuttonhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/button.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementcheckboxexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/checkbox-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementcheckboxhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/checkbox.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementcheckedexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/checked-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementcheckedxhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/checked.xhtml</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementcolorexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/color-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementcolorhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/color.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementcontainsjson">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/contains.json</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementdateexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/date-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementdatehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/date.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementdatetime2expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime-2-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementdatetime2html">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime-2.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementdatetimeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementdatetimelocalexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime-local-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementdatetimelocalhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime-local.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementdatetimehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementemailexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/email-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementemailhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/email.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementfilesexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/files-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementfileshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/files.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementhiddenexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/hidden-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementhiddenhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/hidden.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementimage01expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/image01-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementimage01html">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/image01.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementinputtextselection01expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-textselection-01-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementinputtextselection01html">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-textselection-01.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementinputtypebuttonexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-type-button-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementinputtypebuttonhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-type-button.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementinputtypecheckboxexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-type-checkbox-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementinputtypecheckboxhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-type-checkbox.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementmonthexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/month-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementmonthhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/month.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementnumberexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/number-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementnumberhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/number.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementpasswordexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/password-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementpasswordhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/password.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementpattern_attributeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/pattern_attribute-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementpattern_attributehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/pattern_attribute.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementradioexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/radio-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementradiogroupnamecaseexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/radio-groupname-case-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementradiogroupnamecasehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/radio-groupname-case.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementradiohtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/radio.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementrange2expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/range-2-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementrange2html">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/range-2.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementrangeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/range-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementrangehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/range.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementrequired_attributeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/required_attribute-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementrequired_attributehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/required_attribute.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementresetexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/reset-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementresethtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/reset.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementsearch_inputexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/search_input-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementsearch_inputhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/search_input.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementtelephoneexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/telephone-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementtelephonehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/telephone.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementtextexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/text-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementtexthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/text.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementtime2expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/time-2-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementtime2html">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/time-2.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementtimeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/time-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementtimehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/time.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementtypechangestateexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/type-change-state-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementtypechangestatehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/type-change-state.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementurlexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/url-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementurlhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/url.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementvalueModeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/valueMode-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementvalueModehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/valueMode.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/w3c-import.log</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementweekexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/week-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementweekhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/week.html</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-label-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthelabelelementlabelattributesexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-label-element/label-attributes-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthelabelelementlabelattributeshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-label-element/label-attributes.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthelabelelementlabelableelementsexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-label-element/labelable-elements-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthelabelelementlabelableelementshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-label-element/labelable-elements.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthelabelelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-label-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-legend-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthelegendelementlegendformexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-legend-element/legend-form-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthelegendelementlegendformhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-legend-element/legend-form.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthelegendelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-legend-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-meter-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthemeterelementmeterexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-meter-element/meter-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthemeterelementmeterhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-meter-element/meter.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthemeterelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-meter-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptionlabelexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-label-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptionlabelvaluejs">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-label-value.js</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptionlabelhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-label.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptiontextbackslashexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-backslash-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptiontextbackslashhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-backslash.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptiontextlabelexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-label-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptiontextlabelhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-label.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptiontextrecurseexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-recurse-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptiontextrecursehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-recurse.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptiontextspacesexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-spaces-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptiontextspaceshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-spaces.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptionvalueexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-value-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptionvaluehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-value.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-output-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheoutputelementoutputexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-output-element/output-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheoutputelementoutputhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-output-element/output.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheoutputelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-output-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-progress-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheprogresselementprogress2expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-progress-element/progress-2-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheprogresselementprogress2html">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-progress-element/progress-2.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheprogresselementprogressexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-progress-element/progress-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheprogresselementprogresshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-progress-element/progress.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheprogresselementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-progress-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheselectelementcommonHTMLOptionsCollectionexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/common-HTMLOptionsCollection-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheselectelementcommonHTMLOptionsCollectionnamedItemexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/common-HTMLOptionsCollection-namedItem-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheselectelementcommonHTMLOptionsCollectionnamedItemhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/common-HTMLOptionsCollection-namedItem.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheselectelementcommonHTMLOptionsCollectionhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/common-HTMLOptionsCollection.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheselectelementselectnamedgetterexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/select-named-getter-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheselectelementselectnamedgetterhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/select-named-getter.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheselectelementselectremoveexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/select-remove-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheselectelementselectremovehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/select-remove.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformstheselectelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-textarea-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthetextareaelementtextareanewlinebidiexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-textarea-element/textarea-newline-bidi-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthetextareaelementtextareanewlinebidihtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-textarea-element/textarea-newline-bidi.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthetextareaelementtextareatypeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-textarea-element/textarea-type-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthetextareaelementtextareatypehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-textarea-element/textarea-type.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsformsthetextareaelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-textarea-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/</li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dd-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheddelementgroupingddexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dd-element/grouping-dd-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheddelementgroupingddhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dd-element/grouping-dd.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheddelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dd-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-div-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthedivelementgroupingdivexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-div-element/grouping-div-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthedivelementgroupingdivhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-div-element/grouping-div.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthedivelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-div-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dl-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthedlelementgroupingdlexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dl-element/grouping-dl-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthedlelementgroupingdlhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dl-element/grouping-dl.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthedlelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dl-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dt-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthedtelementgroupingdtexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dt-element/grouping-dt-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthedtelementgroupingdthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dt-element/grouping-dt.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthedtelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dt-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figcaption-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthefigcaptionelementgroupingfigcaptionexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figcaption-element/grouping-figcaption-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthefigcaptionelementgroupingfigcaptionhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figcaption-element/grouping-figcaption.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthefigcaptionelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figcaption-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figure-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthefigureelementgroupingfigureexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figure-element/grouping-figure-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthefigureelementgroupingfigurehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figure-element/grouping-figure.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthefigureelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figure-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-hr-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthehrelementgroupinghrexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-hr-element/grouping-hr-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthehrelementgroupinghrhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-hr-element/grouping-hr.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthehrelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-hr-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthelielementgroupingliexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthelielementgroupinglireftest001expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-001-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthelielementgroupinglireftest001refexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-001-ref-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthelielementgroupinglireftest001refhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-001-ref.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthelielementgroupinglireftest001html">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-001.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthelielementgroupinglireftest002expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthelielementgroupinglireftest002refexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002-ref-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthelielementgroupinglireftest002refhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002-ref.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthelielementgroupinglireftest002html">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthelielementgroupinglihtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthelielementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolrevreftest001expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-rev-reftest-001-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolrevreftest001refexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-rev-reftest-001-ref-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolrevreftest001refhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-rev-reftest-001-ref.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolrevreftest001html">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-rev-reftest-001.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolstartreftest001expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-001-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolstartreftest001refexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-001-ref-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolstartreftest001refhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-001-ref.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolstartreftest001html">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-001.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolstartreftest002expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-002-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolstartreftest002refexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-002-ref-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolstartreftest002refhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-002-ref.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolstartreftest002html">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-002.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingoltypereftest001expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-001-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingoltypereftest001refexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-001-ref-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingoltypereftest001refhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-001-ref.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingoltypereftest001html">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-001.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingoltypereftest002expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-002-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingoltypereftest002refexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-002-ref-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingoltypereftest002refhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-002-ref.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingoltypereftest002html">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-002.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingoltypereftest003expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-003-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingoltypereftest003refexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-003-ref-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingoltypereftest003refhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-003-ref.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingoltypereftest003html">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-003.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementolstartreflection1expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/ol.start-reflection-1-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementolstartreflection1html">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/ol.start-reflection-1.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementolstartreflection2expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/ol.start-reflection-2-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementolstartreflection2html">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/ol.start-reflection-2.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementreversed2expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/reversed-2-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementreversed2html">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/reversed-2.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-p-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthepelementgroupingpexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-p-element/grouping-p-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthepelementgroupingphtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-p-element/grouping-p.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthepelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-p-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthepreelementgroupingpreexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthepreelementgroupingprereftest001expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre-reftest-001-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthepreelementgroupingprereftest001refexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre-reftest-001-ref-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthepreelementgroupingprereftest001refhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre-reftest-001-ref.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthepreelementgroupingprereftest001html">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre-reftest-001.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthepreelementgroupingprehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthepreelementprenewlinebidiexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/pre-newline-bidi-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthepreelementprenewlinebidihtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/pre-newline-bidi.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthepreelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ul-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheulelementgroupingulexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ul-element/grouping-ul-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheulelementgroupingulhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ul-element/grouping-ul.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheulelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ul-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/</li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/commands/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementscommandscontainsjson">trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/commands/contains.json</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementscommandsw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/commands/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-details-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementsthedetailselementdetailsexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-details-element/details-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementsthedetailselementdetailshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-details-element/details.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementsthedetailselementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-details-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementsthedialogelementcontainsjson">trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/contains.json</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementsthedialogelementdialogcloseexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/dialog-close-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementsthedialogelementdialogclosehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/dialog-close.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementsthedialogelementdialogshowModalexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/dialog-showModal-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementsthedialogelementdialogshowModalhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/dialog-showModal.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementsthedialogelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-menu-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementsthemenuelementcontainsjson">trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-menu-element/contains.json</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementsthemenuelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-menu-element/w3c-import.log</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsinterfacesexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/interfaces-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsinterfaceshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/interfaces.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsinterfacesjs">trunk/LayoutTests/http/tests/w3c/html/semantics/interfaces.js</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/links/</li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/links/downloading-resources/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticslinksdownloadingresourcescontainsjson">trunk/LayoutTests/http/tests/w3c/html/semantics/links/downloading-resources/contains.json</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticslinksdownloadingresourcesw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/links/downloading-resources/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/links/linktypes/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticslinkslinktypescontainsjson">trunk/LayoutTests/http/tests/w3c/html/semantics/links/linktypes/contains.json</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticslinkslinktypesoriginalidjson">trunk/LayoutTests/http/tests/w3c/html/semantics/links/linktypes/original-id.json</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticslinkslinktypesw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/links/linktypes/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/</li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementcontainsjson">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/contains.json</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementlogpy">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/log.py</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptbeforeaftereventsexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-before-after-events-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptbeforeaftereventshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-before-after-events.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptforeventexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-for-event-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptforeventxhtmlexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-for-event-xhtml-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptforeventxhtmlxhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-for-event-xhtml.xhtml</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptforeventhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-for-event.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptlanguagetypeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-language-type-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptlanguagetypehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-language-type.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptlanguages01expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-languages-01-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptlanguages01html">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-languages-01.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptlanguages02expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-languages-02-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptlanguages02html">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-languages-02.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptnoembednoframesiframeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-noembed-noframes-iframe-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptnoembednoframesiframexhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-noembed-noframes-iframe.xhtml</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptonloadstringexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-onload-string-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptonloadstringhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-onload-string.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscripttextexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-text-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscripttextxhtmlexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-text-xhtml-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscripttextxhtmlxhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-text-xhtml.xhtml</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscripttexthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-text.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/</li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstoparsingxhtmldocumentsnodedocumentexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/node-document-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstoparsingxhtmldocumentsnodedocumenthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/node-document.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstoparsingxhtmldocumentstemplatechildnodesexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/template-child-nodes-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstoparsingxhtmldocumentstemplatechildnodeshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/template-child-nodes.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstoparsingxhtmldocumentsw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-serializing-xhtml-documents/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstoserializingxhtmldocumentsouterhtmlexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-serializing-xhtml-documents/outerhtml-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstoserializingxhtmldocumentsouterhtmlhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-serializing-xhtml-documents/outerhtml.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstoserializingxhtmldocumentsw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-serializing-xhtml-documents/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstothecssuseragentstylesheetcssuseragentstylesheettest001expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-001-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstothecssuseragentstylesheetcssuseragentstylesheettest001html">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-001.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstothecssuseragentstylesheetcssuseragentstylesheettest002expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-002-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstothecssuseragentstylesheetcssuseragentstylesheettest002html">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-002.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstothecssuseragentstylesheetcssuseragentstylesheettest003expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-003-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstothecssuseragentstylesheetcssuseragentstylesheettest003html">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-003.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstothecssuseragentstylesheetw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstothestepstocloneanodetemplateclonechildrenexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/template-clone-children-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstothestepstocloneanodetemplateclonechildrenhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/template-clone-children.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstothestepstocloneanodetemplatescopydocumentownerexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/templates-copy-document-owner-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstothestepstocloneanodetemplatescopydocumentownerhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/templates-copy-document-owner.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstothestepstocloneanodew3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementdefinitionstemplatecontentsexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementdefinitionstemplatecontentsownerdocumenttypeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-document-type-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementdefinitionstemplatecontentsownerdocumenttypehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-document-type.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementdefinitionstemplatecontentsownertest001expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-001-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementdefinitionstemplatecontentsownertest001html">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-001.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementdefinitionstemplatecontentsownertest002expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-002-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementdefinitionstemplatecontentsownertest002html">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-002.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementdefinitionstemplatecontentshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementdefinitionsw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/innerhtml-on-templates/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementinnerhtmlontemplatesinnerhtmlexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/innerhtml-on-templates/innerhtml-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementinnerhtmlontemplatesinnerhtmlhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/innerhtml-on-templates/innerhtml.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementinnerhtmlontemplatesw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/innerhtml-on-templates/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcesendtemplatetaginbodyhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/end-template-tag-in-body.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcesendtemplatetaginheadhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/end-template-tag-in-head.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcesframesetendtaghtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/frameset-end-tag.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcesheadtemplatecontentsdivnoendtaghtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/head-template-contents-div-no-end-tag.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcesheadtemplatecontentstablenoendtaghtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/head-template-contents-table-no-end-tag.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourceshtmlstarttaghtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/html-start-tag.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatechildnodesdivxhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-child-nodes-div.xhtml</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatechildnodesnestedxhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-child-nodes-nested.xhtml</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatecontentsattributehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-attribute.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatecontentsbodyhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-body.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatecontentsdivnoendtaghtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-div-no-end-tag.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatecontentsemptyhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-empty.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatecontentsframesethtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-frameset.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatecontentsheadhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-head.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatecontentshtmlhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-html.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatecontentsnestedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-nested.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatecontentstablenoendtaghtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-table-no-end-tag.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatecontentstexthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-text.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatecontentshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatedescendantbodyhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-descendant-body.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatedescendantframesethtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-descendant-frameset.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatedescendantheadhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-descendant-head.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestwotemplateshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/two-templates.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcesw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/serializing-html-templates/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementserializinghtmltemplatesouterhtmlexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/serializing-html-templates/outerhtml-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementserializinghtmltemplatesouterhtmlhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/serializing-html-templates/outerhtml.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementserializinghtmltemplatesw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/serializing-html-templates/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementcontentattributeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/content-attribute-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementcontentattributehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/content-attribute.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementnodedocumentchangesexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/node-document-changes-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementnodedocumentchangeshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/node-document-changes.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementtemplateasadescendantexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-as-a-descendant-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementtemplateasadescendanthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-as-a-descendant.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementtemplatecontentexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-content-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementtemplatecontentnodedocumentexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-content-node-document-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementtemplatecontentnodedocumenthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-content-node-document.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementtemplatecontenthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-content.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementtemplatedescendantbodyexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-body-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementtemplatedescendantbodyhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-body.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementtemplatedescendantframesetexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-frameset-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementtemplatedescendantframesethtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-frameset.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementtemplatedescendantheadexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-head-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementtemplatedescendantheadhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-head.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/sections/</li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/sections/headings-and-sections/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticssectionsheadingsandsectionscontainsjson">trunk/LayoutTests/http/tests/w3c/html/semantics/sections/headings-and-sections/contains.json</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticssectionsheadingsandsectionsw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/sections/headings-and-sections/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/sections/the-h1-h2-h3-h4-h5-and-h6-elements/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticssectionstheh1h2h3h4h5andh6elementsoriginalidjson">trunk/LayoutTests/http/tests/w3c/html/semantics/sections/the-h1-h2-h3-h4-h5-and-h6-elements/original-id.json</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticssectionstheh1h2h3h4h5andh6elementsw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/sections/the-h1-h2-h3-h4-h5-and-h6-elements/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/</li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassescheckedexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/checked-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassescheckedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/checked.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesdefaultexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/default-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesdefaulthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/default.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesdirexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/dir-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesdirhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/dir.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesdir01expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/dir01-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesdir01html">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/dir01.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesdisabledexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/disabled-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesdisabledhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/disabled.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesenabledexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/enabled-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesenabledhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/enabled.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesfocusexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/focus-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesfocushtml">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/focus.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesindeterminateexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/indeterminate-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesindeterminatehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/indeterminate.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesinrangeoutofrangeexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/inrange-outofrange-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesinrangeoutofrangehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/inrange-outofrange.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclasseslinkexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/link-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclasseslinkhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/link.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesreadwritereadonlyexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/readwrite-readonly-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesreadwritereadonlyhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/readwrite-readonly.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesrequiredoptionalexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/required-optional-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesrequiredoptionalhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/required-optional.html</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/resources/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesresourcesfocusiframehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/resources/focus-iframe.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesutilsjs">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/utils.js</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesvalidinvalidexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/valid-invalid-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesvalidinvalidhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/valid-invalid.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/</li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/attributes-common-to-td-and-th-elements/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardataattributescommontotdandthelementscellIndexexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/attributes-common-to-td-and-th-elements/cellIndex-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardataattributescommontotdandthelementscellIndexhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/attributes-common-to-td-and-th-elements/cellIndex.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardataattributescommontotdandthelementsw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/attributes-common-to-td-and-th-elements/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/processing-model-1/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardataprocessingmodel1containsjson">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/processing-model-1/contains.json</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardataprocessingmodel1w3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/processing-model-1/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-caption-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathecaptionelementcaption_001expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-caption-element/caption_001-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathecaptionelementcaption_001html">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-caption-element/caption_001.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathecaptionelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-caption-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementcaptionmethodsexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/caption-methods-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementcaptionmethodshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/caption-methods.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementcontainsjson">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/contains.json</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementcreateTBodyexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/createTBody-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementcreateTBodyhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/createTBody.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementdeletecaptionexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/delete-caption-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementdeletecaptionhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/delete-caption.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementinsertRowmethod01expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/insertRow-method-01-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementinsertRowmethod01html">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/insertRow-method-01.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementinsertRowmethod02expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/insertRow-method-02-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementinsertRowmethod02html">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/insertRow-method-02.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementtBodiesexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/tBodies-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementtBodieshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/tBodies.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementtableinsertRowexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/table-insertRow-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementtableinsertRowhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/table-insertRow.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementtablerowsexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/table-rows-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementtablerowshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/table-rows.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tbody-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetbodyelementdeleteRowexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tbody-element/deleteRow-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetbodyelementdeleteRowhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tbody-element/deleteRow.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetbodyelementinsertRowexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tbody-element/insertRow-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetbodyelementinsertRowhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tbody-element/insertRow.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetbodyelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tbody-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetrelementdeleteCellexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/deleteCell-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetrelementdeleteCellhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/deleteCell.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetrelementinsertCellexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/insertCell-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetrelementinsertCellhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/insertCell.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetrelementrowIndexexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/rowIndex-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetrelementrowIndexhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/rowIndex.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetrelementsectionRowIndexexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/sectionRowIndex-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetrelementsectionRowIndexhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/sectionRowIndex.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetrelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/</li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticstheaelementastringifierexpectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a-stringifier-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticstheaelementastringifierhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a-stringifier.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticstheaelementatextgetter01expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a.text-getter-01-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticstheaelementatextgetter01html">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a.text-getter-01.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticstheaelementatextsetter01expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a.text-setter-01-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticstheaelementatextsetter01html">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a.text-setter-01.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticstheaelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdiautodirdefaultexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-auto-dir-default-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdiautodirdefaulthtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-auto-dir-default.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutralmissingpdfexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-missing-pdf-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutralmissingpdfhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-missing-pdf.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutralnestedexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-nested-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutralnestedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-nested.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutralnumberexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-number-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutralnumberhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-number.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutralseparateexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-separate-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutralseparatehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-separate.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltoanotherbdi1expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-1-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltoanotherbdi1html">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-1.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltoanotherbdi2expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-2-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltoanotherbdi2html">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-2.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltoletterfollowing1expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-1-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltoletterfollowing1html">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-1.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltoletterfollowing2expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-2-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltoletterfollowing2html">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-2.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltoletterpreceding1expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-1-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltoletterpreceding1html">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-1.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltoletterpreceding2expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-2-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltoletterpreceding2html">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-2.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltonumberfollowing1expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-1-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltonumberfollowing1html">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-1.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltonumberfollowing2expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-2-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltonumberfollowing2html">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-2.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltosurroundingrunexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-surrounding-run-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltosurroundingrunhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-surrounding-run.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutralwrappedexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-wrapped-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutralwrappedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-wrapped.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdiparagraphlevelcontainerexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-paragraph-level-container-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdiparagraphlevelcontainerhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-paragraph-level-container.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdoelementbdochildexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-child-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdoelementbdochildhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-child.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdoelementbdoltrexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-ltr-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdoelementbdoltrhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-ltr.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdoelementbdooverrideexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-override-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdoelementbdooverridehtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-override.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdoelementbidi001expectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bidi-001-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdoelementbidi001html">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bidi-001.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdoelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-br-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebrelementbrbidiexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-br-element/br-bidi-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebrelementbrbidiininlineancestorsexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-br-element/br-bidi-in-inline-ancestors-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebrelementbrbidiininlineancestorshtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-br-element/br-bidi-in-inline-ancestors.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebrelementbrbidihtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-br-element/br-bidi.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebrelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-br-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-time-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthetimeelement001expectedtxt">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-time-element/001-expected.txt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthetimeelement001html">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-time-element/001.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthetimeelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-time-element/w3c-import.log</a></li>
<li>trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-wbr-element/</li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthewbrelementw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-wbr-element/w3c-import.log</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthewbrelementwbrelementexpectedhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-wbr-element/wbr-element-expected.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthewbrelementwbrelementhtml">trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-wbr-element/wbr-element.html</a></li>
<li><a href="#trunkLayoutTestshttptestsw3chtmlsemanticsw3cimportlog">trunk/LayoutTests/http/tests/w3c/html/semantics/w3c-import.log</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcescanvastestscss">trunk/LayoutTests/http/tests/w3c/resources/canvas-tests.css</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcescanvastestsjs">trunk/LayoutTests/http/tests/w3c/resources/canvas-tests.js</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcescssredtxt">trunk/LayoutTests/http/tests/w3c/resources/css-red.txt</a></li>
<li>trunk/LayoutTests/http/tests/w3c/resources/images/</li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesanimgrgif">trunk/LayoutTests/http/tests/w3c/resources/images/anim-gr.gif</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesanimgrpng">trunk/LayoutTests/http/tests/w3c/resources/images/anim-gr.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesanimpostergrpng">trunk/LayoutTests/http/tests/w3c/resources/images/anim-poster-gr.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesbackgroundpng">trunk/LayoutTests/http/tests/w3c/resources/images/background.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesblackrectanglepng">trunk/LayoutTests/http/tests/w3c/resources/images/black-rectangle.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesblueareapng">trunk/LayoutTests/http/tests/w3c/resources/images/blue-area.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesblueborderpng">trunk/LayoutTests/http/tests/w3c/resources/images/blue-border.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesbluepng">trunk/LayoutTests/http/tests/w3c/resources/images/blue.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesblue96x96png">trunk/LayoutTests/http/tests/w3c/resources/images/blue96x96.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesbrokenpng">trunk/LayoutTests/http/tests/w3c/resources/images/broken.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagescanvaslinepng">trunk/LayoutTests/http/tests/w3c/resources/images/canvas-line.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesfailgif">trunk/LayoutTests/http/tests/w3c/resources/images/fail.gif</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesggrr256x256png">trunk/LayoutTests/http/tests/w3c/resources/images/ggrr-256x256.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesgreen100x50png">trunk/LayoutTests/http/tests/w3c/resources/images/green-100x50.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesgreen16x16png">trunk/LayoutTests/http/tests/w3c/resources/images/green-16x16.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesgreen1x1png">trunk/LayoutTests/http/tests/w3c/resources/images/green-1x1.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesgreen256x256png">trunk/LayoutTests/http/tests/w3c/resources/images/green-256x256.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesgreen2x2png">trunk/LayoutTests/http/tests/w3c/resources/images/green-2x2.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesgreenpng">trunk/LayoutTests/http/tests/w3c/resources/images/green.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesgreensvg">trunk/LayoutTests/http/tests/w3c/resources/images/green.svg</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesgrgr256x256png">trunk/LayoutTests/http/tests/w3c/resources/images/grgr-256x256.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesmovie_300_frame_0png">trunk/LayoutTests/http/tests/w3c/resources/images/movie_300_frame_0.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesred16x16png">trunk/LayoutTests/http/tests/w3c/resources/images/red-16x16.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesredzeroheightsvg">trunk/LayoutTests/http/tests/w3c/resources/images/red-zeroheight.svg</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesredzerosizesvg">trunk/LayoutTests/http/tests/w3c/resources/images/red-zerosize.svg</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesredzerowidthsvg">trunk/LayoutTests/http/tests/w3c/resources/images/red-zerowidth.svg</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesredpng">trunk/LayoutTests/http/tests/w3c/resources/images/red.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesredtransparentpng">trunk/LayoutTests/http/tests/w3c/resources/images/redtransparent.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesrgrg256x256png">trunk/LayoutTests/http/tests/w3c/resources/images/rgrg-256x256.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesrrgg256x256png">trunk/LayoutTests/http/tests/w3c/resources/images/rrgg-256x256.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagessmileypng">trunk/LayoutTests/http/tests/w3c/resources/images/smiley.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesthreecolorspng">trunk/LayoutTests/http/tests/w3c/resources/images/threecolors.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagestransparentpng">trunk/LayoutTests/http/tests/w3c/resources/images/transparent.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagestransparent50png">trunk/LayoutTests/http/tests/w3c/resources/images/transparent50.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesyellowpng">trunk/LayoutTests/http/tests/w3c/resources/images/yellow.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesimagesyellow75png">trunk/LayoutTests/http/tests/w3c/resources/images/yellow75.png</a></li>
<li>trunk/LayoutTests/http/tests/w3c/resources/media/</li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesmediaA4mp4">trunk/LayoutTests/http/tests/w3c/resources/media/A4.mp4</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesmediaA4ogv">trunk/LayoutTests/http/tests/w3c/resources/media/A4.ogv</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesmediafoovtt">trunk/LayoutTests/http/tests/w3c/resources/media/foo.vtt</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesmediafoovttheaders">trunk/LayoutTests/http/tests/w3c/resources/media/foo.vtt.headers</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesmediagreenat15mp4">trunk/LayoutTests/http/tests/w3c/resources/media/green-at-15.mp4</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesmediagreenat15ogv">trunk/LayoutTests/http/tests/w3c/resources/media/green-at-15.ogv</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesmediamovie_300mp4">trunk/LayoutTests/http/tests/w3c/resources/media/movie_300.mp4</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesmediamovie_300ogv">trunk/LayoutTests/http/tests/w3c/resources/media/movie_300.ogv</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesmediamovie_5mp4">trunk/LayoutTests/http/tests/w3c/resources/media/movie_5.mp4</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesmediamovie_5ogv">trunk/LayoutTests/http/tests/w3c/resources/media/movie_5.ogv</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesmediaposterpng">trunk/LayoutTests/http/tests/w3c/resources/media/poster.png</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesmediasound_5mp3">trunk/LayoutTests/http/tests/w3c/resources/media/sound_5.mp3</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesmediasound_5oga">trunk/LayoutTests/http/tests/w3c/resources/media/sound_5.oga</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesmediawhitemp4">trunk/LayoutTests/http/tests/w3c/resources/media/white.mp4</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesmediawhitewebm">trunk/LayoutTests/http/tests/w3c/resources/media/white.webm</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesmediajs">trunk/LayoutTests/http/tests/w3c/resources/media.js</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesstringifiersjs">trunk/LayoutTests/http/tests/w3c/resources/stringifiers.js</a></li>
<li><a href="#trunkLayoutTestshttptestsw3cresourcesutilsjs">trunk/LayoutTests/http/tests/w3c/resources/utils.js</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkLayoutTestsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/ChangeLog (189393 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/ChangeLog        2015-09-04 22:11:15 UTC (rev 189393)
+++ trunk/LayoutTests/ChangeLog        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -1,3 +1,17 @@
</span><ins>+2015-09-04  Chris Dumez  &lt;cdumez@apple.com&gt;
+
+        Import html/semantics test cases from W3C
+        https://bugs.webkit.org/show_bug.cgi?id=148822
+        &lt;rdar://problem/22583647&gt;
+
+        Reviewed by Ryosuke Niwa.
+
+        Import 486 html/semantics test cases from W3C.
+        They take ~30 seconds to run on my MacBookPro.
+
+        * TestExpectations:
+        * http/tests/w3c/html/semantics/*: Added.
+
</ins><span class="cx"> 2015-09-04  Tim Horton  &lt;timothy_horton@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Fix style error in last commit.
</span></span></pre></div>
<a id="trunkLayoutTestsTestExpectations"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/TestExpectations (189393 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/TestExpectations        2015-09-04 22:11:15 UTC (rev 189393)
+++ trunk/LayoutTests/TestExpectations        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -227,7 +227,16 @@
</span><span class="cx"> webkit.org/b/148546 [ Debug ] http/tests/w3c/dom/ranges/Range-mutations.html [ Skip ]
</span><span class="cx"> webkit.org/b/148546 [ Debug ] http/tests/w3c/dom/ranges/Range-set.html [ Skip ]
</span><span class="cx"> webkit.org/b/148736 [ Debug ] http/tests/w3c/html/dom/interfaces.html [ Skip ]
</span><ins>+webkit.org/b/148822 [ Debug ] http/tests/w3c/html/semantics/interfaces.html [ Skip ]
</ins><span class="cx"> 
</span><ins>+# New W3C ref tests that are failing.
+# FIXME: We need to file separate bugs for these.
+webkit.org/b/148822 http/tests/w3c/html/semantics/document-metadata/the-style-element/html_style_in_comment.html [ ImageOnlyFailure ]
+webkit.org/b/148822 http/tests/w3c/html/semantics/text-level-semantics/the-wbr-element/wbr-element.html [ ImageOnlyFailure ]
+webkit.org/b/148822 http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-01.html [ ImageOnlyFailure ]
+webkit.org/b/148822 http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-02.html [ ImageOnlyFailure ]
+webkit.org/b/148822 http/tests/w3c/html/semantics/embedded-content/the-video-element/video_initially_paused.html [ ImageOnlyFailure ]
+
</ins><span class="cx"> # @supports W3C Failures
</span><span class="cx"> webkit.org/b/137566 css3/conditional/w3c/at-supports-010.html [ ImageOnlyFailure ]
</span><span class="cx"> webkit.org/b/137568 css3/conditional/w3c/at-supports-014.html [ ImageOnlyFailure ]
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlresourcescommonjs"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/resources/common.js (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/resources/common.js                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/resources/common.js        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,191 @@
</span><ins>+/*
+Distributed under both the W3C Test Suite License [1] and the W3C
+3-clause BSD License [2]. To contribute to a W3C Test Suite, see the
+policies and contribution forms [3].
+
+[1] http://www.w3.org/Consortium/Legal/2008/04-testsuite-license
+[2] http://www.w3.org/Consortium/Legal/2008/03-bsd-license
+[3] http://www.w3.org/2004/10/27-testcases
+ */
+
+&quot;use strict&quot;;
+
+var HTML5_ELEMENTS = [ 'a', 'abbr', 'address', 'area', 'article', 'aside',
+        'audio', 'b', 'base', 'bdi', 'bdo', 'blockquote', 'body', 'br',
+        'button', 'canvas', 'caption', 'cite', 'code', 'col', 'colgroup',
+        'command', 'datalist', 'dd', 'del', 'details', 'dfn', 'dialog', 'div',
+        'dl', 'dt', 'em', 'embed', 'fieldset', 'figcaption', 'figure',
+        'footer', 'form', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'header',
+        'hgroup', 'hr', 'html', 'i', 'iframe', 'img', 'input', 'ins', 'kbd',
+        'keygen', 'label', 'legend', 'li', 'link', 'map', 'mark', 'menu',
+        'meta', 'meter', 'nav', 'noscript', 'object', 'ol', 'optgroup',
+        'option', 'output', 'p', 'param', 'pre', 'progress', 'q', 'rp', 'rt',
+        'ruby', 's', 'samp', 'script', 'section', 'select', 'small', 'source',
+        'span', 'strong', 'style', 'sub', 'table', 'tbody', 'td', 'textarea',
+        'tfoot', 'th', 'thead', 'time', 'title', 'tr', 'track', 'u', 'ul',
+        'var', 'video', 'wbr' ];
+
+// only void (without end tag) HTML5 elements
+var HTML5_VOID_ELEMENTS = [ 'area', 'base', 'br', 'col', 'command', 'embed',
+        'hr', 'img', 'input', 'keygen', 'link', 'meta', 'param', 'source',
+        'track', 'wbr' ];
+
+// https://html.spec.whatwg.org/multipage/multipage/forms.html#form-associated-element
+var HTML5_FORM_ASSOCIATED_ELEMENTS = [ 'button', 'fieldset', 'input', 'keygen',
+        'label', 'object', 'output', 'select', 'textarea' ];
+
+function newDocument() {
+    var d = document.implementation.createDocument();
+    return d;
+}
+
+function newHTMLDocument() {
+    var d = document.implementation.createHTMLDocument('Test Document');
+    return d;
+}
+
+function newXHTMLDocument() {
+    var doctype = document.implementation.createDocumentType('html',
+            '-//W3C//DTD XHTML 1.0 Transitional//EN',
+            'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd');
+
+    var d = document.implementation.createDocument(
+            'http://www.w3.org/1999/xhtml', 'html', doctype);
+    return d;
+}
+
+function newIFrame(context, src) {
+    if (typeof (context) === 'undefined'
+            || typeof (context.iframes) !== 'object') {
+        assert_unreached('Illegal context object in newIFrame');
+    }
+
+    var iframe = document.createElement('iframe');
+    iframe.style.display = 'none';
+
+    if (typeof (src) != 'undefined') {
+        iframe.src = src;
+    }
+    document.body.appendChild(iframe);
+    context.iframes.push(iframe);
+
+    assert_true(typeof (iframe.contentWindow) != 'undefined'
+            &amp;&amp; typeof (iframe.contentWindow.document) != 'undefined'
+            &amp;&amp; iframe.contentWindow.document != document,
+            'Failed to create new rendered document');
+    return iframe;
+}
+
+function newRenderedHTMLDocument(context) {
+    var frame = newIFrame(context);
+    var d = frame.contentWindow.document;
+    return d;
+}
+
+function newContext() {
+    return {
+        iframes : []
+    };
+}
+
+function cleanContext(context) {
+    context.iframes.forEach(function(e) {
+        e.parentNode.removeChild(e);
+    });
+}
+
+// run given test function in context
+// the context is cleaned up after test completes.
+function inContext(f) {
+    return function() {
+        var context = newContext();
+        try {
+            f(context);
+        } finally {
+            cleanContext(context);
+        }
+    };
+}
+
+// new context and iframe are created and url (if supplied) is asigned to
+// iframe.src
+// function f is bound to the iframe onload event or executed directly after
+// iframe creation
+// the context is passed to function as argument
+function testInIFrame(url, f, testName, testProps) {
+    if (url) {
+        var t = async_test(testName, testProps);
+        t.step(function() {
+            var context = newContext();
+            var iframe = newIFrame(context, url);
+            iframe.onload = t.step_func(function() {
+                try {
+                    f(context);
+                    t.done();
+                } finally {
+                    cleanContext(context);
+                }
+            });
+        });
+    } else {
+        test(inContext(function(context) {
+            newRenderedHTMLDocument(context);
+            f(context);
+        }), testName, testProps);
+    }
+}
+
+function assert_nodelist_contents_equal_noorder(actual, expected, message) {
+    assert_equals(actual.length, expected.length, message);
+    var used = [];
+    for ( var i = 0; i &lt; expected.length; i++) {
+        used.push(false);
+    }
+    for (i = 0; i &lt; expected.length; i++) {
+        var found = false;
+        for ( var j = 0; j &lt; actual.length; j++) {
+            if (used[j] == false &amp;&amp; expected[i] == actual[j]) {
+                used[j] = true;
+                found = true;
+                break;
+            }
+        }
+        if (!found) {
+            assert_unreached(message + &quot;. Fail reason:  element not found: &quot;
+                    + expected[i]);
+        }
+    }
+}
+
+function isVisible(el) {
+    return el.offsetTop != 0;
+}
+
+function isVoidElement(elementName) {
+    return HTML5_VOID_ELEMENTS.indexOf(elementName) &gt;= 0;
+}
+
+function checkTemplateContent(d, obj, html, id, nodeName) {
+
+    obj.innerHTML = '&lt;template id=&quot;tmpl&quot;&gt;' + html + '&lt;/template&gt;';
+
+    var t = d.querySelector('#tmpl');
+
+    if (id != null) {
+        assert_equals(t.content.childNodes.length, 1, 'Element ' + nodeName
+                + ' should present among template nodes');
+        assert_equals(t.content.firstChild.id, id, 'Wrong element ID');
+    }
+    if (nodeName != null) {
+        assert_equals(t.content.firstChild.nodeName, nodeName.toUpperCase(),
+                'Wrong node name');
+    }
+}
+
+function checkBodyTemplateContent(d, html, id, nodeName) {
+    checkTemplateContent(d, d.body, html, id, nodeName);
+}
+
+function checkHeadTemplateContent(d, html, id, nodeName) {
+    checkTemplateContent(d, d.head, html, id, nodeName);
+}
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdisabledelementsdisabledElementexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/disabled-elements/disabledElement-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/disabled-elements/disabledElement-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/disabled-elements/disabledElement-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,14 @@
</span><ins>+button      
+w3 foobar
+
+PASS The body element must be the active element if no element is focused 
+PASS A disabled &lt;button&gt; should not be focusable 
+PASS A disabled &lt;input&gt; should not be focusable 
+PASS A disabled &lt;select&gt; should not be focusable 
+PASS A disabled &lt;optgroup&gt; should not be focusable 
+PASS A disabled &lt;option&gt; should not be focusable 
+PASS A disabled &lt;textarea&gt; should not be focusable 
+PASS A disabled &lt;input[type=radio]&gt; should not be focusable 
+PASS A disabled &lt;a&gt; should be focusable 
+PASS A disabled &lt;span&gt; should be focusable 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdisabledelementsdisabledElementhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/disabled-elements/disabledElement.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/disabled-elements/disabledElement.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/disabled-elements/disabledElement.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,44 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Disabled elements&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#disabled-elements&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;button disabled&gt;button&lt;/button&gt;
+&lt;input disabled&gt;
+&lt;select disabled&gt;
+ &lt;optgroup label=&quot;options&quot; disabled&gt;
+  &lt;option value=&quot;option1&quot; disabled&gt;option1
+  &lt;option value=&quot;option2&quot;&gt;option2
+&lt;/select&gt;
+&lt;textarea disabled&gt;textarea&lt;/textarea&gt;
+&lt;fieldset disabled&gt;
+ &lt;input type=radio name=c value=0 checked&gt;
+ &lt;input type=radio name=c value=1&gt;
+&lt;/fieldset&gt;
+&lt;a href=&quot;http://www.w3.org/&quot; disabled&gt;w3&lt;/a&gt;
+&lt;span tabindex=0 disabled&gt;foobar&lt;/span&gt;
+
+&lt;script&gt;
+  test(function(){
+    assert_equals(document.activeElement, document.body);
+  }, &quot;The body element must be the active element if no element is focused&quot;);
+
+  [&quot;button&quot;, &quot;input&quot;, &quot;select&quot;, &quot;optgroup&quot;, &quot;option&quot;, &quot;textarea&quot;, &quot;input[type=radio]&quot;].forEach(function(el) {
+    test(function() {
+      var element = document.querySelector(el);
+      element.focus();
+      assert_equals(document.activeElement, document.body, &quot;activeElement after focus on a disabled &lt;&quot; + el + &quot;&gt; remains unchanged&quot;);
+    }, &quot;A disabled &lt;&quot; + el + &quot;&gt; should not be focusable&quot;);
+  });
+
+  [&quot;a&quot;, &quot;span&quot;].forEach(function(el) {
+    test(function() {
+      var element = document.querySelector(el);
+      element.focus();
+      assert_equals(document.activeElement, element, &quot;focus on a &lt;&quot; + el + &quot;&gt; with a disabled attribute should make it the activeElement&quot;);
+    }, &quot;A disabled &lt;&quot; + el + &quot;&gt; should be focusable&quot;);
+  });
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdisabledelementsw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/disabled-elements/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/disabled-elements/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/disabled-elements/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/disabled-elements/disabledElement.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatastylingsupportalternatecss"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/alternate.css (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/alternate.css                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/alternate.css        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+#test {
+  color: yellow;
+  background-color: blue;
+  width: 100px;
+  height: 50px;
+  font-size: .5em;
+}
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatastylingsupportemptytitlecss"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/emptytitle.css (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/emptytitle.css                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/emptytitle.css        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+#test {
+  width: 100px;
+  height: 100px;
+}
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatastylingsupportnormalcss"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/normal.css (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/normal.css                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/normal.css        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+#test {
+  width: 100px;
+  height: 50px;
+  font-size: 10px;
+}
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatastylingsupportnotitlecss"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/notitle.css (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/notitle.css                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/notitle.css        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+#test {
+  width: 100px;
+  height: 100px;
+}
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatastylingsupportunmatchcss"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/unmatch.css (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/unmatch.css                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/unmatch.css        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+#test {
+  width: 100px;
+  height: 100px;
+}
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatastylingsupportw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,22 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/alternate.css
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/emptytitle.css
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/normal.css
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/notitle.css
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/support/unmatch.css
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatastylingw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/styling/LinkStyle.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathebaseelementbase_href_emptyexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_empty-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_empty-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_empty-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+PASS The value of the href attribute must be the document's address if it is empty 
+PASS The src attribute of the img element must relative to document's address 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathebaseelementbase_href_emptyhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_empty.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_empty.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_empty.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,29 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;HTML Test: base_href_empty&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-base-element&quot;&gt;
+&lt;base id=&quot;base&quot; href=&quot;&quot; target=&quot;_blank&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;img id=&quot;test&quot; src=&quot;/w3c/resources/images/blue-100x100.png&quot; style=&quot;display:none&quot;&gt;
+
+&lt;script&gt;
+  var testElement,
+      baseElement;
+
+  setup(function() {
+    testElement = document.getElementById(&quot;test&quot;);
+    baseElement = document.getElementById(&quot;base&quot;);
+  });
+
+  test(function() {
+    assert_equals(baseElement.href, document.location.href, &quot;The href of base element is incorrect.&quot;);
+  }, &quot;The value of the href attribute must be the document's address if it is empty&quot;);
+
+  test(function() {
+    var exp = testElement.src.substring(0, testElement.src.lastIndexOf(&quot;/w3c/resources/images/blue-100x100.png&quot;) + 1);
+    assert_true(baseElement.href.indexOf(exp) != -1, &quot;The src of img element is incorrect.&quot;);
+  }, &quot;The src attribute of the img element must relative to document's address&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathebaseelementbase_href_specifiedsubexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_specified.sub-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_specified.sub-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_specified.sub-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+FAIL The href attribute of the base element is specified assert_equals: The href attribute of the base element is incorrect. expected &quot;http://{{domains[www]}}:{{ports[http][0]}}/&quot; but got &quot;&quot;
+FAIL The src attribute of the img element must relative to the href attribute of the base element assert_equals: The src attribute of the img element is incorrect. expected &quot;http://{{domains[www]}}:{{ports[http][0]}}/test.ico&quot; but got &quot;test.ico&quot;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathebaseelementbase_href_specifiedsubhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_specified.sub.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_specified.sub.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_specified.sub.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;HTML Test: base_href_specified&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-base-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;base id=&quot;base&quot; href=&quot;http://{{domains[www]}}:{{ports[http][0]}}&quot;&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;img id=&quot;test&quot; src=&quot;test.ico&quot; style=&quot;display:none&quot;&gt;
+
+&lt;script&gt;
+  var testElement;
+  var baseElement;
+
+  setup(function() {
+    testElement = document.getElementById(&quot;test&quot;);
+    baseElement = document.getElementById(&quot;base&quot;);
+  });
+
+  test(function() {
+    assert_equals(baseElement.href, &quot;http://{{domains[www]}}:{{ports[http][0]}}/&quot;, &quot;The href attribute of the base element is incorrect.&quot;);
+  }, &quot;The href attribute of the base element is specified&quot;);
+
+  test(function() {
+    assert_equals(testElement.src, &quot;http://{{domains[www]}}:{{ports[http][0]}}/test.ico&quot;, &quot;The src attribute of the img element is incorrect.&quot;);
+  }, &quot;The src attribute of the img element must relative to the href attribute of the base element&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathebaseelementbase_href_unspecifiedexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_unspecified-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_unspecified-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_unspecified-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+PASS The value of the href attribute must be the document's address if it is unspecified 
+PASS The src attribute of the img element must relative to document's address 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathebaseelementbase_href_unspecifiedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_unspecified.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_unspecified.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_unspecified.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,30 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;HTML Test: base_href_unspecified&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-base-element&quot;&gt;
+&lt;base id=&quot;base&quot; target=&quot;_blank&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;img id=&quot;test&quot; src=&quot;/w3c/resources/images/blue-100x100.png&quot; style=&quot;display:none&quot;&gt;
+
+&lt;script&gt;
+  var testElement,
+      baseElement;
+
+  setup(function () {
+    testElement = document.getElementById(&quot;test&quot;);
+    baseElement = document.getElementById(&quot;base&quot;);
+  });
+
+  test(function() {
+    assert_equals(baseElement.href, document.location.href, &quot;Return the document base URL if the base element has no href content attribute.&quot;);
+  }, &quot;The value of the href attribute must be the document's address if it is unspecified&quot;);
+
+  test(function() {
+    var exp = testElement.src.substring(0, testElement.src.lastIndexOf(&quot;/w3c/resources/images/blue-100x100.png&quot;) + 1);
+    assert_true(baseElement.href.indexOf(exp) != -1, &quot;The src attribute of the img element is incorrect.&quot;);
+  }, &quot;The src attribute of the img element must relative to document's address&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathebaseelementbase_multipleexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_multiple-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_multiple-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_multiple-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+  
+
+PASS The attributes of the a element must be affected by the first base element 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathebaseelementbase_multiplehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_multiple.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_multiple.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_multiple.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,37 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;HTML Test: base_multiple&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-base-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;body onload=&quot;on_load()&quot;&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;iframe id=&quot;test1&quot; src=&quot;resources/example.html&quot; style=&quot;width:0;height:0&quot; frameborder=&quot;0&quot;&gt;&lt;/iframe&gt;
+  &lt;iframe id=&quot;test2&quot; src=&quot;resources/example.html&quot; name=&quot;targetWin&quot; style=&quot;width:0;height:0&quot; frameborder=&quot;0&quot;&gt;&lt;/iframe&gt;
+  &lt;script&gt;
+    var t = async_test(&quot;The attributes of the a element must be affected by the first base element&quot;),
+        doc1,
+        fr2,
+        a1;
+
+    function on_load() {
+      setup(function (){
+        doc1 = document.getElementById(&quot;test1&quot;).contentDocument;
+        fr2 = document.getElementById(&quot;test2&quot;);
+        a1 = doc1.getElementById(&quot;a1&quot;);
+      });
+
+      fr2.addEventListener(&quot;load&quot;, function () {
+        t.step(function () {
+          var doc2 = fr2.contentDocument;
+          assert_not_equals(doc2.location.href.indexOf(&quot;example2.html&quot;), -1, &quot;The target attribute does not impact the a element.&quot;);
+          assert_equals(doc2.getElementById(&quot;d1&quot;).innerHTML, &quot;PASS&quot;, &quot;The opend page should be the example2.html.&quot;);
+        });
+        t.done();
+      }, true);
+
+      a1.click();
+    }
+  &lt;/script&gt;
+&lt;/body&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathebaseelementresourcesexamplehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/resources/example.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/resources/example.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/resources/example.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;Example&lt;/title&gt;
+&lt;base target=&quot;targetWin&quot; href=&quot;&quot;&gt;
+&lt;base target=&quot;_self&quot; href=&quot;http://www.example.com/&quot;&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;a id=&quot;a1&quot; href=&quot;example2.html&quot; target=&quot;&quot;&gt;click me&lt;/a&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathebaseelementresourcesexample2html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/resources/example2.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/resources/example2.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/resources/example2.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;Example&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;div id=&quot;d1&quot;&gt;PASS&lt;/div&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathebaseelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,21 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_empty.html
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_specified.sub.html
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_href_unspecified.html
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-base-element/base_multiple.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathelinkelementlinkloadeventexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-load-event-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-load-event-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-load-event-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS Check if the stylesheet's load event blocks the document load event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathelinkelementlinkloadeventhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-load-event.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-load-event.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-load-event.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,21 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Josh Matthews&quot; href=&quot;mailto:josh@joshmatthews.net&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-link-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;link href=&quot;style.css?pipe=trickle(d3)&quot; rel=&quot;stylesheet&quot; id=&quot;style_test&quot;&gt;&lt;/link&gt;
+&lt;script&gt;
+var saw_link_onload = false;
+var t = async_test(&quot;Check if the stylesheet's load event blocks the document load event&quot;);
+document.getElementById('style_test').onload = t.step_func(function() {
+  saw_link_onload = true;
+});
+window.addEventListener('load', function() {
+  t.step_func(function() {
+    assert_true(saw_link_onload);
+  });
+  t.done();
+}, false);
+&lt;/script&gt;
+&lt;/head&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathelinkelementlinkrellistexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-rellist-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-rellist-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-rellist-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS link.relList: non-string contains 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathelinkelementlinkrellisthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-rellist.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-rellist.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-rellist.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,23 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;link.relList: non-string contains&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-link-element&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#domtokenlist&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://heycam.github.io/webidl/#ecmascript-binding&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf#page=57&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;link id=&quot;link&quot; rel=&quot;undefined null 0 NaN Infinity&quot;&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  var list = document.getElementById(&quot;link&quot;).relList;
+  assert_equals(list.contains(undefined), true); //&quot;undefined&quot;
+  assert_equals(list.contains(null), true); //&quot;null&quot;
+  assert_equals(list.contains(-0), true); //&quot;0&quot;
+  assert_equals(list.contains(+0), true); //&quot;0&quot;
+  assert_equals(list.contains(NaN), true); //&quot;NaN&quot;
+  assert_equals(list.contains(+Infinity), true); //&quot;Infinity&quot;
+  assert_equals(list.contains(-Infinity), false); //&quot;-Infinity&quot;
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathelinkelementlinkstyleerror01expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-style-error-01-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-style-error-01-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-style-error-01-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS Should get an error event for a text/plain response. 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathelinkelementlinkstyleerror01html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-style-error-01.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-style-error-01.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-style-error-01.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,32 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;link: error events&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-link-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;div id=&quot;test&quot;&gt;
+&lt;script&gt;
+//var t404 = async_test(&quot;Should get an error event for a 404 error.&quot;)
+//t404.step(function() {
+//  var elt = document.createElement(&quot;link&quot;);
+//  elt.onerror = t404.step_func(function() {
+//    assert_true(true, &quot;Got error event for 404 error.&quot;)
+//    t404.done()
+//  })
+//  elt.rel = &quot;stylesheet&quot;;
+//  elt.href = 404 error;
+//  document.getElementsByTagName(&quot;head&quot;)[0].appendChild(elt);
+//})
+var tText = async_test(&quot;Should get an error event for a text/plain response.&quot;)
+tText.step(function() {
+  var elt = document.createElement(&quot;link&quot;);
+  elt.onerror = tText.step_func(function() {
+    assert_true(true, &quot;Got error event for 404 error.&quot;)
+    tText.done()
+  })
+  elt.rel = &quot;stylesheet&quot;;
+  elt.href = &quot;/w3c/resources/does-not-exist.txt&quot;;
+  document.getElementsByTagName(&quot;head&quot;)[0].appendChild(elt);
+})
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathelinkelementstylecss"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/style.css (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/style.css                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/style.css        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+body {
+  background-color: white;
+}
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathelinkelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,21 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-load-event.html
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-rellist.html
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/link-style-error-01.html
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-link-element/style.css
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathemetaelementcontainsjson"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-meta-element/contains.json (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-meta-element/contains.json                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-meta-element/contains.json        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,22 @@
</span><ins>+[
+    {
+        &quot;id&quot;: &quot;standard-metadata-names&quot;,
+        &quot;original_id&quot;: &quot;standard-metadata-names&quot;
+    },
+    {
+        &quot;id&quot;: &quot;other-metadata-names&quot;,
+        &quot;original_id&quot;: &quot;other-metadata-names&quot;
+    },
+    {
+        &quot;id&quot;: &quot;pragma-directives&quot;,
+        &quot;original_id&quot;: &quot;pragma-directives&quot;
+    },
+    {
+        &quot;id&quot;: &quot;other-pragma-directives&quot;,
+        &quot;original_id&quot;: &quot;other-pragma-directives&quot;
+    },
+    {
+        &quot;id&quot;: &quot;charset&quot;,
+        &quot;original_id&quot;: &quot;charset&quot;
+    }
+]
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathemetaelementthelangattribute012expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-meta-element/the-lang-attribute-012-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-meta-element/the-lang-attribute-012-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-meta-element/the-lang-attribute-012-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+ 
+
+PASS The UA will not recognize a language declaration in the Content-Language meta element when more than one language is declared. 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathemetaelementthelangattribute012html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-meta-element/the-lang-attribute-012.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-meta-element/the-lang-attribute-012.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-meta-element/the-lang-attribute-012.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,51 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html   &gt;
+&lt;head&gt;
+&lt;meta charset=&quot;utf-8&quot;/&gt;
+ &lt;meta http-equiv=&quot;Content-Language&quot; content=&quot;ko,zh,ja&quot; &gt;
+&lt;title&gt;Multiple languages in Content-Language meta element&lt;/title&gt;
+&lt;link rel='author' title='Richard Ishida' href='mailto:ishida@w3.org'&gt;
+&lt;link rel='help' href='https://html.spec.whatwg.org/multipage/#pragma-directives'&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;meta name='flags' content='dom'&gt;
+&lt;style type='text/css'&gt;
+    #colonlangcontroltest { color: red; font-weight: bold; width: 400px; }
+    #colonlangcontroltest:lang(xx) { display:none; }
+.test div { width: 50px; }
+
+#box:lang(ko) { width: 100px; }
+#box:lang(zh) { width: 100px; }
+#box:lang(ja) { width: 100px; }
+
+    /* styling for debugging related notes */
+     .notes span:lang(ko) { background-color: #0000FF; color: white; padding: 0 5px; }
+     .notes span:lang(zh) { background-color: #0000FF; color: white; padding: 0 5px; }
+     .notes span:lang(ja) { background-color: #0000FF; color: white; padding: 0 5px; }
+
+&lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+
+
+
+&lt;div class=&quot;test&quot;&gt;&lt;div id=&quot;box&quot;&gt;&amp;#xA0;&lt;/div&gt;&lt;/div&gt;
+&lt;p lang='xx' id='colonlangcontroltest'&gt;This test failed because it relies on :lang for results, but :lang is not supported by this browser.&lt;/p&gt;
+
+
+&lt;!-- Notes:
+
+This test uses :lang to detect whether the language has been set. If :lang is not supported, a message will appear and the test will fail.
+
+ --&gt;
+&lt;script&gt;
+test(function() {
+assert_equals(document.getElementById('colonlangcontroltest').offsetWidth, 0)
+assert_equals(document.getElementById('box').offsetWidth, 50);
+}, &quot;The UA will not recognize a language declaration in the Content-Language meta element when more than one language is declared.&quot;);
+&lt;/script&gt;
+
+&lt;div id='log'&gt;&lt;/div&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathemetaelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-meta-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-meta-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-meta-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-meta-element/contains.json
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-meta-element/the-lang-attribute-012.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementhtml_style_in_commentexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/html_style_in_comment-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/html_style_in_comment-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/html_style_in_comment-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;[style] Reference file&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com&quot;&gt;
+&lt;style&gt;
+  h4 {
+    color: green;
+  }
+&lt;/style&gt;
+&lt;body&gt;
+  &lt;p&gt;
+    This page tests that Style written inside HTML comment is not applied
+  &lt;/p&gt;
+  This test passes if the text below is &lt;b&gt;Green. NOT Red.&lt;/b&gt;
+  &lt;h4&gt;
+    This is some text.
+  &lt;/h4&gt;
+&lt;/body&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementhtml_style_in_commenthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/html_style_in_comment.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/html_style_in_comment.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/html_style_in_comment.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;
+&lt;head&gt;
+&lt;link rel=&quot;match&quot; href=&quot;html_style_in_comment-ref.html&quot;/&gt;
+&lt;style type=&quot;text/css&quot;&gt;
+h4 {color: green}
+&lt;!--
+h4 {color: red}
+--&gt;
+&lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;p&gt; This page tests that Style written inside HTML comment is not applied&lt;/p&gt;
+This test passes if the text below is &lt;b&gt;Green. NOT Red.&lt;/b&gt;
+&lt;h4&gt;
+This is some text.
+&lt;/h4&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementstyleerror01expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style-error-01-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style-error-01-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style-error-01-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS Should get an error event for a text/plain response. 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementstyleerror01html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style-error-01.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style-error-01.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style-error-01.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,32 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;style: error events&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-style-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;div id=&quot;test&quot;&gt;
+&lt;script&gt;
+//var t404 = async_test(&quot;Should get an error event for a 404 error.&quot;)
+//t404.step(function() {
+//  var elt = document.createElement(&quot;style&quot;);
+//  elt.onerror = t404.step_func(function() {
+//    assert_true(true, &quot;Got error event for 404 error.&quot;)
+//    t404.done()
+//  })
+//  elt.appendChild(
+//    document.createTextNode('@import 404 error;'));
+//  document.getElementsByTagName(&quot;head&quot;)[0].appendChild(elt);
+//})
+var tText = async_test(&quot;Should get an error event for a text/plain response.&quot;)
+tText.step(function() {
+  var elt = document.createElement(&quot;style&quot;);
+  elt.onerror = tText.step_func(function() {
+    assert_true(true, &quot;Got error event for 404 error.&quot;)
+    tText.done()
+  })
+  elt.appendChild(
+    document.createTextNode('@import &quot;/w3c/resources/does-not-exist.txt&quot;;'));
+  document.getElementsByTagName(&quot;head&quot;)[0].appendChild(elt);
+})
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementstyle_disabledexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_disabled-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_disabled-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_disabled-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS The style is not applied when it is disabled 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementstyle_disabledhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_disabled.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_disabled.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_disabled.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,39 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;HTML Test: The style should not be applied if it is disabled&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-style-element&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+    &lt;style&gt;
+      #test {
+        width: 100px;
+      }
+    &lt;/style&gt;
+    &lt;style id=&quot;style&quot;&gt;
+      #test {
+        width: 50px;
+      }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+    &lt;div id=&quot;test&quot;&gt;&lt;/div&gt;
+    &lt;script&gt;
+      test(function() {
+        var testElement = document.getElementById(&quot;test&quot;);
+        var style = document.getElementById(&quot;style&quot;);
+        var width1, width2;
+
+        width1 = window.getComputedStyle(testElement, false)[&quot;width&quot;];
+        assert_equals(width1, &quot;50px&quot;, &quot;The style should be applied.&quot;);
+
+        style.disabled = true;
+        width2 = window.getComputedStyle(testElement, false)[&quot;width&quot;];
+        assert_equals(width2, &quot;100px&quot;, &quot;The style should not be applied.&quot;);
+      }, &quot;The style is not applied when it is disabled&quot;);
+    &lt;/script&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementstyle_eventsexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_events-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_events-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_events-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+PASS If the style is loaded successfully, the 'load' event must be fired 
+PASS If the style is loaded unsuccessfully, the 'error' event must be fired 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementstyle_eventshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_events.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_events.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_events.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,36 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;HTML Test: The style events&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-style-element&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+    &lt;script&gt;
+      var tLoad = async_test(&quot;If the style is loaded successfully, the 'load' event must be fired&quot;);
+      var tError = async_test(&quot;If the style is loaded unsuccessfully, the 'error' event must be fired&quot;);
+
+      function onstyleload(e) {
+        tLoad.done();
+      }
+
+      function onstyleerror(e) {
+        tError.done();
+      }
+    &lt;/script&gt;
+    &lt;style onload=&quot;onstyleload()&quot;&gt;
+      #test {
+        height: 100px;
+        width: 100px;
+      }
+    &lt;/style&gt;
+    &lt;style onerror=&quot;onstyleerror()&quot;&gt;
+      @import url(nonexistent.css);
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+    &lt;div id=&quot;test&quot;&gt;&lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementstyle_mediaexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_media-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_media-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_media-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS The style information must be applied to the environment specified by the media attribute 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementstyle_mediahtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_media.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_media.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_media.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,40 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;HTML Test: The style information must be applied to the environment specified by the media attribute&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#attr-style-media&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-style-element&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+    &lt;style&gt;
+      #test {
+        width: 100px;
+      }
+    &lt;/style&gt;
+    &lt;style id=&quot;style&quot;&gt;
+      #test {
+        width: 50px;
+      }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+    &lt;div id=&quot;test&quot;&gt;&lt;/div&gt;
+    &lt;script&gt;
+      test(function() {
+        var testElement = document.getElementById(&quot;test&quot;);
+        var style = document.getElementById(&quot;style&quot;);
+        var width1, width2;
+
+        width1 = window.getComputedStyle(testElement, false)[&quot;width&quot;];
+        assert_equals(width1, &quot;50px&quot;, &quot;The style should be applied.&quot;);
+
+        style.media = &quot;print&quot;;
+        width2 = window.getComputedStyle(testElement, false)[&quot;width&quot;];
+        assert_equals(width2, &quot;100px&quot;, &quot;The style should not be applied.&quot;);
+      }, &quot;The style information must be applied to the environment specified by the media attribute&quot;);
+    &lt;/script&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementstyle_scopedexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_scoped-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_scoped-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_scoped-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+FAIL The scoped attribute is present, the style information must be applied only to its parent element assert_equals: The width should not be applied. expected &quot;50px&quot; but got &quot;100px&quot;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementstyle_scopedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_scoped.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_scoped.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_scoped.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,42 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;HTML Test: The scoped attribute must apply the style information only to its parent element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#attr-style-scoped&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-style-element&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+    &lt;style&gt;
+      #test {
+        width: 50px;
+      }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+    &lt;div id=&quot;test&quot;&gt;&lt;/div&gt;
+    &lt;div&gt;
+      &lt;style id=&quot;style&quot;&gt;
+        #test {
+          width: 100px;
+        }
+      &lt;/style&gt;
+    &lt;div&gt;
+    &lt;script&gt;
+      test(function() {
+        var testElement = document.getElementById(&quot;test&quot;);
+        var style = document.getElementById(&quot;style&quot;);
+        var width1, width2;
+
+        width1 = window.getComputedStyle(testElement, false)[&quot;width&quot;];
+        assert_equals(width1, &quot;100px&quot;, &quot;The style 'width' should be applied.&quot;);
+
+        style.scoped = true;
+        width2 = window.getComputedStyle(testElement, false)[&quot;width&quot;];
+        assert_equals(width2, &quot;50px&quot;, &quot;The width should not be applied.&quot;);
+      }, &quot;The scoped attribute is present, the style information must be applied only to its parent element&quot;);
+    &lt;/script&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathestyleelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,24 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/html_style_in_comment-expected.xhtml
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/html_style_in_comment.xhtml
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style-error-01.html
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_disabled.html
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_events.html
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_media.html
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-style-element/style_scoped.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathetitleelementtitletext01expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-01-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-01-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-01-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+FAIL COMMENT assert_equals: expected &quot;TEXT&quot; but got &quot;TEXTELEMENT&quot;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathetitleelementtitletext01html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-01.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-01.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-01.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,25 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;title.text with comment and element children.&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-title-text&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+try {
+  var title = document.getElementsByTagName(&quot;title&quot;)[0];
+  while (title.childNodes.length)
+    title.removeChild(title.childNodes[0]);
+  title.appendChild(document.createComment(&quot;COMMENT&quot;));
+  title.appendChild(document.createTextNode(&quot;TEXT&quot;));
+  title.appendChild(document.createElement(&quot;a&quot;))
+       .appendChild(document.createTextNode(&quot;ELEMENT&quot;))
+} catch (e) {
+}
+&lt;/script&gt;
+&lt;script&gt;
+test(function() {
+  assert_equals(title.text, &quot;TEXT&quot;);
+  assert_equals(title.textContent, &quot;TEXTELEMENT&quot;);
+})
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathetitleelementtitletext02expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-02-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-02-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-02-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+FAIL COMMENT assert_equals: expected &quot;TEXT&quot; but got &quot;TEXTELEMENT&quot;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathetitleelementtitletext02xhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-02.xhtml (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-02.xhtml                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-02.xhtml        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,30 @@
</span><ins>+&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;
+&lt;head&gt;
+&lt;title&gt;title.text with comment and element children.&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;/&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-title-text&quot;/&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+try {
+  var title = document.getElementsByTagName(&quot;title&quot;)[0];
+  while (title.childNodes.length)
+    title.removeChild(title.childNodes[0]);
+  title.appendChild(document.createComment(&quot;COMMENT&quot;));
+  title.appendChild(document.createTextNode(&quot;TEXT&quot;));
+  title.appendChild(document.createElement(&quot;a&quot;))
+       .appendChild(document.createTextNode(&quot;ELEMENT&quot;))
+} catch (e) {
+}
+&lt;/script&gt;
+&lt;script&gt;
+test(function() {
+  assert_equals(title.text, &quot;TEXT&quot;);
+  assert_equals(title.textContent, &quot;TEXTELEMENT&quot;);
+})
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathetitleelementtitletext03expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-03-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-03-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-03-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,13 @@
</span><ins>+
+PASS title.text and space normalization (markup) 
+PASS title.text and space normalization: &quot;one space&quot; 
+PASS title.text and space normalization: &quot;two  spaces&quot; 
+PASS title.text and space normalization: &quot;one\ttab&quot; 
+PASS title.text and space normalization: &quot;two\t\ttabs&quot; 
+PASS title.text and space normalization: &quot;one\nnewline&quot; 
+PASS title.text and space normalization: &quot;two\n\nnewlines&quot; 
+PASS title.text and space normalization: &quot;one\fform feed&quot; 
+PASS title.text and space normalization: &quot;two\f\fform feeds&quot; 
+PASS title.text and space normalization: &quot;one\rcarriage return&quot; 
+PASS title.text and space normalization: &quot;two\r\rcarriage returns&quot; 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathetitleelementtitletext03html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-03.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-03.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-03.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,32 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt; title.text  and space normalization  &lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-title-text&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  assert_equals(document.getElementsByTagName(&quot;title&quot;)[0].text,
+    &quot; title.text  and space normalization  &quot;);
+  assert_equals(document.getElementsByTagName(&quot;title&quot;)[0].textContent,
+    &quot; title.text  and space normalization  &quot;);
+  assert_equals(document.getElementsByTagName(&quot;title&quot;)[0].firstChild.nodeValue,
+    &quot; title.text  and space normalization  &quot;);
+}, &quot;title.text and space normalization (markup)&quot;);
+[
+  &quot;one space&quot;, &quot;two  spaces&quot;,
+  &quot;one\ttab&quot;, &quot;two\t\ttabs&quot;,
+  &quot;one\nnewline&quot;, &quot;two\n\nnewlines&quot;,
+  &quot;one\fform feed&quot;, &quot;two\f\fform feeds&quot;,
+  &quot;one\rcarriage return&quot;, &quot;two\r\rcarriage returns&quot;
+].forEach(function(str) {
+  test(function() {
+    document.title = str;
+    var title = document.getElementsByTagName(&quot;title&quot;)[0];
+    assert_equals(title.text, str);
+    assert_equals(title.textContent, str);
+    assert_equals(title.firstChild.nodeValue, str);
+  }, &quot;title.text and space normalization: &quot; + format_value(str))
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathetitleelementtitletext04expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-04-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-04-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-04-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,13 @@
</span><ins>+
+PASS title.text and space normalization (markup) 
+PASS title.text and space normalization: &quot;one space&quot; 
+PASS title.text and space normalization: &quot;two  spaces&quot; 
+PASS title.text and space normalization: &quot;one\ttab&quot; 
+PASS title.text and space normalization: &quot;two\t\ttabs&quot; 
+PASS title.text and space normalization: &quot;one\nnewline&quot; 
+PASS title.text and space normalization: &quot;two\n\nnewlines&quot; 
+PASS title.text and space normalization: &quot;one\fform feed&quot; 
+PASS title.text and space normalization: &quot;two\f\fform feeds&quot; 
+PASS title.text and space normalization: &quot;one\rcarriage return&quot; 
+PASS title.text and space normalization: &quot;two\r\rcarriage returns&quot; 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathetitleelementtitletext04xhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-04.xhtml (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-04.xhtml                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-04.xhtml        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,37 @@
</span><ins>+&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;
+&lt;head&gt;
+&lt;title&gt; title.text  and space normalization  &lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;/&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-title-text&quot;/&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  assert_equals(document.getElementsByTagName(&quot;title&quot;)[0].text,
+    &quot; title.text  and space normalization  &quot;);
+  assert_equals(document.getElementsByTagName(&quot;title&quot;)[0].textContent,
+    &quot; title.text  and space normalization  &quot;);
+  assert_equals(document.getElementsByTagName(&quot;title&quot;)[0].firstChild.nodeValue,
+    &quot; title.text  and space normalization  &quot;);
+}, &quot;title.text and space normalization (markup)&quot;);
+[
+  &quot;one space&quot;, &quot;two  spaces&quot;,
+  &quot;one\ttab&quot;, &quot;two\t\ttabs&quot;,
+  &quot;one\nnewline&quot;, &quot;two\n\nnewlines&quot;,
+  &quot;one\fform feed&quot;, &quot;two\f\fform feeds&quot;,
+  &quot;one\rcarriage return&quot;, &quot;two\r\rcarriage returns&quot;
+].forEach(function(str) {
+  test(function() {
+    document.title = str;
+    var title = document.getElementsByTagName(&quot;title&quot;)[0];
+    assert_equals(title.text, str);
+    assert_equals(title.textContent, str);
+    assert_equals(title.firstChild.nodeValue, str);
+  }, &quot;title.text and space normalization: &quot; + format_value(str))
+});
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsdocumentmetadatathetitleelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,21 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-01.html
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-02.xhtml
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-03.html
+/LayoutTests/http/tests/w3c/html/semantics/document-metadata/the-title-element/title.text-04.xhtml
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticseditsthedelelementdel_effectexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-del-element/del_effect-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-del-element/del_effect-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-del-element/del_effect-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+crossed-off text
+
+
+PASS HTML Test: Text in the del element should be 'line-through' 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticseditsthedelelementdel_effecthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-del-element/del_effect.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-del-element/del_effect.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-del-element/del_effect.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=UTF-8&gt;
+&lt;title&gt;HTML Test: Text in the del element should be 'line-through'&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-del-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+
+&lt;p&gt;&lt;del&gt;crossed-off text&lt;/del&gt;&lt;/p&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+
+&lt;script&gt;
+  test(function() {
+    var element = document.getElementsByTagName('del')[0],
+        textDecoration = getComputedStyle(element).textDecorationLine ||
+                         getComputedStyle(element).textDecoration;
+    assert_equals(textDecoration, 'line-through');
+  });
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticseditsthedelelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-del-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-del-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-del-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/edits/the-del-element/del_effect.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticseditstheinselementins_effectexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-ins-element/ins_effect-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-ins-element/ins_effect-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-ins-element/ins_effect-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+underlined text
+
+
+PASS HTML Test: Text in the ins element should be 'underline' 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticseditstheinselementins_effecthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-ins-element/ins_effect.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-ins-element/ins_effect.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-ins-element/ins_effect.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=UTF-8&gt;
+&lt;title&gt;HTML Test: Text in the ins element should be 'underline'&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ins-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+
+&lt;p&gt;&lt;ins&gt;underlined text&lt;/ins&gt;&lt;/p&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+
+&lt;script&gt;
+  test(function() {
+    var element = document.getElementsByTagName('ins')[0],
+        textDecoration = getComputedStyle(element).textDecorationLine ||
+                         getComputedStyle(element).textDecoration;
+    assert_equals(textDecoration, 'underline');
+  });
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticseditstheinselementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-ins-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-ins-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/edits/the-ins-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/edits/the-ins-element/ins_effect.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentimagemapscontainsjson"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/image-maps/contains.json (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/image-maps/contains.json                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/image-maps/contains.json        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+[
+    {
+        &quot;id&quot;: &quot;authoring&quot;,
+        &quot;original_id&quot;: &quot;authoring&quot;
+    },
+    {
+        &quot;id&quot;: &quot;processing-model-0&quot;,
+        &quot;original_id&quot;: &quot;processing-model-0&quot;
+    }
+]
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentimagemapsw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/image-maps/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/image-maps/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/image-maps/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/image-maps/contains.json
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsaudio_volume_checkexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/audio_volume_check-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/audio_volume_check-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/audio_volume_check-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+
+PASS Check if the intial value of the audio.volume is in the range 0.0 to 1.0 inclusive 
+PASS Check if audio.volume is able to set to new value in the range 0.0 to 1.0 
+PASS Check if media.volume is able to set to new value 0.0 as silent 
+PASS Check if media.volume is able to set to new value 1.0 as loudest 
+PASS Check if media.volume is set to new value less than 0.0 that expecting an IndexSizeError exception is to be thrown 
+PASS Check if audio.volume is set to new value greater than 1.0 that expecting an IndexSizeError exception is to be thrown 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsaudio_volume_checkhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/audio_volume_check.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/audio_volume_check.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/audio_volume_check.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,58 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;title&gt;Audio Test: audio_volume_check&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com&quot; /&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-media-volume&quot; /&gt;
+    &lt;meta name=&quot;flags&quot; content=&quot;&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;Check that audio.volume returns the value of the muted content attribute&quot; /&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+    &lt;audio id=&quot;m&quot;&gt;The user agent doesn't support media element.&lt;/audio&gt;
+    &lt;script type=&quot;text/javascript&quot;&gt;
+        var media = document.getElementById(&quot;m&quot;);
+        var VOLUME = {
+            'SILENT'  :  0.0,
+            'NORMAL'  :  0.5,
+            'LOUDEST' :  1.0,
+            'LOWER'   : -1.1,
+            'UPPER'   :  1.1,
+        };
+
+        test(function() {
+            assert_false(media.volume &lt; VOLUME.SILENT || media.volume &gt; VOLUME.LOUDEST, &quot;media.volume outside the range 0.0 to 1.0 inclusive&quot;);
+        }, &quot;Check if the intial value of the audio.volume is in the range 0.0 to 1.0 inclusive&quot;);
+
+        function volume_setting(vol, name)
+        {
+            if (vol &lt; VOLUME.SILENT || vol &gt; VOLUME.LOUDEST) {
+                try {
+                    media.volume = vol;
+                    test(function() {
+                        assert_true(false, &quot;media.volume setting exception&quot;);
+                    }, name);
+                } catch(e) {
+                    test(function() {
+                        // 1 should be e.IndexSizeError or e.INDEX_SIZE_ERR in previous spec
+                        assert_equals(e.code, 1, &quot;media.volume setting exception&quot;);
+                    }, name);
+                }
+            } else {
+                media.volume = vol;
+                test(function() {
+                    assert_equals(media.volume, vol, &quot;media.volume new value&quot;);
+                }, name);
+            }
+        }
+
+        volume_setting(VOLUME.NORMAL,  &quot;Check if audio.volume is able to set to new value in the range 0.0 to 1.0&quot;);
+        volume_setting(VOLUME.SILENT,  &quot;Check if media.volume is able to set to new value 0.0 as silent&quot;);
+        volume_setting(VOLUME.LOUDEST, &quot;Check if media.volume is able to set to new value 1.0 as loudest&quot;);
+        volume_setting(VOLUME.LOWER,   &quot;Check if media.volume is set to new value less than 0.0 that expecting an IndexSizeError exception is to be thrown&quot;);
+        volume_setting(VOLUME.UPPER,   &quot;Check if audio.volume is set to new value greater than 1.0 that expecting an IndexSizeError exception is to be thrown&quot;);
+    &lt;/script&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementscontainsjson"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/contains.json (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/contains.json                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/contains.json        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,132 @@
</span><ins>+[
+    {
+        &quot;id&quot;: &quot;error-codes&quot;,
+        &quot;original_id&quot;: &quot;error-codes&quot;
+    },
+    {
+        &quot;id&quot;: &quot;location-of-the-media-resource&quot;,
+        &quot;original_id&quot;: &quot;location-of-the-media-resource&quot;
+    },
+    {
+        &quot;id&quot;: &quot;mime-types&quot;,
+        &quot;original_id&quot;: &quot;mime-types&quot;
+    },
+    {
+        &quot;id&quot;: &quot;network-states&quot;,
+        &quot;original_id&quot;: &quot;network-states&quot;
+    },
+    {
+        &quot;id&quot;: &quot;loading-the-media-resource&quot;,
+        &quot;original_id&quot;: &quot;loading-the-media-resource&quot;
+    },
+    {
+        &quot;id&quot;: &quot;offsets-into-the-media-resource&quot;,
+        &quot;original_id&quot;: &quot;offsets-into-the-media-resource&quot;
+    },
+    {
+        &quot;id&quot;: &quot;ready-states&quot;,
+        &quot;original_id&quot;: &quot;ready-states&quot;
+    },
+    {
+        &quot;id&quot;: &quot;playing-the-media-resource&quot;,
+        &quot;original_id&quot;: &quot;playing-the-media-resource&quot;
+    },
+    {
+        &quot;id&quot;: &quot;seeking&quot;,
+        &quot;original_id&quot;: &quot;seeking&quot;
+    },
+    {
+        &quot;id&quot;: &quot;media-resources-with-multiple-media-tracks&quot;,
+        &quot;original_id&quot;: &quot;media-resources-with-multiple-media-tracks&quot;,
+        &quot;children&quot;: [
+            {
+                &quot;id&quot;: &quot;audiotracklist-and-videotracklist-objects&quot;,
+                &quot;original_id&quot;: &quot;audiotracklist-and-videotracklist-objects&quot;
+            },
+            {
+                &quot;id&quot;: &quot;selecting-specific-audio-and-video-tracks-declaratively&quot;,
+                &quot;original_id&quot;: &quot;selecting-specific-audio-and-video-tracks-declaratively&quot;
+            }
+        ]
+    },
+    {
+        &quot;id&quot;: &quot;synchronising-multiple-media-elements&quot;,
+        &quot;original_id&quot;: &quot;synchronising-multiple-media-elements&quot;,
+        &quot;children&quot;: [
+            {
+                &quot;id&quot;: &quot;introduction-0&quot;,
+                &quot;original_id&quot;: &quot;introduction-0&quot;
+            },
+            {
+                &quot;id&quot;: &quot;media-controllers&quot;,
+                &quot;original_id&quot;: &quot;media-controllers&quot;
+            },
+            {
+                &quot;id&quot;: &quot;assigning-a-media-controller-declaratively&quot;,
+                &quot;original_id&quot;: &quot;assigning-a-media-controller-declaratively&quot;
+            }
+        ]
+    },
+    {
+        &quot;id&quot;: &quot;timed-text-tracks&quot;,
+        &quot;original_id&quot;: &quot;timed-text-tracks&quot;,
+        &quot;children&quot;: [
+            {
+                &quot;id&quot;: &quot;text-track-model&quot;,
+                &quot;original_id&quot;: &quot;text-track-model&quot;
+            },
+            {
+                &quot;id&quot;: &quot;sourcing-in-band-text-tracks&quot;,
+                &quot;original_id&quot;: &quot;sourcing-in-band-text-tracks&quot;
+            },
+            {
+                &quot;id&quot;: &quot;sourcing-out-of-band-text-tracks&quot;,
+                &quot;original_id&quot;: &quot;sourcing-out-of-band-text-tracks&quot;
+            },
+            {
+                &quot;id&quot;: &quot;guidelines-for-exposing-cues-in-various-formats-as-text-track-cues&quot;,
+                &quot;original_id&quot;: &quot;guidelines-for-exposing-cues-in-various-formats-as-text-track-cues&quot;
+            },
+            {
+                &quot;id&quot;: &quot;text-track-api&quot;,
+                &quot;original_id&quot;: &quot;text-track-api&quot;
+            },
+            {
+                &quot;id&quot;: &quot;text-tracks-describing-chapters&quot;,
+                &quot;original_id&quot;: &quot;text-tracks-describing-chapters&quot;
+            },
+            {
+                &quot;id&quot;: &quot;cue-events&quot;,
+                &quot;original_id&quot;: &quot;cue-events&quot;
+            }
+        ]
+    },
+    {
+        &quot;id&quot;: &quot;user-interface&quot;,
+        &quot;original_id&quot;: &quot;user-interface&quot;
+    },
+    {
+        &quot;id&quot;: &quot;time-ranges&quot;,
+        &quot;original_id&quot;: &quot;time-ranges&quot;
+    },
+    {
+        &quot;id&quot;: &quot;event-definitions&quot;,
+        &quot;original_id&quot;: &quot;event-definitions&quot;
+    },
+    {
+        &quot;id&quot;: &quot;mediaevents&quot;,
+        &quot;original_id&quot;: &quot;mediaevents&quot;
+    },
+    {
+        &quot;id&quot;: &quot;security-and-privacy-considerations&quot;,
+        &quot;original_id&quot;: &quot;security-and-privacy-considerations&quot;
+    },
+    {
+        &quot;id&quot;: &quot;best-practices-for-authors-using-media-elements&quot;,
+        &quot;original_id&quot;: &quot;best-practices-for-authors-using-media-elements&quot;
+    },
+    {
+        &quot;id&quot;: &quot;best-practices-for-implementors-of-media-elements&quot;,
+        &quot;original_id&quot;: &quot;best-practices-for-implementors-of-media-elements&quot;
+    }
+]
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementserrorcodesw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/error-codes/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/error-codes/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/error-codes/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/error-codes/error.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_loadeddataexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadeddata-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadeddata-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadeddata-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - loadeddata 
+PASS setting src attribute on autoplay audio should trigger loadeddata event 
+PASS video events - loadeddata 
+PASS setting src attribute on autoplay video should trigger loadeddata event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_loadeddatahtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadeddata.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadeddata.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadeddata.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,38 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - loadeddata&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; autoplay controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; autoplay controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;setting src attribute on autoplay audio should trigger loadeddata event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  a.addEventListener(&quot;loadeddata&quot;, function() {
+    t.done();
+    a.pause();
+  }, false);
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;audio events - loadeddata&quot;);
+
+test(function() {
+  var t = async_test(&quot;setting src attribute on autoplay video should trigger loadeddata event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;v&quot;);
+  v.addEventListener(&quot;loadeddata&quot;, function() {
+    t.done();
+    v.pause();
+  }, false);
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;video events - loadeddata&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_loadeddata_noautoplayexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadeddata_noautoplay-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadeddata_noautoplay-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadeddata_noautoplay-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - loadeddata 
+PASS setting src attribute on non-autoplay audio should trigger loadeddata event 
+PASS video events - loadeddata 
+PASS setting src attribute on non-autoplay video should trigger loadeddata event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_loadeddata_noautoplayhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadeddata_noautoplay.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadeddata_noautoplay.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadeddata_noautoplay.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,36 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - loadeddata&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;setting src attribute on non-autoplay audio should trigger loadeddata event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  a.addEventListener(&quot;loadeddata&quot;, function() {
+    t.done();
+  }, false);
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;audio events - loadeddata&quot;);
+
+test(function() {
+  var t = async_test(&quot;setting src attribute on non-autoplay video should trigger loadeddata event&quot;, {timeout:5000});
+  var v = document.getElementById(&quot;v&quot;);
+  v.addEventListener(&quot;loadeddata&quot;, function() {
+    t.done();
+  }, false);
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;video events - loadeddata&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_loadedmetadataexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadedmetadata-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadedmetadata-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadedmetadata-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - loadedmetadata 
+PASS setting src attribute on autoplay audio should trigger loadedmetadata event 
+PASS video events - loadedmetadata 
+PASS setting src attribute on autoplay video should trigger loadedmetadata event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_loadedmetadatahtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadedmetadata.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadedmetadata.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadedmetadata.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,38 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - loadedmetadata&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; autoplay controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; autoplay controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;setting src attribute on autoplay audio should trigger loadedmetadata event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  a.addEventListener(&quot;loadedmetadata&quot;, function() {
+    t.done();
+    a.pause();
+  });
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;audio events - loadedmetadata&quot;);
+
+test(function() {
+  var t = async_test(&quot;setting src attribute on autoplay video should trigger loadedmetadata event&quot;, {timeout:5000});
+  var v = document.getElementById(&quot;v&quot;);
+  v.addEventListener(&quot;loadedmetadata&quot;, function() {
+    t.done();
+    v.pause();
+  });
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;video events - loadedmetadata&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_loadedmetadata_noautoplayexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadedmetadata_noautoplay-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadedmetadata_noautoplay-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadedmetadata_noautoplay-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - loadedmetadata 
+PASS setting src attribute on non-autoplay audio should trigger loadedmetadata event 
+PASS video events, loadedmetadata 
+PASS setting src attribute on non-autoplay video should trigger loadedmetadata event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_loadedmetadata_noautoplayhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadedmetadata_noautoplay.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadedmetadata_noautoplay.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadedmetadata_noautoplay.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,36 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - loadedmetadata&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;setting src attribute on non-autoplay audio should trigger loadedmetadata event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  a.addEventListener(&quot;loadedmetadata&quot;, function() {
+    t.done();
+  }, false);
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;audio events - loadedmetadata&quot;);
+
+test(function() {
+  var t = async_test(&quot;setting src attribute on non-autoplay video should trigger loadedmetadata event&quot;, {timeout:5000});
+  var v = document.getElementById(&quot;v&quot;);
+  v.addEventListener(&quot;loadedmetadata&quot;, function() {
+    t.done();
+  }, false);
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;video events, loadedmetadata&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_loadstartexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadstart-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadstart-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadstart-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - loadstart 
+PASS setting src attribute on autoplay audio should trigger loadstart event 
+PASS video events - loadstart 
+PASS setting src attribute on autoplay video should trigger loadstart event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_loadstarthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadstart.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadstart.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadstart.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,38 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - loadstart&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; autoplay controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; autoplay controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;setting src attribute on autoplay audio should trigger loadstart event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  a.addEventListener(&quot;loadstart&quot;, function() {
+    t.done();
+    a.pause();
+  }, false);
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;audio events - loadstart&quot;);
+
+test(function() {
+  var t = async_test(&quot;setting src attribute on autoplay video should trigger loadstart event&quot;, {timeout:5000});
+  var v = document.getElementById(&quot;v&quot;);
+  v.addEventListener(&quot;loadstart&quot;, function() {
+    t.done();
+    v.pause();
+  }, false);
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;video events - loadstart&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_loadstart_noautoplayexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadstart_noautoplay-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadstart_noautoplay-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadstart_noautoplay-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - loadstart 
+PASS setting src attribute on non-autoplay audio should trigger loadstart event 
+PASS video events - loadstart 
+PASS setting src attribute on non-autoplay video should trigger loadstart event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_loadstart_noautoplayhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadstart_noautoplay.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadstart_noautoplay.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadstart_noautoplay.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,36 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - loadstart&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;setting src attribute on non-autoplay audio should trigger loadstart event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  a.addEventListener(&quot;loadstart&quot;, function() {
+    t.done();
+  }, false);
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;audio events - loadstart&quot;);
+
+test(function() {
+  var t = async_test(&quot;setting src attribute on non-autoplay video should trigger loadstart event&quot;, {timeout:5000});
+  var v = document.getElementById(&quot;v&quot;);
+  v.addEventListener(&quot;loadstart&quot;, function() {
+    t.done();
+  }, false);
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;video events - loadstart&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_order_canplay_canplaythroughexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_canplay_canplaythrough-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_canplay_canplaythrough-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_canplay_canplaythrough-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - canplay, then canplaythrough 
+PASS setting src attribute on autoplay audio should trigger canplay then canplaythrough event 
+PASS video events - canplay, then canplaythrough 
+PASS setting src attribute on autoplay video should trigger canplay then canplaythrough event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_order_canplay_canplaythroughhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_canplay_canplaythrough.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_canplay_canplaythrough.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_canplay_canplaythrough.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,52 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - canplay, then canplaythrough&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; autoplay controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; autoplay controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;setting src attribute on autoplay audio should trigger canplay then canplaythrough event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  var found_canplay = false;
+  a.addEventListener(&quot;canplay&quot;, function() {
+    found_canplay = true;
+  });
+  a.addEventListener(&quot;canplaythrough&quot;, function() {
+    t.step(function() {
+     assert_true(found_canplay);
+    });
+    t.done();
+    a.pause();
+  }, false);
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;audio events - canplay, then canplaythrough&quot;);
+
+test(function() {
+  var t = async_test(&quot;setting src attribute on autoplay video should trigger canplay then canplaythrough event&quot;, {timeout:5000});
+  var v = document.getElementById(&quot;v&quot;);
+  var found_canplay = false;
+  v.addEventListener(&quot;canplay&quot;, function() {
+    found_canplay = true;
+  });
+  v.addEventListener(&quot;canplaythrough&quot;, function() {
+    t.step(function() {
+     assert_true(found_canplay);
+    });
+    t.done();
+    v.pause();
+  }, false);
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;video events - canplay, then canplaythrough&quot;);
+ &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_order_canplay_playingexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_canplay_playing-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_canplay_playing-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_canplay_playing-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - canplay, then playing 
+PASS setting src attribute on autoplay audio should trigger canplay then playing event 
+PASS video events - canplay, then playing 
+PASS setting src attribute on autoplay video should trigger canplay then playing event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_order_canplay_playinghtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_canplay_playing.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_canplay_playing.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_canplay_playing.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,52 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - canplay, then playing&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; autoplay controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; autoplay controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;setting src attribute on autoplay audio should trigger canplay then playing event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  var found_canplay = false;
+  a.addEventListener(&quot;canplay&quot;, function() {
+    found_canplay = true;
+  });
+  a.addEventListener(&quot;playing&quot;, function() {
+    t.step(function() {
+     assert_true(found_canplay);
+    });
+    t.done();
+    a.pause();
+  }, false);
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;audio events - canplay, then playing&quot;);
+
+test(function() {
+  var t = async_test(&quot;setting src attribute on autoplay video should trigger canplay then playing event&quot;, {timeout:5000});
+  var v = document.getElementById(&quot;v&quot;);
+  var found_canplay = false;
+  v.addEventListener(&quot;canplay&quot;, function() {
+    found_canplay = true;
+  });
+  v.addEventListener(&quot;playing&quot;, function() {
+    t.step(function() {
+     assert_true(found_canplay);
+    });
+    t.done();
+    v.pause();
+  }, false);
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;video events - canplay, then playing&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_order_loadedmetadata_loadeddataexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_loadedmetadata_loadeddata-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_loadedmetadata_loadeddata-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_loadedmetadata_loadeddata-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - loadedmetadata, then loadeddata 
+PASS setting src attribute on autoplay audio should trigger loadedmetadata then loadeddata event 
+PASS video events - loadedmetadata, then loadeddata 
+PASS setting src attribute on autoplay video should trigger loadedmetadata then loadeddata event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_order_loadedmetadata_loadeddatahtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_loadedmetadata_loadeddata.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_loadedmetadata_loadeddata.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_loadedmetadata_loadeddata.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,52 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - loadedmetadata, then loadeddata&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; autoplay controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; autoplay controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;setting src attribute on autoplay audio should trigger loadedmetadata then loadeddata event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  var found_loadedmetadata = false;
+  a.addEventListener(&quot;loadedmetadata&quot;, function() {
+    found_loadedmetadata = true;
+  });
+  a.addEventListener(&quot;loadeddata&quot;, function() {
+    t.step(function() {
+     assert_true(found_loadedmetadata);
+    });
+    t.done();
+    a.pause();
+  }, false);
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;audio events - loadedmetadata, then loadeddata&quot;);
+
+test(function() {
+  var t = async_test(&quot;setting src attribute on autoplay video should trigger loadedmetadata then loadeddata event&quot;, {timeout:5000});
+  var v = document.getElementById(&quot;v&quot;);
+  var found_loadedmetadata = false;
+  v.addEventListener(&quot;loadedmetadata&quot;, function() {
+    found_loadedmetadata = true;
+  });
+  v.addEventListener(&quot;loadeddata&quot;, function() {
+    t.step(function() {
+     assert_true(found_loadedmetadata);
+    });
+    t.done();
+    v.pause();
+  }, false);
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;video events - loadedmetadata, then loadeddata&quot;);
+ &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_order_loadstart_progressexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_loadstart_progress-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_loadstart_progress-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_loadstart_progress-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - loadstart, then progress 
+PASS setting src attribute on autoplay audio should trigger loadstart then progress event 
+PASS video events - loadstart, then progress 
+PASS setting src attribute on autoplay video should trigger loadstart then progress event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_order_loadstart_progresshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_loadstart_progress.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_loadstart_progress.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_loadstart_progress.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,52 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - loadstart, then progress&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; autoplay controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; autoplay controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;setting src attribute on autoplay audio should trigger loadstart then progress event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  var found_loadstart = false;
+  a.addEventListener(&quot;loadstart&quot;, function() {
+    found_loadstart = true;
+  });
+  a.addEventListener(&quot;progress&quot;, function() {
+    t.step(function() {
+     assert_true(found_loadstart);
+    });
+    t.done();
+    a.pause();
+  }, false);
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;audio events - loadstart, then progress&quot;);
+
+test(function() {
+  var t = async_test(&quot;setting src attribute on autoplay video should trigger loadstart then progress event&quot;, {timeout:5000});
+  var v = document.getElementById(&quot;v&quot;);
+  var found_loadstart = false;
+  v.addEventListener(&quot;loadstart&quot;, function() {
+    found_loadstart = true;
+  });
+  v.addEventListener(&quot;progress&quot;, function() {
+    t.step(function() {
+     assert_true(found_loadstart);
+    });
+    t.done();
+    v.pause();
+  }, false);
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;video events - loadstart, then progress&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_pauseexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_pause-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_pause-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_pause-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - pause 
+PASS calling pause() on autoplay audio should trigger pause event 
+PASS video events - pause 
+PASS calling pause() on autoplay video should trigger pause event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_pausehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_pause.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_pause.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_pause.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,48 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - pause&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; autoplay controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; autoplay controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;calling pause() on autoplay audio should trigger pause event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  a.addEventListener(&quot;pause&quot;, function() {
+    t.step(function() {
+     assert_true(true);
+    });
+    t.done();
+  }, false);
+  a.addEventListener(&quot;play&quot;, function() {
+    a.pause(); // pause right after play
+  });
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;audio events - pause&quot;);
+
+test(function() {
+  var t = async_test(&quot;calling pause() on autoplay video should trigger pause event&quot;, {timeout:5000});
+  var v = document.getElementById(&quot;v&quot;);
+  v.addEventListener(&quot;pause&quot;, function() {
+    t.step(function() {
+     assert_true(true);
+    });
+    t.done();
+  }, false);
+  v.addEventListener(&quot;play&quot;, function() {
+    v.pause(); // pause right after play
+  });
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;video events - pause&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_pause_noautoplayexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_pause_noautoplay-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_pause_noautoplay-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_pause_noautoplay-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - pause 
+PASS calling play() then pause() on non-autoplay audio should trigger pause event 
+PASS video events - pause 
+PASS calling play() then pause() on non-autoplay video should trigger pause event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_pause_noautoplayhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_pause_noautoplay.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_pause_noautoplay.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_pause_noautoplay.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,40 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - pause&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;calling play() then pause() on non-autoplay audio should trigger pause event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  a.addEventListener(&quot;pause&quot;, function() {
+    t.done();
+  }, false);
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+  a.play();
+  a.pause();
+}, &quot;audio events - pause&quot;);
+
+test(function() {
+  var t = async_test(&quot;calling play() then pause() on non-autoplay video should trigger pause event&quot;, {timeout:5000});
+  var v = document.getElementById(&quot;v&quot;);
+  v.addEventListener(&quot;pause&quot;, function() {
+    t.done();
+  }, false);
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+  v.play();
+  v.pause();
+}, &quot;video events - pause&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_playexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_play-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_play-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_play-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - play 
+PASS setting src attribute on autoplay audio should trigger play event 
+PASS video events - play 
+PASS setting src attribute on autoplay video should trigger play event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_playhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_play.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_play.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_play.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,38 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - play&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; autoplay controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; autoplay controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;setting src attribute on autoplay audio should trigger play event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  a.addEventListener(&quot;play&quot;, function() {
+    t.done();
+    a.pause();
+  }, false);
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;audio events - play&quot;);
+
+test(function() {
+  var t = async_test(&quot;setting src attribute on autoplay video should trigger play event&quot;, {timeout:5000});
+  var v = document.getElementById(&quot;v&quot;);
+  v.addEventListener(&quot;play&quot;, function() {
+    t.done();
+    v.pause();
+  }, false);
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;video events - play&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_play_noautoplayexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_play_noautoplay-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_play_noautoplay-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_play_noautoplay-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - play 
+PASS calling play() on audio should trigger play event 
+PASS video events - play 
+PASS calling play() on video should trigger play event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_play_noautoplayhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_play_noautoplay.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_play_noautoplay.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_play_noautoplay.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,40 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - play&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;calling play() on audio should trigger play event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  a.addEventListener(&quot;play&quot;, function() {
+    t.done();
+    a.pause();
+  }, false);
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+  a.play();
+}, &quot;audio events - play&quot;);
+
+test(function() {
+  var t = async_test(&quot;calling play() on video should trigger play event&quot;, {timeout:5000});
+  var v = document.getElementById(&quot;v&quot;);
+  v.addEventListener(&quot;play&quot;, function() {
+    t.done();
+    v.pause();
+  }, false);
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+  v.play();
+}, &quot;video events - play&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_playingexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_playing-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_playing-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_playing-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - playing 
+PASS setting src attribute on autoplay audio should trigger playing event 
+PASS video events - playing 
+PASS setting src attribute on autoplay video should trigger playing event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_playinghtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_playing.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_playing.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_playing.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,38 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - playing&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; autoplay controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; autoplay controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;setting src attribute on autoplay audio should trigger playing event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  a.addEventListener(&quot;playing&quot;, function() {
+    t.done();
+    a.pause();
+  }, false);
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;audio events - playing&quot;);
+
+test(function() {
+  var t = async_test(&quot;setting src attribute on autoplay video should trigger playing event&quot;, {timeout:5000});
+  var v = document.getElementById(&quot;v&quot;);
+  v.addEventListener(&quot;playing&quot;, function() {
+    t.done();
+    v.pause();
+  }, false);
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;video events - playing&quot;);
+ &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_playing_noautoplayexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_playing_noautoplay-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_playing_noautoplay-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_playing_noautoplay-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - playing 
+PASS calling play() on audio should trigger playing event 
+PASS video events - playing 
+PASS calling play() on video should trigger playing event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_playing_noautoplayhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_playing_noautoplay.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_playing_noautoplay.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_playing_noautoplay.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,40 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - playing&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;calling play() on audio should trigger playing event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  a.addEventListener(&quot;playing&quot;, function() {
+    t.done();
+    a.pause();
+  });
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+  a.play();
+}, &quot;audio events - playing&quot;);
+
+test(function() {
+  var t = async_test(&quot;calling play() on video should trigger playing event&quot;, {timeout:5000});
+  var v = document.getElementById(&quot;v&quot;);
+  v.addEventListener(&quot;playing&quot;, function() {
+    t.done();
+    v.pause();
+  });
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+  v.play();
+}, &quot;video events - playing&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_progressexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_progress-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_progress-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_progress-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - progress 
+PASS setting src attribute on autoplay audio should trigger progress event 
+PASS video events - progress 
+PASS setting src attribute on autoplay video should trigger progress event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_progresshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_progress.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_progress.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_progress.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,38 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - progress&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; autoplay controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; autoplay controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;setting src attribute on autoplay audio should trigger progress event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  a.addEventListener(&quot;progress&quot;, function() {
+    t.done();
+    a.pause();
+  }, false);
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;audio events - progress&quot;);
+
+test(function() {
+  var t = async_test(&quot;setting src attribute on autoplay video should trigger progress event&quot;, {timeout:5000});
+  var v = document.getElementById(&quot;v&quot;);
+  v.addEventListener(&quot;progress&quot;, function() {
+    t.done();
+    v.pause();
+  }, false);
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;video events - progress&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_progress_noautoplayexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_progress_noautoplay-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_progress_noautoplay-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_progress_noautoplay-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - progress 
+PASS setting src attribute on non-autoplay audio should trigger progress event 
+PASS video events - progress 
+PASS setting src attribute on non-autoplay video should trigger progress event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_progress_noautoplayhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_progress_noautoplay.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_progress_noautoplay.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_progress_noautoplay.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,36 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - progress&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;setting src attribute on non-autoplay audio should trigger progress event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  a.addEventListener(&quot;progress&quot;, function() {
+    t.done();
+  }, false);
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;audio events - progress&quot;);
+
+test(function() {
+  var t = async_test(&quot;setting src attribute on non-autoplay video should trigger progress event&quot;, {timeout:5000});
+  var v = document.getElementById(&quot;v&quot;);
+  v.addEventListener(&quot;progress&quot;, function() {
+    t.done();
+  }, false);
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;video events - progress&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_timeupdateexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_timeupdate-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_timeupdate-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_timeupdate-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+spec reference
+
+  
+
+PASS setting src attribute on a sufficiently long autoplay audio should trigger timeupdate event 
+PASS setting src attribute on a sufficiently long autoplay video should trigger timeupdate event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_timeupdatehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_timeupdate.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_timeupdate.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_timeupdate.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,34 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - timeupdate&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; autoplay controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; autoplay controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+var ta = async_test(&quot;setting src attribute on a sufficiently long autoplay audio should trigger timeupdate event&quot;, {timeout:5000});
+var a = document.getElementById(&quot;a&quot;);
+a.addEventListener(&quot;timeupdate&quot;, function() {
+  ta.done();
+  a.pause();
+}, false);
+a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+
+var tv = async_test(&quot;setting src attribute on a sufficiently long autoplay video should trigger timeupdate event&quot;, {timeout:5000});
+var v = document.getElementById(&quot;v&quot;);
+v.addEventListener(&quot;timeupdate&quot;, function() {
+  tv.done();
+  v.pause();
+}, false);
+v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_timeupdate_noautoplayexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - timeupdate 
+PASS calling play() on a sufficiently long audio should trigger timeupdate event 
+PASS video events - timeupdate 
+PASS calling play() on a sufficiently long video should trigger timeupdate event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_timeupdate_noautoplayhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,40 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - timeupdate&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;calling play() on a sufficiently long audio should trigger timeupdate event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  a.addEventListener(&quot;timeupdate&quot;, function() {
+    t.done();
+    a.pause();
+  }, false);
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+  a.play();
+}, &quot;audio events - timeupdate&quot;);
+
+test(function() {
+  var t = async_test(&quot;calling play() on a sufficiently long video should trigger timeupdate event&quot;, {timeout:5000});
+  var v = document.getElementById(&quot;v&quot;);
+  v.addEventListener(&quot;timeupdate&quot;, function() {
+    t.done();
+    v.pause();
+  }, false);
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+  v.play();
+}, &quot;video events - timeupdate&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_volumechangeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_volumechange-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_volumechange-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_volumechange-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+
+PASS setting audio.volume fires volumechange 
+PASS setting audio.muted fires volumechange 
+FAIL setting audio.volume/muted to the same value does not fire volumechange assert_unreached: Reached unreachable code
+PASS setting audio.volume/muted repeatedly fires volumechange repeatedly 
+PASS setting video.volume fires volumechange 
+PASS setting video.muted fires volumechange 
+FAIL setting video.volume/muted to the same value does not fire volumechange assert_unreached: Reached unreachable code
+PASS setting video.volume/muted repeatedly fires volumechange repeatedly 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsevent_volumechangehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_volumechange.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_volumechange.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_volumechange.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,72 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;volumechange event&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+function volumechange_test(tagName) {
+  async_test(function(t) {
+    var e = document.createElement(tagName);
+    assert_equals(e.volume, 1);
+    e.volume = 0.5;
+    assert_equals(e.volume, 0.5);
+    e.onvolumechange = t.step_func(function() {
+      assert_equals(e.volume, 0.5);
+      e.volume = 1;
+      assert_equals(e.volume, 1);
+      e.onvolumechange = t.step_func(function() {
+        assert_equals(e.volume, 1);
+        t.done();
+      });
+    });
+  }, &quot;setting &quot; + tagName + &quot;.volume fires volumechange&quot;);
+
+  async_test(function(t) {
+    var e = document.createElement(tagName);
+    assert_false(e.muted);
+    e.muted = true;
+    assert_true(e.muted);
+    e.onvolumechange = t.step_func(function() {
+      assert_true(e.muted);
+      e.muted = false;
+      assert_false(e.muted);
+      e.onvolumechange = t.step_func(function() {
+        assert_false(e.muted);
+        t.done();
+      });
+    });
+  }, &quot;setting &quot; + tagName + &quot;.muted fires volumechange&quot;);
+
+  async_test(function(t) {
+    var e = document.createElement(tagName);
+    e.volume = e.volume;
+    e.muted = e.muted;
+    e.onvolumechange = t.step_func(function() {
+      assert_unreached();
+    });
+    var e2 = document.createElement(tagName);
+    e2.muted = !e2.muted;
+    e2.onvolumechange = t.step_func(function() {
+      t.done();
+    });
+  }, &quot;setting &quot; + tagName + &quot;.volume/muted to the same value does not fire volumechange&quot;);
+
+  async_test(function(t) {
+    var e = document.createElement(tagName);
+    e.muted = !e.muted;
+    e.volume = 1 - e.volume;
+    e.muted = !e.muted;
+    e.volume = 1 - e.volume;
+    var volumechange_count = 0;
+    e.onvolumechange = t.step_func(function() {
+      volumechange_count++;
+      if (volumechange_count == 4) {
+        t.done();
+      }
+    });
+  }, &quot;setting &quot; + tagName + &quot;.volume/muted repeatedly fires volumechange repeatedly&quot;);
+}
+
+volumechange_test(&quot;audio&quot;);
+volumechange_test(&quot;video&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementshistoricalexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/historical-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/historical-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/historical-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,48 @@
</span><ins>+
+PASS audio.bufferingRate should not be supported 
+PASS video.bufferingRate should not be supported 
+PASS audio.start should not be supported 
+PASS video.start should not be supported 
+PASS audio.end should not be supported 
+PASS video.end should not be supported 
+PASS audio.loopStart should not be supported 
+PASS video.loopStart should not be supported 
+PASS audio.loopEnd should not be supported 
+PASS video.loopEnd should not be supported 
+PASS audio.loopCount should not be supported 
+PASS video.loopCount should not be supported 
+PASS audio.currentLoop should not be supported 
+PASS video.currentLoop should not be supported 
+PASS audio.addCuePoint should not be supported 
+PASS video.addCuePoint should not be supported 
+PASS audio.removeCuePoint should not be supported 
+PASS video.removeCuePoint should not be supported 
+FAIL source.media should not be supported assert_false: expected false got true
+PASS audio.playCount should not be supported 
+PASS video.playCount should not be supported 
+PASS audio.addCueRange should not be supported 
+PASS video.addCueRange should not be supported 
+PASS audio.removeCueRanges should not be supported 
+PASS video.removeCueRanges should not be supported 
+PASS source.pixelratio should not be supported 
+PASS audio.bufferedBytes should not be supported 
+PASS video.bufferedBytes should not be supported 
+PASS audio.totalBytes should not be supported 
+PASS video.totalBytes should not be supported 
+PASS audio.bufferingThrottled should not be supported 
+PASS video.bufferingThrottled should not be supported 
+PASS audio.autobuffer should not be supported 
+PASS video.autobuffer should not be supported 
+PASS audio.startTime should not be supported 
+PASS video.startTime should not be supported 
+PASS audio.startOffsetTime should not be supported 
+PASS video.startOffsetTime should not be supported 
+PASS audio.initialTime should not be supported 
+PASS video.initialTime should not be supported 
+PASS video.audio should not be supported 
+PASS audio.startDate should not be supported 
+PASS video.startDate should not be supported 
+FAIL TextTrackCue constructor should not be supported assert_throws: function &quot;function () {
+    new TextTrackCue(0, 0, '');
+  }&quot; did not throw
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementshistoricalhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/historical.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/historical.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/historical.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,46 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;Historical media element features should not be supported&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+function t(property, tagName) {
+  var tagNames = tagName ? [tagName] : ['audio', 'video'];
+  tagNames.forEach(function(tagName) {
+    test(function() {
+      assert_false(property in document.createElement(tagName));
+    }, tagName + '.' + property + ' should not be supported');
+  });
+}
+
+t('bufferingRate'); // added in r678, removed in r2872.
+t('start'); // added in r692, removed in r2401.
+t('end'); // added in r692, removed in r2401.
+t('loopStart'); // added in r692, removed in r2401.
+t('loopEnd'); // added in r692, removed in r2401.
+t('loopCount'); // added in r692, replaced with playCount in r1105.
+t('currentLoop'); // added in r692, removed in r2401.
+t('addCuePoint'); // added in r721, replaced with addCueRange in r1106.
+t('removeCuePoint'); // added in r721, replaced with removeCueRanges in r1106.
+t('media', 'source'); // added in r724, removed in r8472.
+t('playCount'); // added in r1105, removed in r2401.
+t('addCueRange'); // added in r1106, removed in r5070.
+t('removeCueRanges'); // added in r1106, removed in r5070.
+t('pixelratio', 'source'); // added in r1629, removed in r2493.
+t('bufferedBytes'); // added in r1630, removed in r2405.
+t('totalBytes'); // added in r1630, removed in r2405.
+t('bufferingThrottled'); // added in r1632, removed in r2872.
+t('autobuffer'); // added in r2855, replaced with preload in r4811.
+t('startTime'); // added in r3035, replaced with initialTime in r5310.
+t('startOffsetTime'); // added in r5310, replaced with startDate in r7045.
+t('initialTime'); // added in r5310, removed in r7046.
+t('audio', 'video'); // added in r5636, replaced with muted in r5991.
+t('startDate'); // added in r7045, replaced with getStartDate() in r8113.
+
+// TextTrackCue constructor: added in r5723, removed in r7742.
+test(function() {
+  assert_throws(new TypeError(), function() {
+    new TextTrackCue(0, 0, '');
+  });
+}, 'TextTrackCue constructor should not be supported');
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLMediaElementaddTextTrackexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/addTextTrack-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/addTextTrack-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/addTextTrack-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,17 @@
</span><ins>+
+FAIL HTMLMediaElement.addTextTrack bogus first arg assert_throws: function &quot;function (){
+        video.addTextTrack('foo');
+    }&quot; threw object &quot;Error: SyntaxError: DOM Exception 12&quot; (&quot;SyntaxError&quot;) expected object &quot;TypeError&quot; (&quot;TypeError&quot;)
+FAIL HTMLMediaElement.addTextTrack uppercase first arg assert_throws: function &quot;function (){
+        video.addTextTrack('SUBTITLES');
+    }&quot; threw object &quot;Error: SyntaxError: DOM Exception 12&quot; (&quot;SyntaxError&quot;) expected object &quot;TypeError&quot; (&quot;TypeError&quot;)
+PASS HTMLMediaElement.addTextTrack subtitles first arg 
+PASS HTMLMediaElement.addTextTrack captions first arg 
+PASS HTMLMediaElement.addTextTrack descriptions first arg 
+PASS HTMLMediaElement.addTextTrack chapters first arg 
+PASS HTMLMediaElement.addTextTrack metadata first arg 
+FAIL HTMLMediaElement.addTextTrack undefined second and third arg assert_equals: expected &quot;&quot; but got &quot;undefined&quot;
+PASS HTMLMediaElement.addTextTrack null second and third arg 
+PASS HTMLMediaElement.addTextTrack foo and bar second and third arg 
+PASS HTMLMediaElement.addTextTrack foo second arg, third arg omitted 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLMediaElementaddTextTrackhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/addTextTrack.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/addTextTrack.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/addTextTrack.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,116 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;HTMLMediaElement.addTextTrack&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+var video = document.createElement('video');
+test(function(){
+    assert_throws(new TypeError(), function(){
+        video.addTextTrack('foo');
+    });
+    assert_throws(new TypeError(), function(){
+        video.addTextTrack(undefined);
+    });
+    assert_throws(new TypeError(), function(){
+        video.addTextTrack(null);
+    });
+}, document.title + ' bogus first arg');
+
+test(function(){
+    assert_throws(new TypeError(), function(){
+        video.addTextTrack('SUBTITLES');
+    });
+}, document.title + ' uppercase first arg');
+
+test(function(){
+    var t = video.addTextTrack('subtitles');
+    assert_equals(t.kind, 'subtitles');
+    assert_equals(t.label, '');
+    assert_equals(t.language, '');
+    assert_equals(t.mode, 'hidden');
+    assert_true(t.cues instanceof TextTrackCueList);
+    assert_equals(t.cues.length, 0);
+}, document.title + ' subtitles first arg');
+
+test(function(){
+    var t = video.addTextTrack('captions');
+    assert_equals(t.kind, 'captions');
+    assert_equals(t.label, '');
+    assert_equals(t.language, '');
+    assert_equals(t.mode, 'hidden');
+    assert_true(t.cues instanceof TextTrackCueList);
+    assert_equals(t.cues.length, 0);
+}, document.title + ' captions first arg');
+
+test(function(){
+    var t = video.addTextTrack('descriptions');
+    assert_equals(t.kind, 'descriptions');
+    assert_equals(t.label, '');
+    assert_equals(t.language, '');
+    assert_equals(t.mode, 'hidden');
+    assert_true(t.cues instanceof TextTrackCueList);
+    assert_equals(t.cues.length, 0);
+}, document.title + ' descriptions first arg');
+
+test(function(){
+    var t = video.addTextTrack('chapters');
+    assert_equals(t.kind, 'chapters');
+    assert_equals(t.label, '');
+    assert_equals(t.language, '');
+    assert_equals(t.mode, 'hidden');
+    assert_true(t.cues instanceof TextTrackCueList);
+    assert_equals(t.cues.length, 0);
+}, document.title + ' chapters first arg');
+
+test(function(){
+    var t = video.addTextTrack('metadata');
+    assert_equals(t.kind, 'metadata');
+    assert_equals(t.label, '');
+    assert_equals(t.language, '');
+    assert_equals(t.mode, 'hidden');
+    assert_true(t.cues instanceof TextTrackCueList);
+    assert_equals(t.cues.length, 0);
+}, document.title + ' metadata first arg');
+
+test(function(){
+    var t = video.addTextTrack('subtitles', undefined, undefined);
+    assert_equals(t.kind, 'subtitles');
+    assert_equals(t.label, '');
+    assert_equals(t.language, '');
+    assert_equals(t.mode, 'hidden');
+    assert_true(t.cues instanceof TextTrackCueList);
+    assert_equals(t.cues.length, 0);
+}, document.title + ' undefined second and third arg');
+
+test(function(){
+    var t = video.addTextTrack('subtitles', null, null);
+    assert_equals(t.kind, 'subtitles');
+    assert_equals(t.label, 'null');
+    assert_equals(t.language, 'null');
+    assert_equals(t.mode, 'hidden');
+    assert_true(t.cues instanceof TextTrackCueList);
+    assert_equals(t.cues.length, 0);
+}, document.title + ' null second and third arg');
+
+test(function(){
+    var t = video.addTextTrack('subtitles', 'foo', 'bar');
+    assert_equals(t.kind, 'subtitles');
+    assert_equals(t.label, 'foo');
+    assert_equals(t.language, 'bar');
+    assert_equals(t.mode, 'hidden');
+    assert_true(t.cues instanceof TextTrackCueList);
+    assert_equals(t.cues.length, 0);
+}, document.title + ' foo and bar second and third arg');
+
+test(function(){
+    var t = video.addTextTrack('subtitles', 'foo');
+    assert_equals(t.kind, 'subtitles');
+    assert_equals(t.label, 'foo');
+    assert_equals(t.language, '');
+    assert_equals(t.mode, 'hidden');
+    assert_true(t.cues instanceof TextTrackCueList);
+    assert_equals(t.cues.length, 0);
+}, document.title + ' foo second arg, third arg omitted');
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLMediaElementtextTracksexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/textTracks-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/textTracks-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/textTracks-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS HTMLMediaElement.textTracks 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLMediaElementtextTrackshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/textTracks.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/textTracks.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/textTracks.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,13 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;HTMLMediaElement.textTracks&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+var video = document.createElement('video');
+test(function(){
+    assert_equals(video.textTracks, video.textTracks);
+    assert_equals(video.textTracks.length, 0);
+});
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLMediaElementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/addTextTrack.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/textTracks.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementdefaultexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/default-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/default-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/default-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+
+PASS HTMLTrackElement.default missing value 
+PASS HTMLTrackElement.default empty string content attribute 
+PASS HTMLTrackElement.default empty string IDL attribute 
+PASS HTMLTrackElement.default foo in content attribute 
+PASS HTMLTrackElement.default foo in IDL attribute 
+PASS HTMLTrackElement.default true in IDL attribute 
+PASS HTMLTrackElement.default false in IDL attribute 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementdefaulthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/default.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/default.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/default.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,55 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;HTMLTrackElement.default&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function(){
+    var track = document.createElement('track');
+    assert_equals(track['default'], false);
+    assert_equals(track.getAttribute('default'), null);
+}, document.title + ' missing value');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('default', '');
+    assert_equals(track['default'], true);
+    assert_equals(track.getAttribute('default'), '');
+}, document.title + ' empty string content attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track['default'] = '';
+    assert_equals(track['default'], false);
+    assert_equals(track.getAttribute('default'), null);
+}, document.title + ' empty string IDL attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('default', 'foo');
+    assert_equals(track['default'], true);
+    assert_equals(track.getAttribute('default'), 'foo');
+}, document.title + ' foo in content attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track['default'] = 'foo';
+    assert_equals(track['default'], true);
+    assert_equals(track.getAttribute('default'), '');
+}, document.title + ' foo in IDL attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track['default'] = true;
+    assert_equals(track['default'], true);
+    assert_equals(track.getAttribute('default'), '');
+}, document.title + ' true in IDL attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('default', '');
+    track['default'] = false;
+    assert_equals(track['default'], false);
+    assert_equals(track.getAttribute('default'), null);
+}, document.title + ' false in IDL attribute');
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementkindexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/kind-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/kind-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/kind-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,22 @@
</span><ins>+
+PASS HTMLTrackElement.kind missing value 
+PASS HTMLTrackElement.kind invalid value in content attribute 
+PASS HTMLTrackElement.kind content attribute uppercase 
+PASS HTMLTrackElement.kind content attribute with uppercase turkish I (with dot) 
+PASS HTMLTrackElement.kind content attribute with lowercase turkish i (dotless) 
+PASS HTMLTrackElement.kind content attribute &quot;subtitles&quot; 
+PASS HTMLTrackElement.kind content attribute &quot;captions&quot; 
+PASS HTMLTrackElement.kind content attribute &quot;descriptions&quot; 
+PASS HTMLTrackElement.kind content attribute &quot;chapters&quot; 
+PASS HTMLTrackElement.kind content attribute &quot;metadata&quot; 
+PASS HTMLTrackElement.kind content attribute &quot;captions\u0000&quot; 
+PASS HTMLTrackElement.kind setting IDL attribute to &quot;subtitles&quot; 
+PASS HTMLTrackElement.kind setting IDL attribute to &quot;captions&quot; 
+PASS HTMLTrackElement.kind setting IDL attribute to &quot;descriptions&quot; 
+PASS HTMLTrackElement.kind setting IDL attribute to &quot;chapters&quot; 
+PASS HTMLTrackElement.kind setting IDL attribute to &quot;metadata&quot; 
+PASS HTMLTrackElement.kind setting IDL attribute to &quot;CAPTIONS&quot; 
+PASS HTMLTrackElement.kind setting IDL attribute with uppercase turkish I (with dot) 
+PASS HTMLTrackElement.kind setting IDL attribute with lowercase turkish I (dotless) 
+PASS HTMLTrackElement.kind setting IDL attribute with \u0000 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementkindhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/kind.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/kind.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/kind.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,146 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;HTMLTrackElement.kind&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function(){
+    var track = document.createElement('track');
+    assert_equals(track.kind, 'subtitles');
+    assert_equals(track.getAttribute('kind'), null);
+}, document.title + ' missing value');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('kind', 'invalid');
+    assert_equals(track.kind, 'subtitles');
+    assert_equals(track.getAttribute('kind'), 'invalid');
+}, document.title + ' invalid value in content attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('kind', 'CAPTIONS');
+    assert_equals(track.kind, 'captions');
+    assert_equals(track.getAttribute('kind'), 'CAPTIONS');
+}, document.title + ' content attribute uppercase');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('kind', 'CAPT\u0130ONS');
+    assert_equals(track.kind, 'subtitles');
+    assert_equals(track.getAttribute('kind'), 'CAPT\u0130ONS');
+}, document.title + ' content attribute with uppercase turkish I (with dot)');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('kind', 'capt\u0131ons');
+    assert_equals(track.kind, 'subtitles');
+    assert_equals(track.getAttribute('kind'), 'capt\u0131ons');
+}, document.title + ' content attribute with lowercase turkish i (dotless)');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('kind', 'subtitles');
+    assert_equals(track.kind, 'subtitles');
+    assert_equals(track.getAttribute('kind'), 'subtitles');
+}, document.title + ' content attribute &quot;subtitles&quot;');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('kind', 'captions');
+    assert_equals(track.kind, 'captions');
+    assert_equals(track.getAttribute('kind'), 'captions');
+}, document.title + ' content attribute &quot;captions&quot;');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('kind', 'descriptions');
+    assert_equals(track.kind, 'descriptions');
+    assert_equals(track.getAttribute('kind'), 'descriptions');
+}, document.title + ' content attribute &quot;descriptions&quot;');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('kind', 'chapters');
+    assert_equals(track.kind, 'chapters');
+    assert_equals(track.getAttribute('kind'), 'chapters');
+}, document.title + ' content attribute &quot;chapters&quot;');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('kind', 'metadata');
+    assert_equals(track.kind, 'metadata');
+    assert_equals(track.getAttribute('kind'), 'metadata');
+}, document.title + ' content attribute &quot;metadata&quot;');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('kind', 'captions\u0000');
+    assert_equals(track.kind, 'subtitles');
+    assert_equals(track.getAttribute('kind'), 'captions\u0000');
+}, document.title + ' content attribute &quot;captions\\u0000&quot;');
+
+test(function(){
+    var track = document.createElement('track');
+    track.kind = 'subtitles';
+    assert_equals(track.getAttribute('kind'), 'subtitles');
+    assert_equals(track.kind, 'subtitles');
+}, document.title + ' setting IDL attribute to &quot;subtitles&quot;');
+
+test(function(){
+    var track = document.createElement('track');
+    track.kind = 'captions';
+    assert_equals(track.getAttribute('kind'), 'captions');
+    assert_equals(track.kind, 'captions');
+}, document.title + ' setting IDL attribute to &quot;captions&quot;');
+
+test(function(){
+    var track = document.createElement('track');
+    track.kind = 'descriptions';
+    assert_equals(track.getAttribute('kind'), 'descriptions');
+    assert_equals(track.kind, 'descriptions');
+}, document.title + ' setting IDL attribute to &quot;descriptions&quot;');
+
+test(function(){
+    var track = document.createElement('track');
+    track.kind = 'chapters';
+    assert_equals(track.getAttribute('kind'), 'chapters');
+    assert_equals(track.kind, 'chapters');
+}, document.title + ' setting IDL attribute to &quot;chapters&quot;');
+
+test(function(){
+    var track = document.createElement('track');
+    track.kind = 'metadata';
+    assert_equals(track.getAttribute('kind'), 'metadata');
+    assert_equals(track.kind, 'metadata');
+}, document.title + ' setting IDL attribute to &quot;metadata&quot;');
+
+test(function(){
+    var track = document.createElement('track');
+    track.kind = 'CAPTIONS';
+    assert_equals(track.getAttribute('kind'), 'CAPTIONS');
+    assert_equals(track.kind, 'captions');
+}, document.title + ' setting IDL attribute to &quot;CAPTIONS&quot;');
+
+test(function(){
+    var track = document.createElement('track');
+    track.kind = 'CAPT\u0130ONS';
+    assert_equals(track.getAttribute('kind'), 'CAPT\u0130ONS');
+    assert_equals(track.kind, 'subtitles');
+}, document.title + ' setting IDL attribute with uppercase turkish I (with dot)');
+
+test(function(){
+    var track = document.createElement('track');
+    track.kind = 'capt\u0131ons';
+    assert_equals(track.getAttribute('kind'), 'capt\u0131ons');
+    assert_equals(track.kind, 'subtitles');
+}, document.title + ' setting IDL attribute with lowercase turkish I (dotless)');
+
+test(function(){
+    var track = document.createElement('track');
+    track.kind = 'captions\u0000';
+    assert_equals(track.getAttribute('kind'), 'captions\u0000');
+    assert_equals(track.kind, 'subtitles');
+}, document.title + ' setting IDL attribute with \\u0000');
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementlabelexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/label-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/label-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/label-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,13 @@
</span><ins>+
+PASS HTMLTrackElement.label missing value 
+PASS HTMLTrackElement.label empty string content attribute 
+PASS HTMLTrackElement.label empty string IDL attribute 
+PASS HTMLTrackElement.label lowercase content attribute 
+PASS HTMLTrackElement.label uppercase content attribute 
+PASS HTMLTrackElement.label\u0000 in content attribute 
+PASS HTMLTrackElement.label lowercase IDL attribute 
+PASS HTMLTrackElement.label uppercase IDL attribute 
+PASS HTMLTrackElement.label whitespace in content attribute 
+PASS HTMLTrackElement.label whitespace in IDL attribute 
+PASS HTMLTrackElement.label \u0000 in IDL attribute 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementlabelhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/label.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/label.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/label.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,83 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;HTMLTrackElement.label&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function(){
+    var track = document.createElement('track');
+    assert_equals(track.label, '');
+    assert_equals(track.getAttribute('label'), null);
+}, document.title + ' missing value');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('label', '');
+    assert_equals(track.label, '');
+    assert_equals(track.getAttribute('label'), '');
+}, document.title + ' empty string content attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.label = '';
+    assert_equals(track.label, '');
+    assert_equals(track.getAttribute('label'), '');
+}, document.title + ' empty string IDL attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('label', 'foo');
+    assert_equals(track.label, 'foo');
+    assert_equals(track.getAttribute('label'), 'foo');
+}, document.title + ' lowercase content attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('label', 'FOO');
+    assert_equals(track.label, 'FOO');
+    assert_equals(track.getAttribute('label'), 'FOO');
+}, document.title + ' uppercase content attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('label', '\u0000');
+    assert_equals(track.label, '\u0000');
+    assert_equals(track.getAttribute('label'), '\u0000');
+}, document.title + '\\u0000 in content attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.label = 'foo';
+    assert_equals(track.label, 'foo');
+    assert_equals(track.getAttribute('label'), 'foo');
+}, document.title + ' lowercase IDL attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.label = 'FOO';
+    assert_equals(track.label, 'FOO');
+    assert_equals(track.getAttribute('label'), 'FOO');
+}, document.title + ' uppercase IDL attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('label', ' foo \n');
+    assert_equals(track.label, ' foo \n');
+    assert_equals(track.getAttribute('label'), ' foo \n');
+}, document.title + ' whitespace in content attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.label = ' foo \n';
+    assert_equals(track.label, ' foo \n');
+    assert_equals(track.getAttribute('label'), ' foo \n');
+}, document.title + ' whitespace in IDL attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.label = '\u0000';
+    assert_equals(track.label, '\u0000');
+    assert_equals(track.getAttribute('label'), '\u0000');
+}, document.title + ' \\u0000 in IDL attribute');
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementreadyStateexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/readyState-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/readyState-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/readyState-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS HTMLTrackElement.readyState default value 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementreadyStatehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/readyState.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/readyState.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/readyState.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,11 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;HTMLTrackElement.readyState&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function(){
+    var track = document.createElement('track');
+    assert_equals(track.readyState, 0);
+}, document.title + ' default value');
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementsrcexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/src-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/src-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/src-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,11 @@
</span><ins>+
+PASS HTMLTrackElement.src missing value 
+FAIL HTMLTrackElement.src empty string in content attribute assert_equals: expected &quot;&quot; but got &quot;http://127.0.0.1:8000/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/src.html&quot;
+FAIL HTMLTrackElement.src empty string in IDL attribute assert_equals: expected &quot;&quot; but got &quot;http://127.0.0.1:8000/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/src.html&quot;
+PASS HTMLTrackElement.src unresolvable value in content attribute 
+PASS HTMLTrackElement.src resolvable value in content attribute 
+FAIL HTMLTrackElement.src \u0000 in content attribute assert_equals: expected &quot;http://127.0.0.1:8000/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/%00&quot; but got &quot;http://127.0.0.1:8000/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/src.html&quot;
+PASS HTMLTrackElement.src assigning unresolvable value to IDL attribute 
+PASS HTMLTrackElement.src assigning resolvable value to IDL attribute 
+FAIL HTMLTrackElement.src assigning \u0000 to IDL attribute assert_equals: expected &quot;http://127.0.0.1:8000/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/%00&quot; but got &quot;http://127.0.0.1:8000/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/src.html&quot;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementsrchtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/src.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/src.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/src.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,77 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;HTMLTrackElement.src&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function(){
+    var track = document.createElement('track');
+    assert_equals(track.src, '');
+    assert_equals(track.getAttribute('src'), null);
+}, document.title + ' missing value');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('src', '');
+    assert_equals(track.src, '');
+    assert_equals(track.getAttribute('src'), '');
+}, document.title + ' empty string in content attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.src = '';
+    assert_equals(track.src, '');
+    assert_equals(track.getAttribute('src'), '');
+}, document.title + ' empty string in IDL attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('src', 'http://foo bar');
+    assert_equals(track.src, 'http://foo bar');
+    assert_equals(track.getAttribute('src'), 'http://foo bar');
+}, document.title + ' unresolvable value in content attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('src', 'test');
+    var link = document.createElement('a');
+    link.setAttribute('href', 'test');
+    assert_equals(track.src, link.href);
+    assert_equals(track.getAttribute('src'), 'test');
+}, document.title + ' resolvable value in content attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('src', '\u0000');
+    var link = document.createElement('a');
+    link.setAttribute('href', '%00');
+    assert_equals(track.src, link.href);
+    assert_equals(track.getAttribute('src'), '\u0000');
+}, document.title + ' \\u0000 in content attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.src = 'http://foo bar';
+    assert_equals(track.src, 'http://foo bar');
+    assert_equals(track.getAttribute('src'), 'http://foo bar');
+}, document.title + ' assigning unresolvable value to IDL attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.src = 'test';
+    var link = document.createElement('a');
+    link.setAttribute('href', 'test');
+    assert_equals(track.src, link.href);
+    assert_equals(track.getAttribute('src'), 'test');
+}, document.title + ' assigning resolvable value to IDL attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.src = '\u0000';
+    var link = document.createElement('a');
+    link.setAttribute('href', '%00');
+    assert_equals(track.src, link.href);
+    assert_equals(track.getAttribute('src'), '\u0000');
+}, document.title + ' assigning \\u0000 to IDL attribute');
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementsrclangexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/srclang-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/srclang-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/srclang-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,13 @@
</span><ins>+
+PASS HTMLTrackElement.srclang missing value 
+PASS HTMLTrackElement.srclang empty string content attribute 
+PASS HTMLTrackElement.srclang empty string IDL attribute 
+PASS HTMLTrackElement.srclang lowercase content attribute 
+PASS HTMLTrackElement.srclang uppercase content attribute 
+PASS HTMLTrackElement.srclang \u0000 content attribute 
+PASS HTMLTrackElement.srclang lowercase IDL attribute 
+PASS HTMLTrackElement.srclang uppercase IDL attribute 
+PASS HTMLTrackElement.srclang whitespace in content attribute 
+PASS HTMLTrackElement.srclang whitespace in IDL attribute 
+PASS HTMLTrackElement.srclang \u0000 in IDL attribute 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementsrclanghtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/srclang.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/srclang.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/srclang.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,82 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;HTMLTrackElement.srclang&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function(){
+    var track = document.createElement('track');
+    assert_equals(track.srclang, '');
+    assert_equals(track.getAttribute('srclang'), null);
+}, document.title + ' missing value');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('srclang', '');
+    assert_equals(track.srclang, '');
+    assert_equals(track.getAttribute('srclang'), '');
+}, document.title + ' empty string content attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.srclang = '';
+    assert_equals(track.srclang, '');
+    assert_equals(track.getAttribute('srclang'), '');
+}, document.title + ' empty string IDL attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('srclang', 'foo');
+    assert_equals(track.srclang, 'foo');
+    assert_equals(track.getAttribute('srclang'), 'foo');
+}, document.title + ' lowercase content attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('srclang', 'FOO');
+    assert_equals(track.srclang, 'FOO');
+    assert_equals(track.getAttribute('srclang'), 'FOO');
+}, document.title + ' uppercase content attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('srclang', '\u0000');
+    assert_equals(track.srclang, '\u0000');
+    assert_equals(track.getAttribute('srclang'), '\u0000');
+}, document.title + ' \\u0000 content attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.srclang = 'foo';
+    assert_equals(track.srclang, 'foo');
+    assert_equals(track.getAttribute('srclang'), 'foo');
+}, document.title + ' lowercase IDL attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.srclang = 'FOO';
+    assert_equals(track.srclang, 'FOO');
+    assert_equals(track.getAttribute('srclang'), 'FOO');
+}, document.title + ' uppercase IDL attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('srclang', ' foo \n');
+    assert_equals(track.srclang, ' foo \n');
+    assert_equals(track.getAttribute('srclang'), ' foo \n');
+}, document.title + ' whitespace in content attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.srclang = ' foo \n';
+    assert_equals(track.srclang, ' foo \n');
+    assert_equals(track.getAttribute('srclang'), ' foo \n');
+}, document.title + ' whitespace in IDL attribute');
+
+test(function(){
+    var track = document.createElement('track');
+    track.srclang = '\u0000';
+    assert_equals(track.srclang, '\u0000');
+    assert_equals(track.getAttribute('srclang'), '\u0000');
+}, document.title + ' \\u0000 in IDL attribute');
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementtrackexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/track-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/track-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/track-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS HTMLTrackElement.track 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementtrackhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/track.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/track.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/track.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,12 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;HTMLTrackElement.track&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function(){
+    var track = document.createElement('track');
+    assert_equals(track.track, track.track, 'same object should be returned');
+    assert_true(track.track instanceof TextTrack, 'returned object should be a TextTrack');
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesHTMLElementHTMLTrackElementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,24 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/default.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/kind.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/label.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/readyState.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/src.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/srclang.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/track.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackactiveCuesexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/activeCues-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/activeCues-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/activeCues-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+
+
+FAIL TextTrack.activeCues, empty list assert_not_equals: t2.activeCues should not be null got disallowed value null
+PASS TextTrack.activeCues, after addCue() 
+PASS TextTrack.activeCues, different modes 
+FAIL TextTrack.activeCues, video loading assert_equals: t1.activeCues.length before the video has started playing expected 0 but got 1
+FAIL TextTrack.activeCues, video playing assert_unreached: Reached unreachable code
+FAIL TextTrack.activeCues, adding cue during playback assert_unreached: Reached unreachable code
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackactiveCueshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/activeCues.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/activeCues.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/activeCues.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,104 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TextTrack.activeCues&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;script src=/w3c/resources/media.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+setup(function(){
+    window.video = document.createElement('video');
+    window.t1 = video.addTextTrack('subtitles');
+    window.track = document.createElement('track');
+    track['default'] = true;
+    video.appendChild(track);
+    window.t2 = track.track;
+    t2.mode = 'showing';
+    window.t1_cues = t1.activeCues;
+    window.t2_cues = t2.activeCues;
+    document.body.appendChild(video);
+    if (!t1)
+        throw new Error('t1 was undefined')
+}, {timeout:25000});
+function smoke_test() {
+  assert_true('HTMLTrackElement' in window, 'track not supported');
+}
+
+test(function(){
+    smoke_test();
+    assert_equals(t1.activeCues, t1_cues, 't1.activeCues should return same object');
+    assert_equals(t2.activeCues, t2_cues, 't2.activeCues should return same object');
+    assert_not_equals(t1.activeCues, t2.activeCues, 't1.activeCues and t2.activeCues should be different objects');
+    assert_not_equals(t1.activeCues, null, 't1.activeCues should not be null');
+    assert_not_equals(t2.activeCues, null, 't2.activeCues should not be null');
+    assert_equals(t1.activeCues.length, 0, 't1.activeCues should have length 0');
+    assert_equals(t2.activeCues.length, 0, 't2.activeCues should have length 0');
+}, document.title+', empty list');
+test(function(){
+    smoke_test();
+    var c = new VTTCue(0, 1, &quot;text&quot;);
+    t1.addCue(c);
+    assert_equals(t1.activeCues, t1_cues, &quot;t1.activeCues should return same object&quot;);
+    assert_equals(t1.activeCues.length, 0, &quot;t1.activeCues.length&quot;);
+    var c2 = new VTTCue(1, 2, &quot;text2&quot;);
+    t1.addCue(c2);
+    assert_equals(t1.activeCues, t1_cues, &quot;t1.activeCues should return the same object after adding a second cue&quot;);
+    assert_equals(t1.activeCues.length, 0, &quot;t1.activeCues.length after adding a second cue&quot;);
+}, document.title+', after addCue()');
+test(function(){
+    smoke_test();
+    t1.mode = 'showing';
+    assert_equals(t1.activeCues, t1_cues, &quot;t1.activeCues should return the same object after setting mode to showing&quot;);
+    t1.mode = 'hidden';
+    assert_equals(t1.activeCues, t1_cues, &quot;t1.activeCues should return the same object after setting mode to hidden&quot;);
+    t1.mode = 'disabled';
+    assert_equals(t1.activeCues, null, &quot;t1.activeCues should be null when mode is disabled&quot;);
+    assert_equals(t1_cues.length, 0, &quot;t1_cues should still be intact after setting mode to disabled&quot;);
+}, document.title+', different modes');
+
+// ok now let's load in a video
+var test1 = async_test(document.title+', video loading', {timeout:20000});
+var test2 = async_test(document.title+', video playing', {timeout:20000});
+var test3 = async_test(document.title+', adding cue during playback', {timeout:20000});
+test1.step(smoke_test);
+test2.step(smoke_test);
+test3.step(smoke_test);
+test1.step(function(){
+    t1.mode = 'showing';
+    video.onloadeddata = test1.step_func(function(e) {
+        video.onplaying = test2.step_func(function(e) {
+            try {
+                assert_equals(t1.activeCues, t1_cues, &quot;t1.activeCues should return the same object after playing a video&quot;);
+                assert_equals(t1.activeCues.length, 1, &quot;t1.activeCues.length after the video has started playing&quot;);
+            } catch(ex) {
+                test2.step(function() { throw ex; });
+                test3.step(function() { assert_unreached(); });
+                return;
+            }
+            test3.step(function(){
+                var c3 = new VTTCue(0, 2, &quot;text3&quot;);
+                t1.addCue(c3);
+                assert_equals(t1.activeCues.length, 1, &quot;t1.activeCues.length after adding a cue in the same script&quot;);
+                setTimeout(test3.step_func(function(){
+                    assert_equals(t1.activeCues.length, 2, &quot;t1.activeCues.length after the event loop has spun&quot;);
+                    test3.done();
+                }, 0));
+            });
+            test2.done();
+        });
+        try {
+            assert_equals(t1.activeCues, t1_cues, &quot;t1.activeCues should return the same object after loading a video&quot;);
+            assert_equals(t2.activeCues, t2_cues, &quot;t2.activeCues should return the same object after loading a video&quot;);
+            assert_equals(t1.activeCues.length, 0, &quot;t1.activeCues.length before the video has started playing&quot;);
+            assert_equals(t2.activeCues.length, 0, &quot;t1.activeCues.length before the video has started playing&quot;);
+        } catch(ex) {
+            test1.step(function() { throw ex; });
+            test2.step(function() { assert_unreached(); });
+            test3.step(function() { assert_unreached(); });
+            return;
+        }
+        video.play();
+        test1.done();
+    });
+    video.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;);
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackaddCueexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/addCue-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/addCue-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/addCue-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+CONSOLE MESSAGE: Cross-origin text track load denied by Cross-Origin Resource Sharing policy.
+
+
+PASS TextTrack.addCue(), adding a cue to two different tracks 
+PASS TextTrack.addCue(), adding a cue to a track twice 
+PASS TextTrack.addCue(), adding a removed cue to a different track 
+PASS TextTrack.addCue(), adding an associated but removed cue to the same track 
+FAIL TextTrack.addCue(), adding a cue associated with a track element to other track assert_unreached: got error event Reached unreachable code
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackaddCuehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/addCue.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/addCue.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/addCue.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,68 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TextTrack.addCue()&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+setup(function(){
+    window.video = document.createElement('video');
+    document.body.appendChild(video);
+}, {timeout:5000});
+test(function() {
+    var t1 = video.addTextTrack('subtitles');
+    var t2 = video.addTextTrack('subtitles');
+    var c1 = new VTTCue(0, 1, 'text1');
+    t1.addCue(c1);
+    t2.addCue(c1);
+    assert_equals(c1.track, t2);
+}, document.title+', adding a cue to two different tracks');
+test(function() {
+    var t1 = video.addTextTrack('subtitles');
+    var c1 = new VTTCue(0, 1, 'text1');
+    t1.addCue(c1);
+    assert_equals(c1.track, t1);
+    t1.addCue(c1);
+    assert_equals(c1.track, t1);
+}, document.title+', adding a cue to a track twice');
+test(function() {
+    var t1 = video.addTextTrack('subtitles');
+    var t2 = video.addTextTrack('subtitles');
+    var c1 = new VTTCue(0, 1, 'text1');
+    t1.addCue(c1);
+    assert_equals(c1.track, t1);
+    t1.removeCue(c1);
+    assert_equals(c1.track, null);
+    t2.addCue(c1);
+    assert_equals(c1.track, t2);
+}, document.title+', adding a removed cue to a different track');
+test(function() {
+    var t1 = video.addTextTrack('subtitles');
+    var c1 = new VTTCue(0, 1, 'text1');
+    t1.addCue(c1);
+    assert_equals(t1.cues.length, 1, 't1.cues.length after first addition');
+    t1.removeCue(c1);
+    assert_equals(t1.cues.length, 0, 't1.cues.length after removal');
+    t1.addCue(c1);
+    assert_equals(t1.cues.length, 1, 't1.cues.length after second addition');
+}, document.title+', adding an associated but removed cue to the same track');
+
+var t = async_test(document.title+', adding a cue associated with a track element to other track');
+t.step(function(){
+    var t1 = video.addTextTrack('subtitles');
+    var track = document.createElement('track');
+    track.onload = t.step_func(function(){
+        var cue = track.track.cues[0];
+        track.track.removeCue(cue);
+        t1.addCue(cue);
+        assert_equals(cue.track, t1);
+        t.done();
+    });
+    track.onerror = t.step_func(function() {
+      assert_unreached('got error event');
+    });
+    track.src= 'data:text/vtt,'+encodeURIComponent('WEBVTT\n\n00:00:00.000 --&gt; 00:00:01.000\ntest\n');
+    track.kind = 'subtitles';
+    track.track.mode = 'hidden';
+    video.appendChild(track);
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackconstantsexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/constants-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/constants-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/constants-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS TextTrack constants 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackconstantshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/constants.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/constants.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/constants.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,23 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TextTrack constants&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+setup(function(){
+    window.video = document.createElement('video');
+    window.t1 = video.addTextTrack('subtitles');
+});
+test(function(){
+    assert_equals(t1.DISABLED, undefined, &quot;t1.DISABLED&quot;);
+    assert_equals(t1.HIDDEN, undefined, &quot;t1.HIDDEN&quot;);
+    assert_equals(t1.SHOWING, undefined, &quot;t1.SHOWING&quot;);
+    assert_equals(TextTrack.prototype.DISABLED, undefined, &quot;TextTrack.prototype.DISABLED&quot;);
+    assert_equals(TextTrack.prototype.HIDDEN, undefined, &quot;TextTrack.prototype.HIDDEN&quot;);
+    assert_equals(TextTrack.prototype.SHOWING, undefined, &quot;TextTrack.prototype.SHOWING&quot;);
+    assert_equals(TextTrack.DISABLED, undefined, &quot;TextTrack.DISABLED&quot;);
+    assert_equals(TextTrack.HIDDEN, undefined, &quot;TextTrack.HIDDEN&quot;);
+    assert_equals(TextTrack.SHOWING, undefined, &quot;TextTrack.SHOWING&quot;);
+});
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackcuesexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/cues-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/cues-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/cues-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+
+PASS TextTrack.cues, empty list 
+PASS TextTrack.cues, after addCue() 
+PASS TextTrack.cues, different modes 
+PASS TextTrack.cues, changing order 
+FAIL TextTrack.cues, default attribute assert_not_equals: t2.cues should not be null got disallowed value null
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackcueshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/cues.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/cues.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/cues.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,100 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TextTrack.cues&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function(){
+    var video = document.createElement('video');
+    var t1 = video.addTextTrack('subtitles');
+    assert_equals(t1.cues, t1.cues, 't1.cues should return same object');
+    assert_not_equals(t1.cues, null, 't1.cues should not be null');
+    assert_true(t1.cues instanceof TextTrackCueList, 't1.cues instanceof TextTrackCueList');
+    assert_equals(t1.cues.length, 0, 't1.cues.length');
+}, document.title+', empty list');
+
+function addCue(texttrack, start, end, text, id) {
+  var c = new VTTCue(start, end, text);
+  c.id = id;
+  texttrack.addCue(c);
+  return c;
+}
+
+test(function(){
+    var video = document.createElement('video');
+    var t1 = video.addTextTrack('subtitles');
+    var t1_cues = t1.cues;
+    var c = addCue(t1, 0, 1, 'text', 'id');
+    assert_equals(t1.cues, t1_cues, &quot;t1.cues should return same object&quot;);
+    assert_equals(t1.cues.length, 1, &quot;t1.cues.length&quot;);
+    var c2 = addCue(t1, 1, 2, 'text2', 'id2');
+    assert_equals(t1.cues, t1_cues, &quot;t1.cues should return the same object after adding a second cue&quot;);
+    assert_equals(t1.cues.length, 2, &quot;t1.cues.length after adding a second cue&quot;);
+    assert_equals(t1.cues[0].id, &quot;id&quot;);
+    assert_equals(t1.cues[1].id, &quot;id2&quot;);
+}, document.title+', after addCue()');
+
+test(function(){
+    var video = document.createElement('video');
+    var t1 = video.addTextTrack('subtitles');
+    var t1_cues = t1.cues;
+    var c = addCue(t1, 0, 1, 'text', 'id');
+    var c2 = addCue(t1, 1, 2, 'text2', 'id2');
+    t1.mode = 'showing';
+    assert_equals(t1.cues, t1_cues, &quot;t1.cues should return the same object after setting mode to 'showing'&quot;);
+    t1.mode = 'hidden';
+    assert_equals(t1.cues, t1_cues, &quot;t1.cues should return the same object after setting mode to 'hidden'&quot;);
+    t1.mode = 'disabled';
+    assert_equals(t1.cues, null, &quot;t1.cues should be null when mode is 'disabled'&quot;);
+    assert_equals(t1_cues.length, 2, &quot;t1_cues should still be intact after setting mode to 'disabled'&quot;);
+    assert_equals(t1_cues[0].id, &quot;id&quot;, &quot;t1_cues first cue should still be intact after setting mode to 'disabled'&quot;);
+    assert_equals(t1_cues[1].id, &quot;id2&quot;, &quot;t1_cues second cue should still be intact after setting mode to 'disabled'&quot;);
+    t1.mode = 'hidden';
+    assert_equals(t1.cues, t1_cues, &quot;t1.cues should return the same object after setting mode to 'disabled' and then 'hidden'&quot;);
+    t1.mode = 'disabled';
+    assert_equals(t1.cues, null, &quot;t1.cues should be null when mode is set to 'disabled' again&quot;);
+    assert_equals(t1_cues.length, 2, &quot;t1_cues should still be intact after setting mode to 'disabled' again&quot;);
+    assert_equals(t1_cues[0].id, &quot;id&quot;, &quot;t1_cues first cue should still be intact after setting mode to 'disabled' again&quot;);
+    assert_equals(t1_cues[1].id, &quot;id2&quot;, &quot;t1_cues second cue should still be intact after setting mode to 'disabled' again&quot;);
+    t1.mode = 'showing';
+    assert_equals(t1.cues, t1_cues, &quot;t1.cues should return the same object after setting mode to 'disabled' and then 'showing'&quot;);
+}, document.title+', different modes');
+
+test(function(){
+    var video = document.createElement('video');
+    var t1 = video.addTextTrack('subtitles');
+    var t1_cues = t1.cues;
+    var c = addCue(t1, 0, 1, 'text', 'id');
+    var c2 = addCue(t1, 1, 2, 'text2', 'id2');
+    t1.mode = 'showing';
+    t1.cues[1].startTime = 0; // this should change the text track cue order
+    assert_equals(t1.cues[0].id, 'id2');
+    assert_equals(t1.cues[1].id, 'id');
+    t1.cues[0].startTime = 0.5; // this should change it back
+    assert_equals(t1.cues[0].id, 'id');
+    assert_equals(t1.cues[1].id, 'id2');
+}, document.title+', changing order');
+
+async_test(function(){
+    var video = document.createElement('video');
+    var t1 = video.addTextTrack('subtitles');
+    var t1_cues = t1.cues;
+    t1.mode = 'showing';
+    var track = document.createElement('track');
+    track['default'] = true;
+    video.appendChild(track); // queues a task to &quot;honor user preferences...&quot;, media element event task source
+    var t2 = track.track;
+    assert_equals(t2.cues, null, 't2.cues should be null');
+    // We need to wait until the &quot;honor user preferences...&quot; steps have run so we invoke play()
+    // which queues an event with the same task source.
+    video.onplay = this.step_func(function(){
+        assert_equals(t2.cues, t2.cues, 't2.cues should return same object');
+        assert_not_equals(t1.cues, t2.cues, 't1.cues and t2.cues should be different objects');
+        assert_not_equals(t2.cues, null, 't2.cues should not be null');
+        assert_true(t2.cues instanceof TextTrackCueList, 't2.cues instanceof TextTrackCueList');
+        assert_equals(t2.cues.length, 0, 't2.cues should have length 0');
+        this.done();
+    });
+    video.play(); // queues a task to fire 'play', media element event task source
+}, document.title+', default attribute');
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackkindexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/kind-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/kind-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/kind-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+
+PASS TextTrack.kind, addTextTrack 
+PASS TextTrack.kind, track element 
+PASS TextTrack.kind, \u0000 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackkindhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/kind.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/kind.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/kind.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,31 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TextTrack.kind&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function(){
+    var video = document.createElement('video');
+    var t1 = video.addTextTrack('subtitles');
+    var t2 = video.addTextTrack('captions');
+    var t3 = video.addTextTrack('descriptions');
+    var t4 = video.addTextTrack('chapters');
+    var t5 = video.addTextTrack('metadata');
+    assert_equals(t1.kind, 'subtitles');
+    assert_equals(t2.kind, 'captions');
+    assert_equals(t3.kind, 'descriptions');
+    assert_equals(t4.kind, 'chapters');
+    assert_equals(t5.kind, 'metadata');
+}, document.title+', addTextTrack');
+test(function(){
+    var track = document.createElement('track');
+    track.setAttribute('kind', 'CAPTIONS');
+    var t = track.track;
+    assert_equals(t.kind, 'captions');
+}, document.title+', track element');
+test(function(){
+    var track = document.createElement('track');
+    track.kind = 'captions\u0000';
+    assert_equals(track.track.kind, 'subtitles');
+}, document.title+', \\u0000');
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTracklabelexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/label-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/label-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/label-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+PASS TextTrack.label 
+PASS TextTrack.label, \u0000 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTracklabelhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/label.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/label.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/label.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,29 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TextTrack.label&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+setup(function(){
+    window.video = document.createElement('video');
+    window.t1 = video.addTextTrack('subtitles', 'foo');
+    window.track = document.createElement('track');
+    track.setAttribute('label', 'bar');
+    video.appendChild(track);
+    window.t2 = track.track;
+});
+test(function(){
+    assert_equals(t1.label, 'foo');
+    assert_equals(t2.label, 'bar');
+    track.label = 'baz';
+    assert_equals(t2.label, 'baz');
+    track.removeAttribute('label');
+    assert_equals(t2.label, '');
+});
+test(function(){
+    track.label = '\u0000a';
+    assert_equals(t2.label, '\u0000a');
+    track.setAttribute('label', '\u0000b', 'IDL attribute');
+    assert_equals(t2.label, '\u0000b', 'content attribute');
+}, document.title+', \\u0000');
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTracklanguageexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/language-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/language-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/language-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+PASS TextTrack.language 
+PASS TextTrack.language, \u0000 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTracklanguagehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/language.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/language.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/language.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,29 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TextTrack.language&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+setup(function(){
+    window.video = document.createElement('video');
+    window.t1 = video.addTextTrack('subtitles', 'foo', 'foo');
+    window.track = document.createElement('track');
+    track.setAttribute('srclang', 'bar');
+    video.appendChild(track);
+    window.t2 = track.track;
+});
+test(function(){
+    assert_equals(t1.language, 'foo');
+    assert_equals(t2.language, 'bar');
+    track.srclang = 'baz';
+    assert_equals(t2.language, 'baz');
+    track.removeAttribute('srclang');
+    assert_equals(t2.language, '');
+});
+test(function(){
+    track.srclang = '\u0000a';
+    assert_equals(t2.language, '\u0000a', 'IDL attribute');
+    track.setAttribute('srclang', '\u0000b');
+    assert_equals(t2.language, '\u0000b', 'content attribute');
+}, document.title+', \\u0000');
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackmodeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/mode-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/mode-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/mode-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+PASS TextTrack.mode, wrong value 
+PASS TextTrack.mode, correct value 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackmodehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/mode.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/mode.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/mode.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,55 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TextTrack.mode&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function(){
+    var track = document.createElement('track');
+    assert_equals(track.track.mode, 'disabled', 'initial');
+    track.track.mode = 1;
+    assert_equals(track.track.mode, 'disabled', '1');
+    track.track.mode = '';
+    assert_equals(track.track.mode, 'disabled', '&quot;&quot;');
+    track.track.mode = null;
+    assert_equals(track.track.mode, 'disabled', 'null');
+    track.track.mode = undefined;
+    assert_equals(track.track.mode, 'disabled', 'undefined');
+    track.track.mode = 'showing';
+    assert_equals(track.track.mode, 'showing', 'showing (correct value)');
+    track.track.mode = 'DISABLED';
+    assert_equals(track.track.mode, 'showing', '&quot;DISABLED&quot;');
+    track.track.mode = 'd\u0130sabled'; // dotted uppercase i
+    assert_equals(track.track.mode, 'showing', '&quot;d\u0130sabled&quot; (dotted uppercase i)');
+    track.track.mode = 'd\u0131sabled'; // dotless lowercase i
+    assert_equals(track.track.mode, 'showing', '&quot;d\u0131sabled&quot; (dotless lowercase i)');
+    track.track.mode = 'disabled ';
+    assert_equals(track.track.mode, 'showing', '&quot;disabled &quot;');
+    track.track.mode = ' disabled';
+    assert_equals(track.track.mode, 'showing', '&quot; disabled&quot;');
+    track.track.mode = {};
+    assert_equals(track.track.mode, 'showing', '{}');
+    track.track.mode = 'HIDDEN';
+    assert_equals(track.track.mode, 'showing', '&quot;HIDDEN&quot;');
+    track.track.mode = 'h\u0130dden'; // dotted uppercase i
+    assert_equals(track.track.mode, 'showing', '&quot;h\u0130dden&quot; (dotted uppercase i)');
+    track.track.mode = 'h\u0131dden'; // dotless lowercase i
+    assert_equals(track.track.mode, 'showing', '&quot;h\u0131dden&quot; (dotless lowercase i)');
+}, document.title+', wrong value');
+test(function() {
+    var track = document.createElement('track');
+    assert_equals(track.track.mode, 'disabled', 'initial');
+    track.track.mode = 'disabled'; // no-op
+    assert_equals(track.track.mode, 'disabled', 'disabled (1)');
+    track.track.mode = 'hidden';
+    assert_equals(track.track.mode, 'hidden', 'hidden (1)');
+    track.track.mode = 'hidden'; // no-op
+    assert_equals(track.track.mode, 'hidden', 'hidden (2)');
+    track.track.mode = 'showing';
+    assert_equals(track.track.mode, 'showing', 'showing (1)');
+    track.track.mode = 'showing'; // no-op
+    assert_equals(track.track.mode, 'showing', 'showing (2)');
+    track.track.mode = {toString:function() { return 'disabled'; }};
+    assert_equals(track.track.mode, 'disabled', '{toString:...}');
+}, document.title+', correct value');
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackoncuechangeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/oncuechange-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/oncuechange-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/oncuechange-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+PASS TextTrack.oncuechange 
+PASS TextTrack.addEventListener/removeEventListener 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackoncuechangehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/oncuechange.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/oncuechange.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/oncuechange.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,33 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TextTrack.oncuechange&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+setup(function(){
+    window.video = document.createElement('video');
+    window.t1 = video.addTextTrack('subtitles');
+    window.ev = new Event('cuechange');
+    window.ran = false;
+    window.cb = function() { ran = true; };
+});
+test(function(){
+    assert_equals(t1.oncuechange, null);
+    t1.oncuechange = cb;
+    t1.dispatchEvent(ev);
+    assert_true(ran);
+    t1.oncuechange = null;
+    ran = false;
+    t1.dispatchEvent(ev);
+    assert_false(ran);
+});
+test(function(){
+    t1.addEventListener('cuechange', cb, false);
+    t1.dispatchEvent(ev);
+    assert_true(ran);
+    t1.removeEventListener('cuechange', cb, false);
+    ran = false;
+    t1.dispatchEvent(ev);
+    assert_false(ran);
+}, 'TextTrack.addEventListener/removeEventListener');
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackremoveCueexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/removeCue-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/removeCue-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/removeCue-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+CONSOLE MESSAGE: Cross-origin text track load denied by Cross-Origin Resource Sharing policy.
+
+
+PASS TextTrack.removeCue(), two elementless tracks 
+FAIL TextTrack.removeCue(), cue from track element assert_unreached: got error event Reached unreachable code
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackremoveCuehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/removeCue.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/removeCue.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/removeCue.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,50 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TextTrack.removeCue()&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+setup(function(){
+    window.video = document.createElement('video');
+    document.body.appendChild(video);
+}, {timeout:5000});
+test(function() {
+    var t1 = video.addTextTrack('subtitles');
+    var t2 = video.addTextTrack('subtitles');
+    var c1 = new VTTCue(0, 1, 'text1');
+    assert_throws(&quot;NOT_FOUND_ERR&quot;, function() {
+        t1.removeCue(c1);
+    }, 'standalone');
+    t1.addCue(c1);
+    assert_throws(&quot;NOT_FOUND_ERR&quot;, function() {
+        t2.removeCue(c1);
+    }, 'listed in t1, remove from t2');
+    t1.removeCue(c1);
+    assert_throws(&quot;NOT_FOUND_ERR&quot;, function() {
+        t1.removeCue(c1);
+    }, 'standalone, remove from t1');
+    assert_throws(&quot;NOT_FOUND_ERR&quot;, function() {
+        t2.removeCue(c1);
+    }, 'standalone, remove from t2');
+}, document.title+', two elementless tracks');
+var t = async_test(document.title+', cue from track element');
+t.step(function(){
+    var t1 = video.addTextTrack('subtitles');
+    var track = document.createElement('track');
+    track.onload = t.step_func(function(){
+        var cue = track.track.cues[0];
+        assert_throws('NOT_FOUND_ERR', function() { t1.removeCue(cue); }, 'listed in track.track, remove from t1');
+        track.track.removeCue(cue);
+        assert_throws('NOT_FOUND_ERR', function() { track.track.removeCue(cue); }, 'standalone, remove from track.track');
+        assert_throws('NOT_FOUND_ERR', function() { t1.removeCue(cue); }, 'standalone, remove from t1');
+        t.done();
+    });
+    track.onerror = t.step_func(function() {
+      assert_unreached('got error event');
+    });
+    track.src= 'data:text/vtt,'+encodeURIComponent('WEBVTT\n\n00:00:00.000 --&gt; 00:00:01.000\ntest\n');
+    track.kind = 'subtitles';
+    track.track.mode = 'hidden';
+    video.appendChild(track);
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,27 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/activeCues.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/addCue.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/constants.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/cues.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/kind.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/label.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/language.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/mode.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/oncuechange.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrack/removeCue.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueendTimeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/endTime-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/endTime-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/endTime-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+CONSOLE MESSAGE: Cross-origin text track load denied by Cross-Origin Resource Sharing policy.
+
+
+PASS TextTrackCue.endTime, script-created cue 
+FAIL TextTrackCue.endTime, parsed cue assert_unreached: got error event Reached unreachable code
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueendTimehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/endTime.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/endTime.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/endTime.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,39 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TextTrackCue.endTime&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+setup(function(){
+    window.video = document.createElement('video');
+    window.t1 = video.addTextTrack('subtitles');
+    document.body.appendChild(video);
+});
+test(function(){
+    var c1 = new VTTCue(-2, -1, 'text1');
+    assert_equals(c1.endTime, -1);
+    c1.endTime = c1.endTime;
+    assert_equals(c1.endTime, -1);
+    assert_throws(new TypeError(), function(){ c1.endTime = NaN; });
+    assert_throws(new TypeError(), function(){ c1.endTime = +Infinity; });
+    assert_throws(new TypeError(), function(){ c1.endTime = -Infinity; });
+}, document.title+', script-created cue');
+
+var t_parsed = async_test(document.title+', parsed cue');
+t_parsed.step(function(){
+    var t = document.createElement('track');
+    t.onload = this.step_func(function(){
+        var c = t.track.cues;
+        assert_equals(c[0].endTime, 0.001);
+        assert_equals(c[1].endTime, 3600.001);
+        this.done();
+    });
+    t.onerror = this.step_func(function() {
+      assert_unreached('got error event');
+    });
+    t.src = 'data:text/vtt,'+encodeURIComponent('WEBVTT\n\n00:00:00.000 --&gt; 00:00:00.001\ntest'+
+                                                      '\n\nfoobar\n01:00:00.000 --&gt; 01:00:00.001\ntest');
+    t.track.mode = 'showing';
+    video.appendChild(t);
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueidexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/id-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/id-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/id-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+CONSOLE MESSAGE: Cross-origin text track load denied by Cross-Origin Resource Sharing policy.
+
+
+PASS TextTrackCue.id, script-created cue 
+FAIL TextTrackCue.id, parsed cue assert_unreached: got error event Reached unreachable code
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueidhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/id.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/id.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/id.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,39 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TextTrackCue.id&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+setup(function(){
+    window.video = document.createElement('video');
+    window.t1 = video.addTextTrack('subtitles');
+    document.body.appendChild(video);
+});
+test(function(){
+    var c1 = new VTTCue(0, 1, 'text1');
+    c1.id = 'id1\r\n\u0000';
+    assert_equals(c1.id, 'id1\r\n\u0000');
+    c1.id = c1.id;
+    assert_equals(c1.id, 'id1\r\n\u0000');
+    c1.id = null;
+    assert_equals(c1.id, 'null');
+}, document.title+', script-created cue');
+
+var t_parsed = async_test(document.title+', parsed cue');
+t_parsed.step(function(){
+    var t = document.createElement('track');
+    t.onload = this.step_func(function(){
+        var c = t.track.cues;
+        assert_equals(c[0].id, '');
+        assert_equals(c[1].id, 'foobar');
+        this.done();
+    });
+    t.onerror = this.step_func(function() {
+      assert_unreached('got error event');
+    });
+    t.src = 'data:text/vtt,'+encodeURIComponent('WEBVTT\n\n00:00:00.000 --&gt; 00:00:00.001\ntest'+
+                                                      '\n\nfoobar\n00:00:00.000 --&gt; 00:00:00.001\ntest');
+    t.track.mode = 'showing';
+    video.appendChild(t);
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueonenterexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onenter-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onenter-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onenter-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+FAIL TextTrackCue.onenter assert_true: dispatching event expected true got false
+FAIL TextTrackCue.addEventListener/removeEventListener assert_true: expected true got false
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueonenterhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onenter.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onenter.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onenter.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,36 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TextTrackCue.onenter&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+setup(function(){
+    window.c1 = new VTTCue(0, 1, 'text1');
+    window.ev = new Event('enter');
+    window.ran = false;
+    window.cb = function() { ran = true; };
+});
+test(function(){
+    assert_equals(c1.onenter, null, 'initial value');
+    c1.onenter = undefined;
+    assert_equals(c1.onenter, null, 'assigning undefined');
+    c1.onenter = cb;
+    assert_equals(c1.onenter, cb, 'assigning onenter');
+    c1.dispatchEvent(ev);
+    assert_true(ran, 'dispatching event');
+    c1.onenter = null;
+    assert_equals(c1.onenter, null, 'assigning null');
+    ran = false;
+    c1.dispatchEvent(ev);
+    assert_false(ran, 'dispatching event after nulling onenter');
+});
+test(function(){
+    c1.addEventListener('enter', cb, false);
+    c1.dispatchEvent(ev);
+    assert_true(ran);
+    c1.removeEventListener('enter', cb, false);
+    ran = false;
+    c1.dispatchEvent(ev);
+    assert_false(ran);
+}, 'TextTrackCue.addEventListener/removeEventListener');
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueonexitexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onexit-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onexit-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onexit-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+FAIL TextTrackCue.onexit assert_true: dispatching event expected true got false
+FAIL TextTrackCue.addEventListener/removeEventListener assert_true: expected true got false
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueonexithtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onexit.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onexit.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onexit.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,36 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TextTrackCue.onexit&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+setup(function(){
+    window.c1 = new VTTCue(0, 1, 'text1');
+    window.ev = new Event('exit');
+    window.ran = false;
+    window.cb = function() { ran = true; };
+});
+test(function(){
+    assert_equals(c1.onexit, null, 'initial value');
+    c1.onexit = undefined;
+    assert_equals(c1.onexit, null, 'assigning undefined');
+    c1.onexit = cb;
+    assert_equals(c1.onexit, cb, 'assigning onexit');
+    c1.dispatchEvent(ev);
+    assert_true(ran, 'dispatching event');
+    c1.onexit = null;
+    assert_equals(c1.onexit, null, 'assigning null');
+    ran = false;
+    c1.dispatchEvent(ev);
+    assert_false(ran, 'dispatching event after nulling onexit');
+});
+test(function(){
+    c1.addEventListener('exit', cb, false);
+    c1.dispatchEvent(ev);
+    assert_true(ran);
+    c1.removeEventListener('exit', cb, false);
+    ran = false;
+    c1.dispatchEvent(ev);
+    assert_false(ran);
+}, 'TextTrackCue.addEventListener/removeEventListener');
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCuepauseOnExitexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/pauseOnExit-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/pauseOnExit-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/pauseOnExit-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+CONSOLE MESSAGE: Cross-origin text track load denied by Cross-Origin Resource Sharing policy.
+
+
+PASS TextTrackCue.pauseOnExit, script-created cue 
+FAIL TextTrackCue.pauseOnExit, parsed cue assert_unreached: got error event Reached unreachable code
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCuepauseOnExithtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/pauseOnExit.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/pauseOnExit.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/pauseOnExit.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,40 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TextTrackCue.pauseOnExit&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+setup(function(){
+    window.video = document.createElement('video');
+    window.t1 = video.addTextTrack('subtitles');
+    document.body.appendChild(video);
+});
+test(function(){
+    var c1 = new VTTCue(0, 1, 'text1');
+    assert_equals(c1.pauseOnExit, false);
+    c1.pauseOnExit = null;
+    assert_equals(c1.pauseOnExit, false);
+    c1.pauseOnExit = 'foo';
+    assert_equals(c1.pauseOnExit, true);
+}, document.title+', script-created cue');
+
+var t_parsed = async_test(document.title+', parsed cue');
+t_parsed.step(function(){
+    var t = document.createElement('track');
+    t.onload = this.step_func(function(){
+        var c1 = t.track.cues[0];
+        assert_equals(c1.pauseOnExit, false);
+        c1.pauseOnExit = null;
+        assert_equals(c1.pauseOnExit, false);
+        c1.pauseOnExit = 'foo';
+        assert_equals(c1.pauseOnExit, true);
+        this.done();
+    });
+    t.onerror = this.step_func(function() {
+      assert_unreached('got error event');
+    });
+    t.src = 'data:text/vtt,'+encodeURIComponent('WEBVTT\n\n00:00:00.000 --&gt; 00:00:00.001\ntest');
+    t.track.mode = 'showing';
+    video.appendChild(t);
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCuestartTimeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/startTime-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/startTime-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/startTime-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+CONSOLE MESSAGE: Cross-origin text track load denied by Cross-Origin Resource Sharing policy.
+
+
+PASS TextTrackCue.startTime, script-created cue 
+FAIL TextTrackCue.startTime, parsed cue assert_unreached: got error event Reached unreachable code
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCuestartTimehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/startTime.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/startTime.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/startTime.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,39 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TextTrackCue.startTime&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+setup(function(){
+    window.video = document.createElement('video');
+    window.t1 = video.addTextTrack('subtitles');
+    document.body.appendChild(video);
+});
+test(function(){
+    var c1 = new VTTCue(-1, 1, 'text1');
+    assert_equals(c1.startTime, -1);
+    c1.startTime = c1.startTime;
+    assert_equals(c1.startTime, -1);
+    assert_throws(new TypeError(), function(){ c1.startTime = NaN; });
+    assert_throws(new TypeError(), function(){ c1.startTime = +Infinity; });
+    assert_throws(new TypeError(), function(){ c1.startTime = -Infinity; });
+}, document.title+', script-created cue');
+
+var t_parsed = async_test(document.title+', parsed cue');
+t_parsed.step(function(){
+    var t = document.createElement('track');
+    t.onload = this.step_func(function(){
+        var c = t.track.cues;
+        assert_equals(c[0].startTime, 0);
+        assert_equals(c[1].startTime, 3600);
+        this.done();
+    });
+    t.onerror = this.step_func(function() {
+      assert_unreached('got error event');
+    });
+    t.src = 'data:text/vtt,'+encodeURIComponent('WEBVTT\n\n00:00:00.000 --&gt; 00:00:00.001\ntest'+
+                                                      '\n\nfoobar\n01:00:00.000 --&gt; 01:00:00.001\ntest');
+    t.track.mode = 'showing';
+    video.appendChild(t);
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCuetrackexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/track-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/track-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/track-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+CONSOLE MESSAGE: Cross-origin text track load denied by Cross-Origin Resource Sharing policy.
+
+
+PASS TextTrackCue.track, script-created cue 
+FAIL TextTrackCue.track, parsed cue assert_unreached: got error event Reached unreachable code
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCuetrackhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/track.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/track.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/track.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,38 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TextTrackCue.track&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+setup(function(){
+    window.video = document.createElement('video');
+    window.t1 = video.addTextTrack('subtitles');
+    document.body.appendChild(video);
+});
+test(function(){
+    var c1 = new VTTCue(0, 1, 'text1');
+    assert_equals(c1.track, null);
+    t1.addCue(c1);
+    assert_equals(c1.track, t1);
+    t1.removeCue(c1);
+    assert_equals(c1.track, null);
+}, document.title+', script-created cue');
+
+var t_parsed = async_test(document.title+', parsed cue');
+t_parsed.step(function(){
+    var t = document.createElement('track');
+    t.onload = this.step_func(function(){
+        var c = t.track.cues[0];
+        assert_equals(c.track, t.track);
+        t.track.removeCue(c);
+        assert_equals(c.track, null);
+        this.done();
+    });
+    t.onerror = this.step_func(function() {
+      assert_unreached('got error event');
+    });
+    t.src = 'data:text/vtt,'+encodeURIComponent('WEBVTT\n\n00:00:00.000 --&gt; 00:00:00.001\ntest');
+    t.track.mode = 'showing';
+    video.appendChild(t);
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCuew3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,24 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/endTime.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/id.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onenter.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/onexit.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/pauseOnExit.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/startTime.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/track.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueListgetCueByIdexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getCueById-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getCueById-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getCueById-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+
+
+PASS TextTrackCueList.getCueById, no id 
+PASS TextTrackCueList.getCueById, id foo 
+PASS TextTrackCueList.getCueById, no 1 
+PASS TextTrackCueList.getCueById, id a\u0000b 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueListgetCueByIdhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getCueById.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getCueById.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getCueById.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,53 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TextTrackCueList.getCueById&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function(){
+    var video = document.createElement('video');
+    var t = video.addTextTrack('subtitles');
+    document.body.appendChild(video);
+    var cues = t.cues;
+    var c = new VTTCue(0, 1, 'text1');
+    t.addCue(c);
+    assert_equals(cues.getCueById(&quot;&quot;), null, '&quot;&quot;');
+    assert_equals(cues.getCueById(null), null, 'null');
+    assert_equals(cues.getCueById(undefined), null, 'undefined');
+}, document.title+ ', no id');
+test(function(){
+    var video = document.createElement('video');
+    var t = video.addTextTrack('subtitles');
+    document.body.appendChild(video);
+    var cues = t.cues;
+    var c = new VTTCue(0, 1, 'text1');
+    c.id = 'foo';
+    t.addCue(c);
+    assert_equals(cues.getCueById(&quot;&quot;), null, '&quot;&quot;');
+    assert_equals(cues.getCueById(&quot;foo&quot;), c, '&quot;foo&quot;');
+    assert_equals(cues.getCueById({toString:function(){return &quot;foo&quot;}}), c, 'object');
+}, document.title+ ', id foo');
+test(function(){
+    var video = document.createElement('video');
+    var t = video.addTextTrack('subtitles');
+    document.body.appendChild(video);
+    var cues = t.cues;
+    var c = new VTTCue(0, 1, 'text1');
+    c.id = '1';
+    t.addCue(c);
+    assert_equals(cues.getCueById(&quot;&quot;), null, '&quot;&quot;');
+    assert_equals(cues.getCueById(&quot;1&quot;), c, '&quot;1&quot;');
+    assert_equals(cues.getCueById(1), c, '1');
+}, document.title+ ', no 1');
+test(function(){
+    var video = document.createElement('video');
+    var t = video.addTextTrack('subtitles');
+    document.body.appendChild(video);
+    var cues = t.cues;
+    var c = new VTTCue(0, 1, 'text1');
+    c.id = 'a\u0000b';
+    t.addCue(c);
+    assert_equals(cues.getCueById(&quot;a\u0000b&quot;), c, '&quot;a\\u0000b&quot;');
+    assert_equals(cues.getCueById(&quot;a&quot;), null, '&quot;a&quot;');
+}, document.title+ ', id a\\u0000b');
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueListgetterexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getter-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getter-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getter-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+
+
+PASS TextTrackCueList getter 
+FAIL TextTrackCueList getter, no indexed set/create assert_equals: expected (undefined) undefined but got (string) &quot;foo&quot;
+FAIL TextTrackCueList getter, no indexed set/create (strict) assert_equals: expected (undefined) undefined but got (string) &quot;foo&quot;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueListgetterhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getter.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getter.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getter.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,49 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TextTrackCueList getter&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+setup(function(){
+    window.video = document.createElement('video');
+    window.t1 = video.addTextTrack('subtitles');
+    document.body.appendChild(video);
+});
+test(function(){
+    var cues = t1.cues;
+    assert_equals(cues[0], undefined, 'cues[0] before');
+    var c1 = new VTTCue(0, 1, 'text1');
+    t1.addCue(c1);
+    assert_equals(cues[0], c1, 'cues[0]');
+    assert_equals(cues[1], undefined, 'cues[1]');
+    assert_equals(cues[-1], undefined, 'cues[-1]');
+    t1.removeCue(c1);
+    assert_equals(cues[0], undefined, 'cues[0] after');
+});
+test(function(){
+    var cues = t1.cues;
+    assert_equals(cues[0], undefined);
+    cues[0] = 'foo';
+    assert_equals(cues[0], undefined);
+    var c1 = new VTTCue(0, 1, 'text1');
+    t1.addCue(c1);
+    assert_equals(cues[0], c1);
+    cues[0] = 'foo';
+    assert_equals(cues[0], c1);
+    t1.removeCue(c1);
+}, document.title+', no indexed set/create');
+test(function(){
+    'use strict';
+    var cues = t1.cues;
+    assert_equals(cues[0], undefined);
+    assert_throws(new TypeError(), function() { cues[0] = 'foo'; });
+    assert_equals(cues[0], undefined);
+    var c1 = new VTTCue(0, 1, 'text1');
+    t1.addCue(c1);
+    assert_equals(cues[0], c1);
+    assert_throws(new TypeError(), function() { cues[0] = 'foo'; });
+    assert_equals(cues[0], c1);
+    t1.removeCue(c1);
+}, document.title+', no indexed set/create (strict)');
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueListlengthexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/length-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/length-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/length-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+
+PASS TextTrackCueList.length 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueListlengthhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/length.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/length.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/length.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,22 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TextTrackCueList.length&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+setup(function(){
+    window.video = document.createElement('video');
+    window.t1 = video.addTextTrack('subtitles');
+    document.body.appendChild(video);
+});
+test(function(){
+    var cues = t1.cues;
+    assert_equals(cues.length, 0);
+    var c1 = new VTTCue(0, 1, 'text1');
+    t1.addCue(c1);
+    assert_equals(cues.length, 1);
+    t1.removeCue(c1);
+    assert_equals(cues.length, 0);
+});
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackCueListw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,20 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getCueById.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/getter.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/length.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackListgetTrackByIdexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getTrackById-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getTrackById-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getTrackById-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS TextTrackList.getTrackById 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackListgetTrackByIdhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getTrackById.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getTrackById.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getTrackById.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,16 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TextTrackList.getTrackById&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function(){
+    var video = document.createElement('video');
+    var track1 = video.addTextTrack('subtitles');
+    var track2 = video.addTextTrack('subtitles');
+    assert_equals(track1.id, '');
+    assert_equals(track2.id, '');
+    assert_equals(video.textTracks.getTrackById(''), track1);
+    assert_equals(video.textTracks.getTrackById('fake-id'), null);
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackListgetterexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getter-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getter-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getter-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+
+PASS TextTrackList getter 
+PASS TextTrackList getter, no indexed set/create 
+FAIL TextTrackList getter, no indexed set/create (strict) assert_throws: function &quot;function (){ video.textTracks[0] = 'foo'; }&quot; did not throw
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackListgetterhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getter.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getter.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getter.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,32 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TextTrackList getter&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+setup(function(){
+    window.video = document.createElement('video');
+    video.addTextTrack('subtitles', 'b');
+    window.track = document.createElement('track');
+    track.label = 'a';
+    video.appendChild(track);
+    video.addTextTrack('subtitles', 'c');
+});
+test(function(){
+    assert_equals(video.textTracks[0].label, 'a');
+    assert_equals(video.textTracks[1].label, 'b');
+    assert_equals(video.textTracks[2].label, 'c');
+});
+test(function(){
+    var track_before = video.textTracks[0];
+    video.textTracks[0] = 'foo';
+    assert_equals(video.textTracks[0], track_before);
+}, document.title+', no indexed set/create');
+test(function(){
+    'use strict';
+    var track_before = video.textTracks[0];
+    assert_throws(new TypeError(), function(){ video.textTracks[0] = 'foo'; });
+    assert_equals(video.textTracks[0], track_before);
+}, document.title+', no indexed set/create (strict)');
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackListlengthexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/length-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/length-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/length-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS TextTrackList.length 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackListlengthhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/length.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/length.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/length.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TextTrackList.length&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+setup(function(){
+    window.video = document.createElement('video');
+    video.addTextTrack('subtitles');
+    window.track = document.createElement('track');
+    video.appendChild(track);
+    video.addTextTrack('subtitles');
+});
+test(function(){
+    assert_equals(video.textTracks.length, 3);
+});
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackListonaddtrackexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onaddtrack-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onaddtrack-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onaddtrack-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+PASS TextTrackList.onaddtrack 
+PASS TextTrackList.addEventListener/removeEventListener 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackListonaddtrackhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onaddtrack.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onaddtrack.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onaddtrack.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,33 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TextTrackList.onaddtrack&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+setup(function(){
+    window.tracks = document.createElement('video').textTracks;
+    window.ev = new Event('addtrack');
+    window.ran = false;
+    window.cb = function() { ran = true; };
+});
+test(function(){
+    assert_equals(tracks.onaddtrack, null);
+    tracks.onaddtrack = cb;
+    assert_equals(tracks.onaddtrack, cb);
+    tracks.dispatchEvent(ev);
+    assert_true(ran);
+    tracks.onaddtrack = null;
+    ran = false;
+    tracks.dispatchEvent(ev);
+    assert_false(ran);
+});
+test(function(){
+    tracks.addEventListener('addtrack', cb, false);
+    tracks.dispatchEvent(ev);
+    assert_true(ran);
+    tracks.removeEventListener('addtrack', cb, false);
+    ran = false;
+    tracks.dispatchEvent(ev);
+    assert_false(ran);
+}, 'TextTrackList.addEventListener/removeEventListener');
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackListonremovetrackexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onremovetrack-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onremovetrack-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onremovetrack-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+PASS TextTrackList.onremovetrack 
+PASS TextTrackList.addEventListener/removeEventListener 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackListonremovetrackhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onremovetrack.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onremovetrack.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onremovetrack.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,33 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TextTrackList.onremovetrack&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+setup(function(){
+    window.tracks = document.createElement('video').textTracks;
+    window.ev = new Event('removetrack');
+    window.ran = false;
+    window.cb = function() { ran = true; };
+});
+test(function(){
+    assert_equals(tracks.onremovetrack, null);
+    tracks.onremovetrack = cb;
+    assert_equals(tracks.onremovetrack, cb);
+    tracks.dispatchEvent(ev);
+    assert_true(ran);
+    tracks.onremovetrack = null;
+    ran = false;
+    tracks.dispatchEvent(ev);
+    assert_false(ran);
+});
+test(function(){
+    tracks.addEventListener('removetrack', cb, false);
+    tracks.dispatchEvent(ev);
+    assert_true(ran);
+    tracks.removeEventListener('removetrack', cb, false);
+    ran = false;
+    tracks.dispatchEvent(ev);
+    assert_false(ran);
+}, 'TextTrackList.addEventListener/removeEventListener');
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTextTrackListw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,22 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getTrackById.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/getter.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/length.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onaddtrack.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/onremovetrack.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTrackEventconstructorexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/constructor-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/constructor-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/constructor-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+PASS TrackEvent constructor, one arg 
+FAIL TrackEvent constructor, two args assert_equals: ev.track expected object &quot;[object Object]&quot; but got null
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTrackEventconstructorhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/constructor.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/constructor.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/constructor.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,24 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TrackEvent constructor&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function(){
+    var ev = new TrackEvent('foo');
+    assert_true(ev instanceof TrackEvent, 'ev instanceof TrackEvent');
+    assert_true(ev instanceof Event, 'ev instanceof Event');
+    assert_equals(ev.track, null, 'ev.track');
+    ev.track = {};
+    assert_equals(ev.track, null, 'ev.track after assignment');
+}, document.title+', one arg');
+test(function(){
+    var obj = {};
+    var ev = new TrackEvent('foo', {track:obj});
+    assert_true(ev instanceof TrackEvent, 'ev instanceof TrackEvent');
+    assert_true(ev instanceof Event, 'ev instanceof Event');
+    assert_equals(ev.track, obj, 'ev.track');
+    ev.track = {};
+    assert_equals(ev.track, obj, 'ev.track after assignment');
+}, document.title+', two args');
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTrackEventcreateEventexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/createEvent-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/createEvent-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/createEvent-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+FAIL TrackEvent created with createEvent assert_throws: function &quot;function () {
+        var ev = document.createEvent('Trac...&quot; did not throw
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTrackEventcreateEventhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/createEvent.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/createEvent.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/createEvent.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,15 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;TrackEvent created with createEvent&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function(){
+    // https://www.w3.org/Bugs/Public/show_bug.cgi?id=17268
+    assert_throws('NOT_SUPPORTED_ERR', function() {
+        var ev = document.createEvent('TrackEvent');
+    });
+    var ev = new TrackEvent('foo');
+    assert_false('initTrackEvent' in ev, 'initTrackEvent');
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsinterfacesTrackEventw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/constructor.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/createEvent.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceloadeventsnetworkStateexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-events-networkState-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-events-networkState-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-events-networkState-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+
+PASS NETWORK_IDLE 
+PASS NETWORK_LOADING 
+PASS NETWORK_NO_SOURCE 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceloadeventsnetworkStatehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-events-networkState.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-events-networkState.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-events-networkState.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,67 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;load() fires abort/emptied events when networkState is not NETWORK_EMPTY&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+function load_test(t, v) {
+  assert_not_equals(v.networkState, v.NETWORK_EMPTY);
+
+  var expected_events = [];
+  if (v.networkState == v.NETWORK_LOADING || v.networkState == v.NETWORK_IDLE) {
+    expected_events.push('abort');
+  }
+  if (v.networkState != v.NETWORK_EMPTY) {
+    expected_events.push('emptied');
+  }
+
+  var actual_events = [];
+  v.onabort = v.onemptied = t.step_func(function(e) {
+    actual_events.push(e.type);
+  });
+
+  v.onloadstart = t.step_func(function() {
+    assert_array_equals(actual_events, expected_events);
+    t.done();
+  });
+
+  v.load();
+
+  assert_array_equals(actual_events, [], 'events should be fired in queued tasks');
+}
+
+async_test(function(t) {
+  var v = document.createElement('video');
+  // suspend is fired optionally &quot;if the user agent intends to not attempt to
+  // fetch the resource&quot; or &quot;once the entire media resource has been fetched&quot;
+  v.preload = 'none';
+  v.src = getAudioURI('/w3c/resources/media/sound_5');
+  v.onsuspend = t.step_func(function() {
+    v.onsuspend = null;
+    assert_equals(v.networkState, v.NETWORK_IDLE);
+    load_test(t, v);
+  });
+}, 'NETWORK_IDLE');
+
+async_test(function(t) {
+  var v = document.createElement('video');
+  v.src = 'resources/delayed-broken-video.py';
+  v.onloadstart = t.step_func(function() {
+    v.onloadstart = null;
+    assert_equals(v.networkState, v.NETWORK_LOADING);
+    load_test(t, v);
+  });
+}, 'NETWORK_LOADING');
+
+async_test(function(t) {
+  var v = document.createElement('video');
+  v.src = 'data:,';
+  v.onerror = t.step_func(function() {
+    v.onerror = null;
+    assert_equals(v.networkState, v.NETWORK_NO_SOURCE);
+    load_test(t, v);
+  });
+  assert_equals(v.networkState, v.NETWORK_NO_SOURCE);
+}, 'NETWORK_NO_SOURCE');
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceloadremovesqueuederroreventexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-removes-queued-error-event-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-removes-queued-error-event-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-removes-queued-error-event-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+PASS video error event 
+PASS source error event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceloadremovesqueuederroreventhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-removes-queued-error-event.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-removes-queued-error-event.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-removes-queued-error-event.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,44 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;load() removes queued error event&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+// The loadstart and error event firing tasks are queued in the synchronous
+// section of the resource selection algorithm, so no tasks can come between
+// them. Calling load() in the loadstart event handler removes the queued error
+// event task at very latest opportunity, failing any implementation that fires
+// the events in the same task.
+
+async_test(function(t) {
+  var v = document.createElement('video');
+  var events = [];
+  v.onloadstart = v.onerror = t.step_func(function(e) {
+    events.push(e.type);
+    if (events.length == 1) {
+      v.load();
+    } else if (events.length == 3) {
+      assert_array_equals(events, ['loadstart', 'loadstart', 'error']);
+      t.done();
+    }
+  });
+  v.src = '';
+}, 'video error event');
+
+async_test(function(t) {
+  var v = document.createElement('video');
+  var s = document.createElement('source');
+  var events = [];
+  v.onloadstart = s.onerror = t.step_func(function(e) {
+    events.push(e.type);
+    if (events.length == 1) {
+      v.load();
+    } else if (events.length == 3) {
+      assert_array_equals(events, ['loadstart', 'loadstart', 'error']);
+      t.done();
+    }
+  });
+  v.onerror = t.step_func(function() { assert_unreached(); });
+  v.appendChild(s);
+}, 'source error event');
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioncandidatemovedexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-moved-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-moved-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-moved-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+FAIL moving the candidate source assert_unreached: Reached unreachable code
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioncandidatemovedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-moved.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-moved.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-moved.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,21 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;moving the candidate source&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+var s;
+var t = async_test(function(t) {
+  var v = document.createElement('video');
+  s = document.createElement('source');
+  s.src = 'resources/delayed-broken-video.py';
+  s.onerror = t.step_func(function() { t.done(); });
+  v.appendChild(s); // invokes resource selection
+  onload = t.step_func(function() { assert_unreached(); });
+});
+&lt;/script&gt;
+&lt;script&gt;
+t.step(function() {
+  document.body.appendChild(s);
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioncandidateremovenolistenerexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-no-listener-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-no-listener-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-no-listener-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS removing the candidate source, no listener 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioncandidateremovenolistenerhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-no-listener.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-no-listener.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-no-listener.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,26 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;removing the candidate source, no listener&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+var v;
+function createSource(src) {
+  var source = document.createElement('source');
+  source.src = src;
+  return source;
+}
+var t = async_test(function(t) {
+  v = document.createElement('video');
+  v.appendChild(createSource('resources/delayed-broken-video.py')); // invokes resource selection
+});
+&lt;/script&gt;
+&lt;!--  now resource selection algorithm will continue its sync section (the &lt;/script&gt; tag below provides a stable state)  --&gt;
+&lt;!--  the &lt;source&gt; is candidate  --&gt;
+&lt;!--  pointer is between the &lt;source&gt; and the end of the list  --&gt;
+&lt;script&gt;
+t.step(function() {
+  v.removeChild(v.firstChild); // just tests that we don't crash
+  onload = t.step_func(function() { t.done(); });
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeaudioconstructornosrcexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-audio-constructor-no-src-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-audio-constructor-no-src-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-audio-constructor-no-src-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS NOT invoking resource selection with new Audio() sans src 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeaudioconstructornosrchtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-audio-constructor-no-src.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-audio-constructor-no-src.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-audio-constructor-no-src.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,13 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;NOT invoking resource selection with new Audio() sans src&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+async_test(function(t) {
+  var a = new Audio();
+  assert_equals(a.networkState, a.NETWORK_EMPTY);
+  a.onloadstart = t.step_func(function() { assert_unreached(); });
+  window.onload = t.step_func(function() { t.done(); });
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsynceventexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-in-sync-event-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-in-sync-event-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-in-sync-event-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+
+FAIL await a stable state and sync event handlers assert_equals: networkState in separate script expected 0 but got 3
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsynceventhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-in-sync-event.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-in-sync-event.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-in-sync-event.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,32 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;await a stable state and sync event handlers&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;video&gt;&lt;/video&gt;
+&lt;script&gt;
+var v;
+var t = async_test(function(t) {
+  v = document.querySelector('video');
+  var a = document.createElement('a');
+  a.onclick = t.step_func(function() {
+    v.setAttribute('src', '#'); // invokes media load which invokes resource selection
+    assert_equals(v.networkState, v.NETWORK_NO_SOURCE, 'networkState in onclick handler');
+  });
+  a.click(); // sync fires click, so sets src
+  // now we should still await a stable state because the script hasn't
+  // finished, the event handler has just returned
+  assert_equals(v.networkState, v.NETWORK_NO_SOURCE, 'networkState after click()');
+  v.removeAttribute('src');
+});
+&lt;/script&gt;
+&lt;script&gt;
+t.step(function() {
+  // now the sync section of resource selection should have run and should
+  // have found no src=&quot;&quot; or &lt;source&gt; thus networkState being set to NETWORK_EMPTY.
+  // if the sync section was run when onclick returned, then networkState
+  // would be either NETWORK_LOADING or NETWORK_NO_SOURCE.
+  assert_equals(v.networkState, v.NETWORK_EMPTY, 'networkState in separate script');
+  t.done();
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertfragmentintodocumentexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-fragment-into-document-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-fragment-into-document-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-fragment-into-document-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+
+PASS NOT invoking resource selection by inserting document fragment into a document 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertfragmentintodocumenthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-fragment-into-document.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-fragment-into-document.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-fragment-into-document.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,22 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;NOT invoking resource selection by inserting document fragment into a document&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+var v;
+var t = async_test(function(t) {
+  v = document.createElement('video');
+  var fragment = document.createDocumentFragment();
+  fragment.appendChild(v);
+  assert_equals(v.networkState, v.NETWORK_EMPTY, 'networkState after fragment.appendChild(v)');
+  document.body.appendChild(fragment);
+  assert_equals(v.networkState, v.NETWORK_EMPTY, 'networkState after document.body.appendChild(fragment)');
+});
+&lt;/script&gt;
+&lt;script&gt;
+t.step(function() {
+  assert_equals(v.networkState, v.NETWORK_EMPTY, 'networkState in separate script');
+  t.done();
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertintodocumentexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-document-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-document-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-document-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+
+PASS NOT invoking resource selection by inserting into a document 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertintodocumenthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-document.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-document.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-document.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,12 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;NOT invoking resource selection by inserting into a document&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function(t) {
+  var v = document.createElement('video');
+  document.body.appendChild(v);
+  assert_equals(v.networkState, v.NETWORK_EMPTY);
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertintoiframehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-iframe.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-iframe.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-iframe.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,23 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;NOT invoking resource selection by inserting into other document with src set&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;iframe hidden&gt;&lt;/iframe&gt;
+&lt;script&gt;
+async_test(function(t) {
+  var v = document.createElement('video');
+  v.src = 'data:,';
+  v.onerror = t.step_func(function() {
+    assert_equals(v.readyState, v.HAVE_NOTHING);
+    assert_equals(v.networkState, v.NETWORK_NO_SOURCE);
+    var iframe = document.querySelector('iframe');
+    iframe.contentDocument.body.appendChild(v);
+    v.onloadstart = t.step_func(function() { assert_unreached(); });
+    // wait for an event after the above
+    var v2 = document.createElement('video');
+    v2.src = 'data:,';
+    v2.onloadstart = t.step_func(function() { t.done(); });
+  });
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertparentintodocumentexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-parent-into-document-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-parent-into-document-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-parent-into-document-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+
+PASS NOT invoking resource selection by inserting parent into a document 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertparentintodocumenthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-parent-into-document.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-parent-into-document.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-parent-into-document.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;NOT invoking resource selection by inserting parent into a document&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+async_test(function(t) {
+  var v = document.createElement('video');
+  var div = document.createElement('div');
+  div.appendChild(v);
+  assert_equals(v.networkState, v.NETWORK_EMPTY, 'networkState after div.appendChild(v)');
+  document.body.appendChild(div);
+  assert_equals(v.networkState, v.NETWORK_EMPTY, 'networkState after document.body.appendChild(div)');
+  window.onload = t.step_func(function() {
+    assert_equals(v.networkState, v.NETWORK_EMPTY, 'networkState in window.onload');
+    t.done();
+  });
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertsourceexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+
+PASS invoking resource selection by inserting &lt;source&gt; 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertsourceindivexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-div-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-div-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-div-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+
+PASS NOT invoking resource selection by inserting &lt;source&gt; in &lt;div&gt; in &lt;video&gt; 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertsourceindivhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-div.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-div.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-div.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,14 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;NOT invoking resource selection by inserting &amp;lt;source&gt; in &amp;lt;div&gt; in &amp;lt;video&gt;&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;video&gt;&lt;div&gt;&lt;/div&gt;&lt;/video&gt;
+&lt;script&gt;
+async_test(function(t) {
+  var v = document.querySelector('video');
+  v.onloadstart = t.step_func(function() { assert_unreached(); });
+  v.firstChild.appendChild(document.createElement('source'));
+  window.onload = t.step_func(function() { t.done(); });
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertsourceinnamespaceexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-namespace-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-namespace-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-namespace-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+
+PASS NOT invoking resource selection by inserting &lt;source&gt; in the wrong namespace 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertsourceinnamespacehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-namespace.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-namespace.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-namespace.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,14 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;NOT invoking resource selection by inserting &amp;lt;source&gt; in the wrong namespace&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;video&gt;&lt;/video&gt;
+&lt;script&gt;
+async_test(function(t) {
+  var v = document.querySelector('video');
+  v.onloadstart = t.step_func(function() { assert_unreached(); });
+  v.appendChild(document.createElementNS('bogus','source'));
+  window.onload = t.step_func(function() { t.done(); });
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertsourcenetworkStateexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-networkState-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-networkState-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-networkState-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+FAIL NOT invoking resource selection by inserting &lt;source&gt; when networkState is not NETWORK_EMPTY assert_equals: networkState in second script expected 2 but got 3
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertsourcenetworkStatehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-networkState.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-networkState.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-networkState.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,38 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;NOT invoking resource selection by inserting &amp;lt;source&gt; when networkState is not NETWORK_EMPTY&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+var loadstartCount = 0;
+var s1ErrorCount = 0;
+var s2ErrorCount = 0;
+var v;
+var t = async_test(function(t) {
+  v = document.createElement('video');
+  v.onloadstart = function() { loadstartCount++; };
+  var s1 = document.createElement('source');
+  s1.src = 'resources/delayed-broken-video.py';
+  s1.onerror = function() { s1ErrorCount++; };
+  v.appendChild(s1); // invokes resource selection
+  assert_equals(v.networkState, v.NETWORK_NO_SOURCE, 'networkState in first script');
+});
+&lt;/script&gt;
+&lt;script&gt;
+t.step(function() {
+  assert_equals(v.networkState, v.NETWORK_LOADING, 'networkState in second script');
+  assert_equals(s1ErrorCount, 0, 's1ErrorCount in second script');
+  var s2 = document.createElement('source');
+  s2.onerror = t.step_func(function() {
+    s2ErrorCount++;
+    assert_equals(s1ErrorCount, 1, 's1ErrorCount in s2.onerror');
+  });
+  v.appendChild(s2);
+  onload = t.step_func(function() {
+    assert_equals(s2ErrorCount, 1, 's2ErrorCount in window.onload');
+    assert_equals(loadstartCount, 1, 'loadstartCount in window.onload'); // reliable if https://www.w3.org/Bugs/Public/show_bug.cgi?id=24353 is fixed
+    assert_equals(v.networkState, v.NETWORK_NO_SOURCE, 'networkState in window.onload'); // See Waiting step
+    t.done();
+  });
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeinsertsourcehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,14 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;invoking resource selection by inserting &amp;lt;source&gt;&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;video&gt;&lt;/video&gt;
+&lt;script&gt;
+async_test(function(t) {
+  var v = document.querySelector('video');
+  v.onloadstart = t.step_func(function() { t.done(); });
+  v.appendChild(document.createElement('source'));
+  window.onload = t.step_func(function() { assert_unreached(); });
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeloadexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-load-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-load-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-load-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+FAIL invoking resource selection with load() assert_equals: networkState after v.load() expected 3 but got 0
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeloadhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-load.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-load.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-load.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,20 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;invoking resource selection with load()&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+var v;
+var t = async_test(function(t) {
+  v = document.createElement('video');
+  assert_equals(v.networkState, v.NETWORK_EMPTY, 'networkState after creating v');
+  v.load();
+  assert_equals(v.networkState, v.NETWORK_NO_SOURCE, 'networkState after v.load()');
+});
+&lt;/script&gt;
+&lt;script&gt;
+t.step(function() {
+  assert_equals(v.networkState, v.NETWORK_EMPTY, 'networkState in separate script');
+  t.done();
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokepauseexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+FAIL invoking resource selection with pause() assert_equals: networkState in separate script expected 0 but got 3
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokepausenetworkStateexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause-networkState-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause-networkState-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause-networkState-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+
+PASS NOT invoking resource selection with pause() when networkState is not NETWORK_EMPTY 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokepausenetworkStatehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause-networkState.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause-networkState.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause-networkState.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;NOT invoking resource selection with pause() when networkState is not NETWORK_EMPTY&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;video&gt;&lt;/video&gt;
+&lt;script&gt;
+var v;
+var t = async_test(function(t) {
+  v = document.querySelector('video');
+  v.src = 'data:,';
+  assert_equals(v.networkState, v.NETWORK_NO_SOURCE, 'networkState after setting src');
+  var errorCount = 0;
+  v.onerror = t.step_func(function() {
+    errorCount++;
+    if (errorCount == 1) {
+      assert_equals(v.networkState, v.NETWORK_NO_SOURCE, 'networkState in onerror');
+      v.pause(); // should not invoke RSA. if it does, error will be fired again.
+    } else {
+      assert_unreached();
+    }
+  });
+  onload = t.step_func(function() {
+    assert_equals(errorCount, 1, 'errorCount');
+    t.done();
+  });
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokepausehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,20 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;invoking resource selection with pause()&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+var v;
+var t = async_test(function(t) {
+  v = document.createElement('video');
+  assert_equals(v.networkState, v.NETWORK_EMPTY, 'networkState after creating v');
+  v.pause();
+  assert_equals(v.networkState, v.NETWORK_NO_SOURCE, 'networkState after v.pause()');
+});
+&lt;/script&gt;
+&lt;script&gt;
+t.step(function() {
+  assert_equals(v.networkState, v.NETWORK_EMPTY, 'networkState in separate script');
+  t.done();
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeplayexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-play-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-play-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-play-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+FAIL invoking resource selection with play() assert_equals: networkState in separate script expected 0 but got 3
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeplayhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-play.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-play.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-play.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,20 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;invoking resource selection with play()&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+var v;
+var t = async_test(function(t) {
+  v = document.createElement('video');
+  assert_equals(v.networkState, v.NETWORK_EMPTY, 'networkState after creating v');
+  v.play();
+  assert_equals(v.networkState, v.NETWORK_NO_SOURCE, 'networkState after v.play()');
+});
+&lt;/script&gt;
+&lt;script&gt;
+t.step(function() {
+  assert_equals(v.networkState, v.NETWORK_EMPTY, 'networkState in separate script');
+  t.done();
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeremovefromdocumentexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS NOT invoking resource selection by removing from document with NETWORK_EMPTY 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeremovefromdocumentnetworkStateexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document-networkState-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document-networkState-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document-networkState-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS NOT invoking resource selection with implicit pause() when networkState is not NETWORK_EMPTY 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeremovefromdocumentnetworkStatehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document-networkState.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document-networkState.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document-networkState.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,29 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;NOT invoking resource selection with implicit pause() when networkState is not NETWORK_EMPTY&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;video&gt;&lt;/video&gt;
+&lt;script&gt;
+var v;
+var t = async_test(function(t) {
+  v = document.querySelector('video');
+  v.src = 'data:,';
+  document.body.appendChild(v);
+  assert_equals(v.networkState, v.NETWORK_NO_SOURCE, 'networkState after setting src');
+  var errorCount = 0;
+  v.onerror = t.step_func(function() {
+    errorCount++;
+    if (errorCount == 1) {
+      assert_equals(v.networkState, v.NETWORK_NO_SOURCE, 'networkState in onerror');
+      document.body.removeChild(v); // invokes pause() which should not invoke RSA. if it does, error will be fired again.
+    } else {
+      assert_unreached();
+    }
+  });
+  onload = t.step_func(function() {
+    assert_equals(errorCount, 1, 'errorCount');
+    t.done();
+  });
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeremovefromdocumenthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,21 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;NOT invoking resource selection by removing from document with NETWORK_EMPTY&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+var v;
+var t = async_test(function(t) {
+  v = document.createElement('video');
+  document.body.appendChild(v);
+  assert_equals(v.networkState, v.NETWORK_EMPTY, 'networkState after appending v to document');
+  v.parentNode.removeChild(v); // search for &quot;When a media element is removed from a Document,&quot;
+  assert_equals(v.networkState, v.NETWORK_EMPTY, 'networkState after removing v');
+});
+&lt;/script&gt;
+&lt;script&gt;
+t.step(function() {
+  assert_equals(v.networkState, v.NETWORK_EMPTY, 'networkState in separate script');
+  t.done();
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeremovesrcexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-src-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-src-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-src-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+FAIL NOT invoking media load or resource selection when removing the src attribute assert_unreached: Reached unreachable code
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokeremovesrchtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-src.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-src.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-src.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,22 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;NOT invoking media load or resource selection when removing the src attribute&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+var v;
+var t = async_test(function(t) {
+  v = document.createElement('video');
+  v.setAttribute('src', ''); // invokes media load
+  assert_equals(v.networkState, v.NETWORK_NO_SOURCE, 'networkState after setting src');
+  var s = document.createElement('source');
+  s.onerror = this.step_func(function() { assert_unreached(); });
+  v.appendChild(s); // src is present so nothing happens here
+  onload = this.step_func(function() { t.done(); });
+});
+&lt;/script&gt;
+&lt;script&gt;
+t.step(function() {
+  v.removeAttribute('src'); // nothing should happen
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokesetsrcexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+
+PASS invoking load by setting src 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokesetsrcinnamespaceexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-in-namespace-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-in-namespace-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-in-namespace-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+
+PASS NOT invoking load by setting src in the wrong namespace 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokesetsrcinnamespacehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-in-namespace.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-in-namespace.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-in-namespace.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,14 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;NOT invoking load by setting src in the wrong namespace&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;video&gt;&lt;/video&gt;
+&lt;script&gt;
+async_test(function(t) {
+  var v = document.querySelector('video');
+  v.onloadstart = t.step_func(function() { assert_unreached(); });
+  v.setAttributeNS('bogus','src', '');
+  window.onload = t.step_func(function() { t.done(); });
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokesetsrcnetworkStateexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-networkState-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-networkState-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-networkState-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS invoking load by setting src when networkState is not NETWORK_EMPTY 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokesetsrcnetworkStatehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-networkState.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-networkState.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-networkState.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,16 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;invoking load by setting src when networkState is not NETWORK_EMPTY&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function(t) {
+  var v = document.createElement('video');
+  v.play(); // invokes resource selection and sets .paused to false
+  assert_equals(v.networkState, v.NETWORK_NO_SOURCE, 'networkState');
+  assert_false(v.paused, 'paused');
+  v.setAttribute('src', ''); // invokes media load which sets .paused to true
+  assert_equals(v.networkState, v.NETWORK_NO_SOURCE, 'networkState after setting src');
+  assert_true(v.paused, 'paused after setting src');
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokesetsrcnotindocumentexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-not-in-document-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-not-in-document-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-not-in-document-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS invoking load by setting src on video not in a document 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokesetsrcnotindocumenthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-not-in-document.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-not-in-document.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-not-in-document.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,13 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;invoking load by setting src on video not in a document&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+async_test(function(t) {
+  var v = document.createElement('video');
+  v.onloadstart = t.step_func(function() { t.done(); });
+  v.setAttribute('src','');
+  window.onload = t.step_func(function() { assert_unreached(); });
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectioninvokesetsrchtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,14 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;invoking load by setting src&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;video&gt;&lt;/video&gt;
+&lt;script&gt;
+async_test(function(t) {
+  var v = document.querySelector('video');
+  v.onloadstart = t.step_func(function() { t.done(); });
+  v.setAttribute('src', '');
+  window.onload = t.step_func(function() { assert_unreached(); });
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointercontrolexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-control-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-control-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-control-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+
+FAIL pointer updates (control test) assert_equals: error events on c expected 1 but got 0
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointercontrolhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-control.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-control.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-control.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,25 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;pointer updates (control test)&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+var a = 0;
+var b = 0;
+var c = 0;
+&lt;/script&gt;
+&lt;video
+ &gt;&lt;source onerror=a++
+ &gt;&lt;source onerror=b++ src='resources/delayed-broken-video.py'
+ &gt;&lt;source onerror=c++
+ &gt;&lt;/video&gt;
+&lt;script&gt;
+async_test(function(t) {
+  window.onload = t.step_func(function() {
+    assert_equals(a, 1, 'error events on a');
+    assert_equals(b, 1, 'error events on b');
+    assert_equals(c, 1, 'error events on c');
+    t.done();
+  });
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointerinsertbrexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-br-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-br-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-br-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+
+FAIL pointer updates (adding br elements) assert_equals: error events on c expected 1 but got 0
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointerinsertbrhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-br.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-br.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-br.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,32 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;pointer updates (adding br elements)&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+var a = 0;
+var b = 0;
+var c = 0;
+&lt;/script&gt;
+&lt;video
+ &gt;&lt;source onerror=a++
+ &gt;&lt;source onerror=b++ src='resources/delayed-broken-video.py'
+ &gt;&lt;source onerror=c++
+ &gt;&lt;/video&gt;
+&lt;script&gt;
+async_test(function(t) {
+  var video = document.querySelector('video');
+  // add br elements
+  var br = document.createElement('br');
+  video.insertBefore(br, video.querySelector('[onerror=&quot;a++&quot;]'));
+  video.insertBefore(br.cloneNode(false), video.querySelector('[onerror=&quot;b++&quot;]'));
+  video.insertBefore(br.cloneNode(false), video.querySelector('[onerror=&quot;c++&quot;]'));
+  video.appendChild(br.cloneNode(false));
+  window.onload = t.step_func(function() {
+    assert_equals(a, 1, 'error events on a');
+    assert_equals(b, 1, 'error events on b');
+    assert_equals(c, 1, 'error events on c');
+    t.done();
+  });
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointerinsertsourceexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-source-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-source-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-source-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+
+FAIL pointer updates (adding source elements) assert_equals: error events on c expected 1 but got 0
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointerinsertsourcehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-source.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-source.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-source.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,43 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;pointer updates (adding source elements)&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+var a = 0;
+var b = 0;
+var c = 0;
+var x1 = 0;
+var x2 = 0;
+var x3 = 0;
+var x4 = 0;
+&lt;/script&gt;
+&lt;video
+ &gt;&lt;source onerror=a++
+ &gt;&lt;source onerror=b++ src='resources/delayed-broken-video.py'
+ &gt;&lt;source onerror=c++
+ &gt;&lt;/video&gt;
+&lt;script&gt;
+async_test(function(t) {
+  var video = document.querySelector('video');
+  // add source elements
+  var source1 = document.createElement('source'); source1.onerror = function() { x1++; };
+  var source2 = document.createElement('source'); source2.onerror = function() { x2++; };
+  var source3 = document.createElement('source'); source3.onerror = function() { x3++; };
+  var source4 = document.createElement('source'); source4.onerror = function() { x4++; };
+  video.insertBefore(source1, video.querySelector('[onerror=&quot;a++&quot;]'));
+  video.insertBefore(source2, video.querySelector('[onerror=&quot;b++&quot;]'));
+  video.insertBefore(source3, video.querySelector('[onerror=&quot;c++&quot;]'));
+  video.appendChild(source4);
+  window.onload = t.step_func(function() {
+    assert_equals(a, 1, 'error events on a');
+    assert_equals(b, 1, 'error events on b');
+    assert_equals(c, 1, 'error events on c');
+    assert_equals(x1, 0, 'error events on x1');
+    assert_equals(x2, 0, 'error events on x2');
+    assert_equals(x3, 1, 'error events on x3');
+    assert_equals(x4, 1, 'error events on x4');
+    t.done();
+  });
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointerinserttextexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-text-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-text-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-text-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+
+FAIL pointer updates (adding text nodes) assert_equals: error events on c expected 1 but got 0
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointerinserttexthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-text.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-text.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-text.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,32 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;pointer updates (adding text nodes)&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+var a = 0;
+var b = 0;
+var c = 0;
+&lt;/script&gt;
+&lt;video
+ &gt;&lt;source onerror=a++
+ &gt;&lt;source onerror=b++ src='resources/delayed-broken-video.py'
+ &gt;&lt;source onerror=c++
+ &gt;&lt;/video&gt;
+&lt;script&gt;
+async_test(function(t) {
+  var video = document.querySelector('video');
+  // add text nodes
+  var text = document.createTextNode('x');
+  video.insertBefore(text, video.querySelector('[onerror=&quot;a++&quot;]'));
+  video.insertBefore(text.cloneNode(false), video.querySelector('[onerror=&quot;b++&quot;]'));
+  video.insertBefore(text.cloneNode(false), video.querySelector('[onerror=&quot;c++&quot;]'));
+  video.appendChild(text.cloneNode(false));
+  window.onload = t.step_func(function() {
+    assert_equals(a, 1, 'error events on a');
+    assert_equals(b, 1, 'error events on b');
+    assert_equals(c, 1, 'error events on c');
+    t.done();
+  });
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointerremovesourceafterexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source-after-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source-after-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source-after-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+
+FAIL pointer updates (removing source element after pointer) assert_equals: error events on c expected 1 but got 0
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointerremovesourceafterhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source-after.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source-after.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source-after.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,55 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;pointer updates (removing source element after pointer)&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+var a = 0;
+var b = 0;
+var c = 0;
+var x1 = 0;
+var x2 = 0;
+var x3 = 0;
+var x4 = 0;
+&lt;/script&gt;
+&lt;video
+ &gt;&lt;source onerror=a++
+ &gt;&lt;source onerror=b++ src='resources/delayed-broken-video.py'
+ &gt;&lt;source onerror=x1++
+ &gt;&lt;source onerror=x2++
+ &gt;&lt;source onerror=x3++
+ &gt;&lt;source onerror=x4++
+ &gt;&lt;source onerror=c++
+ &gt;&lt;/video&gt;
+&lt;script&gt;
+var v;
+var t = async_test(function(t) {
+  v = document.querySelector('video');
+  v.removeChild(document.querySelector('[onerror=&quot;x1++&quot;]'));
+  window.onload = t.step_func(function() {
+    assert_equals(a, 1, 'error events on a');
+    assert_equals(b, 1, 'error events on b');
+    assert_equals(c, 1, 'error events on c');
+    assert_equals(x1, 0, 'error events on x1');
+    assert_equals(x2, 0, 'error events on x2');
+    assert_equals(x3, 0, 'error events on x3');
+    assert_equals(x4, 0, 'error events on x4');
+    t.done();
+  });
+});
+&lt;/script&gt;
+&lt;script&gt;
+t.step(function() {
+  v.removeChild(document.querySelector('[onerror=&quot;x2++&quot;]'));
+});
+&lt;/script&gt;
+&lt;script&gt;
+t.step(function() {
+  v.removeChild(document.querySelector('[onerror=&quot;x3++&quot;]'));
+});
+&lt;/script&gt;
+&lt;script&gt;
+t.step(function() {
+  v.removeChild(document.querySelector('[onerror=&quot;x4++&quot;]'));
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointerremovesourceexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+
+FAIL pointer updates (removing source elements) assert_equals: error events on c expected 1 but got 0
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointerremovesourcehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,42 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;pointer updates (removing source elements)&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+var a = 0;
+var b = 0;
+var c = 0;
+var x1 = 0;
+var x2 = 0;
+var x3 = 0;
+var x4 = 0;
+&lt;/script&gt;
+&lt;video
+ &gt;&lt;source onerror=x1++
+ &gt;&lt;source onerror=a++
+ &gt;&lt;source onerror=x2++
+ &gt;&lt;source onerror=b++ src='resources/delayed-broken-video.py'
+ &gt;&lt;source onerror=x3++
+ &gt;&lt;source onerror=c++
+ &gt;&lt;source onerror=x4++
+ &gt;&lt;/video&gt;
+&lt;script&gt;
+async_test(function(t) {
+  var video = document.querySelector('video');
+  // remove the xn elements
+  [].forEach.call(document.querySelectorAll('[onerror^=&quot;x&quot;]'), function(elm) {
+    video.removeChild(elm);
+  });
+  window.onload = t.step_func(function() {
+    assert_equals(a, 1, 'error events on a');
+    assert_equals(b, 1, 'error events on b');
+    assert_equals(c, 1, 'error events on c');
+    assert_equals(x1, 1, 'error events on x1');
+    assert_equals(x2, 1, 'error events on x2');
+    assert_equals(x3, 0, 'error events on x3');
+    assert_equals(x4, 0, 'error events on x4');
+    t.done();
+  });
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointerremovetextexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-text-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-text-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-text-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+
+FAIL pointer updates (removing text nodes) assert_equals: error events on c expected 1 but got 0
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionpointerremovetexthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-text.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-text.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-text.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,32 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;pointer updates (removing text nodes)&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+var a = 0;
+var b = 0;
+var c = 0;
+&lt;/script&gt;
+&lt;video
+ &gt;x&lt;source onerror=a++
+ &gt;x&lt;source onerror=b++ src='resources/delayed-broken-video.py'
+ &gt;x&lt;source onerror=c++
+ &gt;x&lt;/video&gt;
+&lt;script&gt;
+async_test(function(t) {
+  var video = document.querySelector('video');
+  // remove the text nodes
+  [].forEach.call(video.childNodes, function(node) {
+    if (node.nodeType == node.TEXT_NODE) {
+      video.removeChild(node);
+    }
+  });
+  window.onload = t.step_func(function() {
+    assert_equals(a, 1, 'error events on a');
+    assert_equals(b, 1, 'error events on b');
+    assert_equals(c, 1, 'error events on c');
+    t.done();
+  });
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionremovesourceexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-source-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-source-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-source-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+FAIL Changes to networkState when inserting and removing a &lt;source&gt; assert_equals: networkState after letting the sync section of resource selection run expected 0 but got 3
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionremovesourcehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-source.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-source.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-source.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,24 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;Changes to networkState when inserting and removing a &amp;lt;source&gt;&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+var v;
+var t = async_test(function(t) {
+  v = document.createElement('video');
+  assert_equals(v.networkState, v.NETWORK_EMPTY, 'networkState when creating the element');
+  v.appendChild(document.createElement('source')); // runs resource selection algorithm
+  assert_equals(v.networkState, v.NETWORK_NO_SOURCE, 'networkState when inserting a source element');
+  v.removeChild(v.firstChild);
+  assert_equals(v.networkState, v.NETWORK_NO_SOURCE, 'networkState after removing the source element');
+});
+&lt;/script&gt;
+&lt;!--  now resource selection will continue its sync section (the &lt;/script&gt; tag below provides a stable state)  --&gt;
+&lt;!--  will find neither src nor source, so sets networkState to NETWORK_EMPTY  --&gt;
+&lt;script&gt;
+t.step(function() {
+  assert_equals(v.networkState, v.NETWORK_EMPTY, 'networkState after letting the sync section of resource selection run');
+  t.done();
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionremovesrcexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-src-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-src-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-src-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+FAIL invoking resource selection by setting src; await stable state assert_equals: expected 0 but got 3
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionremovesrchtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-src.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-src.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-src.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,22 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;invoking resource selection by setting src; await stable state&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+var v;
+var t = async_test(function(t) {
+  v = document.createElement('video');
+  v.onloadstart = t.step_func(function() { assert_unreached(); });
+  v.setAttribute('src', ''); // runs resource selection algorithm, but it will wait running the sync section until this script has finished
+  assert_equals(v.networkState, v.NETWORK_NO_SOURCE);
+  v.removeAttribute('src'); // will make resource selection algorithm revert to NETWORK_EMPTY and abort (in the sync section)
+  assert_equals(v.networkState, v.NETWORK_NO_SOURCE);
+  window.onload = t.step_func(function() { t.done(); });
+});
+&lt;/script&gt;
+&lt;script&gt;
+t.step(function() {
+  assert_equals(v.networkState, v.NETWORK_EMPTY);
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionsourcemediaexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-source-media-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-source-media-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-source-media-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+
+FAIL the &lt;source&gt; media attribute has no effect assert_equals: expected 2 but got 3
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourceselectionsourcemediahtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-source-media.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-source-media.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-source-media.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,14 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;the &amp;lt;source&gt; media attribute has no effect&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;video&gt;&lt;source src=&quot;resources/delayed-broken-video.py&quot; media=&quot;none&quot;&gt;&lt;/video&gt;
+&lt;script&gt;
+test(function() {
+  var v = document.querySelector('video');
+  var s = document.querySelector('source');
+  assert_equals(v.networkState, v.NETWORK_LOADING);
+  assert_equals(v.currentSrc, s.src);
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourcesdelayedbrokenvideopy"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resources/delayed-broken-video.py (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resources/delayed-broken-video.py                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resources/delayed-broken-video.py        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+import time
+
+def main(request, response):
+  time.sleep(0.1)
+  return [(&quot;Content-Type&quot;, &quot;text/plain&quot;)], &quot;FAIL&quot;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourceresourcesw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resources/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resources/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resources/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resources/delayed-broken-video.py
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsloadingthemediaresourcew3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,58 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/autoplay-overrides-preload.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-events-networkState.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-removes-queued-error-event.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-insert-before.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-moved.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-addEventListener.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-no-listener.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-onerror.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-audio-constructor-no-src.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-audio-constructor.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-in-sync-event.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-fragment-into-document.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-document.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-iframe.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-parent-into-document.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-div.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-namespace.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-networkState.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-not-in-document.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-load.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause-networkState.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-play.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document-networkState.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-src.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-in-namespace.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-networkState.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-not-in-document.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-control.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-br.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-source.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-text.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source-after.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-text.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-source.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-src.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-source-media.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementslocationofthemediaresourcew3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/location-of-the-media-resource/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/location-of-the-media-resource/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/location-of-the-media-resource/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/location-of-the-media-resource/currentSrc.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsmimetypescanPlayTypeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/mime-types/canPlayType-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/mime-types/canPlayType-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/mime-types/canPlayType-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,61 @@
</span><ins>+
+PASS utility code 
+PASS application/octet-stream 
+PASS video/x-new-fictional-format 
+PASS audio/mp4 (optional) 
+PASS audio/mp4; codecs=&quot;mp4a.40.2&quot; (optional) 
+FAIL audio/mp4 with bogus codec assert_equals: audio/mp4; codecs=&quot;bogus&quot; expected &quot;&quot; but got &quot;maybe&quot;
+PASS audio/mp4 with and without codecs 
+FAIL audio/ogg (optional) assert_equals: audio/ogg expected &quot;maybe&quot; but got &quot;&quot;
+FAIL audio/ogg; codecs=&quot;opus&quot; (optional) assert_equals: audio/ogg; codecs=&quot;opus&quot; expected &quot;probably&quot; but got &quot;&quot;
+FAIL audio/ogg; codecs=&quot;vorbis&quot; (optional) assert_equals: audio/ogg; codecs=&quot;vorbis&quot; expected &quot;probably&quot; but got &quot;&quot;
+PASS audio/ogg with bogus codec 
+PASS audio/ogg with and without codecs 
+PASS audio/wav (optional) 
+FAIL audio/wav; codecs=&quot;1&quot; (optional) assert_equals: audio/wav; codecs=&quot;1&quot; expected &quot;probably&quot; but got &quot;maybe&quot;
+FAIL audio/wav with bogus codec assert_equals: audio/wav; codecs=&quot;bogus&quot; expected &quot;&quot; but got &quot;maybe&quot;
+FAIL audio/wav with and without codecs assert_equals: expected false but got true
+FAIL audio/webm (optional) assert_equals: audio/webm expected &quot;maybe&quot; but got &quot;&quot;
+FAIL audio/webm; codecs=&quot;opus&quot; (optional) assert_equals: audio/webm; codecs=&quot;opus&quot; expected &quot;probably&quot; but got &quot;&quot;
+FAIL audio/webm; codecs=&quot;vorbis&quot; (optional) assert_equals: audio/webm; codecs=&quot;vorbis&quot; expected &quot;probably&quot; but got &quot;&quot;
+PASS audio/webm with bogus codec 
+PASS audio/webm with and without codecs 
+PASS video/3gpp (optional) 
+PASS video/3gpp; codecs=&quot;samr&quot; (optional) 
+PASS video/3gpp; codecs=&quot;mp4v.20.8&quot; (optional) 
+PASS video/3gpp codecs subset 
+PASS video/3gpp codecs order 
+FAIL video/3gpp with bogus codec assert_equals: video/3gpp; codecs=&quot;bogus&quot; expected &quot;&quot; but got &quot;maybe&quot;
+PASS video/3gpp with and without codecs 
+PASS video/mp4 (optional) 
+PASS video/mp4; codecs=&quot;mp4a.40.2&quot; (optional) 
+PASS video/mp4; codecs=&quot;avc1.42E01E&quot; (optional) 
+PASS video/mp4; codecs=&quot;avc1.4D401E&quot; (optional) 
+PASS video/mp4; codecs=&quot;avc1.58A01E&quot; (optional) 
+PASS video/mp4; codecs=&quot;avc1.64001E&quot; (optional) 
+PASS video/mp4; codecs=&quot;mp4v.20.8&quot; (optional) 
+PASS video/mp4; codecs=&quot;mp4v.20.240&quot; (optional) 
+PASS video/mp4 codecs subset 
+PASS video/mp4 codecs order 
+FAIL video/mp4 with bogus codec assert_equals: video/mp4; codecs=&quot;bogus&quot; expected &quot;&quot; but got &quot;maybe&quot;
+PASS video/mp4 with and without codecs 
+FAIL video/ogg (optional) assert_equals: video/ogg expected &quot;maybe&quot; but got &quot;&quot;
+FAIL video/ogg; codecs=&quot;opus&quot; (optional) assert_equals: video/ogg; codecs=&quot;opus&quot; expected &quot;probably&quot; but got &quot;&quot;
+FAIL video/ogg; codecs=&quot;vorbis&quot; (optional) assert_equals: video/ogg; codecs=&quot;vorbis&quot; expected &quot;probably&quot; but got &quot;&quot;
+FAIL video/ogg; codecs=&quot;theora&quot; (optional) assert_equals: video/ogg; codecs=&quot;theora&quot; expected &quot;probably&quot; but got &quot;&quot;
+PASS video/ogg codecs subset 
+PASS video/ogg codecs order 
+PASS video/ogg with bogus codec 
+PASS video/ogg with and without codecs 
+FAIL video/webm (optional) assert_equals: video/webm expected &quot;maybe&quot; but got &quot;&quot;
+FAIL video/webm; codecs=&quot;opus&quot; (optional) assert_equals: video/webm; codecs=&quot;opus&quot; expected &quot;probably&quot; but got &quot;&quot;
+FAIL video/webm; codecs=&quot;vorbis&quot; (optional) assert_equals: video/webm; codecs=&quot;vorbis&quot; expected &quot;probably&quot; but got &quot;&quot;
+FAIL video/webm; codecs=&quot;vp8&quot; (optional) assert_equals: video/webm; codecs=&quot;vp8&quot; expected &quot;probably&quot; but got &quot;&quot;
+FAIL video/webm; codecs=&quot;vp8.0&quot; (optional) assert_equals: video/webm; codecs=&quot;vp8.0&quot; expected &quot;probably&quot; but got &quot;&quot;
+FAIL video/webm; codecs=&quot;vp9&quot; (optional) assert_equals: video/webm; codecs=&quot;vp9&quot; expected &quot;probably&quot; but got &quot;&quot;
+FAIL video/webm; codecs=&quot;vp9.0&quot; (optional) assert_equals: video/webm; codecs=&quot;vp9.0&quot; expected &quot;probably&quot; but got &quot;&quot;
+PASS video/webm codecs subset 
+PASS video/webm codecs order 
+PASS video/webm with bogus codec 
+PASS video/webm with and without codecs 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsmimetypescanPlayTypehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/mime-types/canPlayType.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/mime-types/canPlayType.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/mime-types/canPlayType.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,110 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;canPlayType&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+function t(type, expected) {
+  assert_equals(canPlayType(type), expected, type);
+}
+
+function mime(type, codecs) {
+  if (codecs.length) {
+    return type + '; codecs=&quot;' + codecs.join(', ') + '&quot;';
+  }
+  return type;
+}
+
+test(function() {
+  assert_equals(mime('video/webm', []), 'video/webm');
+  assert_equals(mime('video/webm', ['vp8']), 'video/webm; codecs=&quot;vp8&quot;');
+  assert_equals(mime('video/webm', ['vp8', 'vorbis']), 'video/webm; codecs=&quot;vp8, vorbis&quot;');
+}, 'utility code');
+
+function canPlayType(type) {
+  var canPlay = document.createElement('audio').canPlayType(type);
+  assert_equals(canPlay, document.createElement('video').canPlayType(type),
+                'audio.canPlayType() and video.canPlayType() agree');
+  assert_in_array(canPlay, ['', 'maybe', 'probably'],
+                  'return value is one of &quot;&quot;, &quot;maybe&quot; and &quot;probably&quot;');
+  return canPlay;
+}
+
+test(function() {
+  t('application/octet-stream', '');
+  t('application/octet-stream; codecs=&quot;vorbis&quot;', '');
+  t('application/octet-stream; codecs=&quot;vp8, vorbis&quot;', '');
+  t('application/octet-stream; codecs=&quot;mp4a.40.2&quot;', '');
+  t('application/octet-stream; codecs=&quot;theora, vorbis&quot;', '');
+  t('application/octet-stream; codecs=&quot;avc1.42E01E, mp4a.40.2&quot;', '');
+}, 'application/octet-stream');
+
+test(function() {
+  t('video/x-new-fictional-format', '');
+  t('video/x-new-fictional-format;codecs=&quot;kittens,bunnies&quot;', '');
+}, 'video/x-new-fictional-format');
+
+function type_codecs_test(type, audioCodecs, videoCodecs) {
+  var typeSupported = false;
+  var codecSupported = false;
+
+  test(function() {
+    // Spec: Generally, a user agent should never return &quot;probably&quot; for a type
+    // that allows the codecs parameter if that parameter is not present.
+    t(type, 'maybe');
+    typeSupported = true;
+  }, type + ' (optional)');
+
+  function test_codec(codec) {
+    var typeWithCodec = mime(type, [codec]);
+    test(function() {
+      t(typeWithCodec, 'probably');
+      codecSupported = true;
+    }, typeWithCodec + ' (optional)');
+  }
+
+  audioCodecs.forEach(test_codec);
+  videoCodecs.forEach(test_codec);
+
+  if (audioCodecs.length &gt; 0 &amp;&amp; videoCodecs.length &gt; 0) {
+    test(function() {
+      audioCodecs.forEach(function(ac) {
+        videoCodecs.forEach(function(vc) {
+          var canPlayBoth = canPlayType(mime(type, [ac, vc]));
+          if (canPlayBoth) {
+            t(mime(type, [ac]), canPlayBoth);
+            t(mime(type, [vc]), canPlayBoth);
+          }
+        });
+      });
+    }, type + ' codecs subset');
+
+    test(function() {
+      audioCodecs.forEach(function(ac) {
+        videoCodecs.forEach(function(vc) {
+          assert_equals(canPlayType(mime(type, [ac, vc])),
+                        canPlayType(mime(type, [vc, ac])));
+        });
+      });
+    }, type + ' codecs order');
+ }
+
+  test(function() {
+    t(mime(type, ['bogus']), '');
+  }, type + ' with bogus codec');
+
+  test(function() {
+    // At least one known codec must be supported if the container format is.
+    assert_equals(typeSupported, codecSupported);
+  }, type + ' with and without codecs');
+}
+
+type_codecs_test('audio/mp4', ['mp4a.40.2'], []);
+type_codecs_test('audio/ogg', ['opus', 'vorbis'], []);
+type_codecs_test('audio/wav', ['1'], []);
+type_codecs_test('audio/webm', ['opus', 'vorbis'], []);
+type_codecs_test('video/3gpp', ['samr'], ['mp4v.20.8']);
+type_codecs_test('video/mp4', ['mp4a.40.2'], ['avc1.42E01E', 'avc1.4D401E', 'avc1.58A01E', 'avc1.64001E', 'mp4v.20.8', 'mp4v.20.240']);
+type_codecs_test('video/ogg', ['opus', 'vorbis'], ['theora']);
+type_codecs_test('video/webm', ['opus', 'vorbis'], ['vp8', 'vp8.0', 'vp9', 'vp9.0']);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsmimetypesw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/mime-types/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/mime-types/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/mime-types/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/mime-types/canPlayType.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsnetworkState_during_loadstartexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/networkState_during_loadstart-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/networkState_during_loadstart-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/networkState_during_loadstart-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+spec reference
+
+  
+
+PASS audioElement.networkState should be NETWORK_LOADING during loadstart event 
+PASS videoElement.networkState should be NETWORK_LOADING during loadstart event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsnetworkState_during_loadstarthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/networkState_during_loadstart.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/networkState_during_loadstart.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/networkState_during_loadstart.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,42 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video}.networkState - NETWORK_LOADING&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#dom-media-networkstate&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; autoplay controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; autoplay controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+var ta = async_test(&quot;audioElement.networkState should be NETWORK_LOADING during loadstart event&quot;, {timeout:5000});
+var a = document.getElementById(&quot;a&quot;);
+a.addEventListener(&quot;loadstart&quot;, function() {
+  ta.step(function() {
+   assert_equals(a.networkState,
+   a.NETWORK_LOADING);
+  });
+  ta.done();
+  a.pause();
+}, false);
+a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+
+var tv = async_test(&quot;videoElement.networkState should be NETWORK_LOADING during loadstart event&quot;, {timeout:5000});
+var v = document.getElementById(&quot;v&quot;);
+v.addEventListener(&quot;loadstart&quot;, function() {
+  tv.step(function() {
+   assert_equals(a.networkState,
+   v.NETWORK_LOADING);
+  });
+  tv.done();
+  v.pause();
+}, false);
+v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsnetworkState_initialexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/networkState_initial-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/networkState_initial-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/networkState_initial-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+spec reference
+
+
+
+PASS audio.networkState - default state 
+PASS video.networkState - default state 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsnetworkState_initialhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/networkState_initial.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/networkState_initial.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/networkState_initial.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,33 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video}.networkState - default state&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#dom-media-networkstate&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot;&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot;&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+ var a = document.getElementById(&quot;a&quot;);
+ assert_equals(
+  a.networkState,
+  a.NETWORK_EMPTY,
+  &quot;audioElement.networkState should be NETWORK_EMPTY to begin with&quot;);
+}, &quot;audio.networkState - default state&quot;);
+
+test(function() {
+ var v = document.getElementById(&quot;v&quot;);
+ assert_equals(
+  v.networkState,
+  v.NETWORK_EMPTY,
+  &quot;videoElement.networkState should be NETWORK_EMPTY to begin with&quot;);
+}, &quot;video.networkState - default state&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsoffsetsintothemediaresourcedurationexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/duration-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/duration-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/duration-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS duration initial value 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsoffsetsintothemediaresourcedurationhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/duration.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/duration.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/duration.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,11 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;duration&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  var v = document.createElement('video');
+  assert_true(isNaN(v.duration));
+}, 'duration initial value');
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsoffsetsintothemediaresourcew3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/currentTime.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/duration.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementspaused_false_during_playexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/paused_false_during_play-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/paused_false_during_play-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/paused_false_during_play-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - paused property 
+PASS audio.paused should be false during play event 
+PASS video events - paused property 
+PASS video.paused should be false during play event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementspaused_false_during_playhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/paused_false_during_play.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/paused_false_during_play.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/paused_false_during_play.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,44 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - paused property&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; autoplay controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; autoplay controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;audio.paused should be false during play event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  a.addEventListener(&quot;play&quot;, function() {
+    t.step(function() {
+     assert_false(a.paused);
+    });
+    t.done();
+    a.pause();
+  }, false);
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;audio events - paused property&quot;);
+
+test(function() {
+  var t = async_test(&quot;video.paused should be false during play event&quot;, {timeout:5000});
+  var v = document.getElementById(&quot;v&quot;);
+  v.addEventListener(&quot;play&quot;, function() {
+    t.step(function() {
+     assert_false(v.paused);
+    });
+    t.done();
+    v.pause();
+  }, false);
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;video events - paused property&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementspaused_true_during_pauseexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/paused_true_during_pause-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/paused_true_during_pause-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/paused_true_during_pause-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - paused property 
+PASS audio.paused should be true during pause event 
+PASS video events - paused property 
+PASS video.paused should be true during pause event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementspaused_true_during_pausehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/paused_true_during_pause.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/paused_true_during_pause.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/paused_true_during_pause.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,46 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - paused property&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;audio.paused should be true during pause event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  a.addEventListener(&quot;pause&quot;, function() {
+    t.step(function() {
+     assert_true(a.paused);
+    });
+    t.done();
+  }, false);
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+  a.play();
+  a.pause();
+}, &quot;audio events - paused property&quot;);
+
+test(function() {
+  var t = async_test(&quot;video.paused should be true during pause event&quot;, {timeout:5000});
+  var v = document.getElementById(&quot;v&quot;);
+  v.addEventListener(&quot;pause&quot;, function() {
+    t.step(function() {
+     assert_true(v.paused);
+    });
+    t.done();
+  }, false);
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+  v.play();
+  v.pause();
+}, &quot;video events - paused property&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsplayingthemediaresourcepausemovetootherdocumentexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-to-other-document-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-to-other-document-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-to-other-document-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+FAIL paused state when moving to other document assert_false: paused after moving expected false got true
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsplayingthemediaresourcepausemovetootherdocumenthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-to-other-document.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-to-other-document.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-to-other-document.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,25 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;paused state when moving to other document&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;video hidden&gt;&lt;/video&gt;
+&lt;iframe hidden&gt;&lt;/iframe&gt;
+&lt;script&gt;
+async_test(function(t) {
+  var v = document.querySelector('video');
+  v.src = getVideoURI('/w3c/resources/media/movie_300');
+  v.play();
+  v.onplaying = t.step_func(function() {
+    assert_false(v.paused, 'paused after playing');
+    document.querySelector('iframe').contentDocument.body.appendChild(v);
+    assert_false(v.paused, 'paused after moving');
+    setTimeout(t.step_func(function() {
+      assert_false(v.paused, 'paused after stable state')
+      t.done();
+    }), 0);
+  });
+  v.onpause = t.step_func(function() { assert_unreached(); });
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsplayingthemediaresourcepausemovewithindocumentexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-within-document-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-within-document-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-within-document-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+FAIL paused state when moving within a document assert_false: paused after moving expected false got true
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsplayingthemediaresourcepausemovewithindocumenthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-within-document.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-within-document.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-within-document.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,25 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;paused state when moving within a document&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;video hidden&gt;&lt;/video&gt;
+&lt;div id=&quot;elsewhere&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+async_test(function(t) {
+  var v = document.querySelector('video');
+  v.src = getVideoURI('/w3c/resources/media/movie_300');
+  v.play();
+  v.onplaying = t.step_func(function() {
+    assert_false(v.paused, 'paused after playing');
+    document.getElementById('elsewhere').appendChild(v);
+    assert_false(v.paused, 'paused after moving');
+    setTimeout(t.step_func(function() {
+      assert_false(v.paused, 'paused after stable state')
+      t.done();
+    }), 0);
+  });
+  v.onpause = t.step_func(function() { assert_unreached(); });
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsplayingthemediaresourcepauseremovefromdocumentexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-remove-from-document-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-remove-from-document-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-remove-from-document-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+FAIL paused state when removing from a document assert_false: paused after removing expected false got true
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsplayingthemediaresourcepauseremovefromdocumenthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-remove-from-document.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-remove-from-document.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-remove-from-document.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,37 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;paused state when removing from a document&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;video hidden&gt;&lt;/video&gt;
+&lt;script&gt;
+function afterStableState(func) {
+  var a = new Audio();
+  a.volume = 0;
+  a.addEventListener('volumechange', func);
+}
+
+async_test(function(t) {
+  var v = document.querySelector('video');
+  v.src = getVideoURI('/w3c/resources/media/movie_300');
+  v.play();
+  v.onplaying = t.step_func(function() {
+    assert_false(v.paused, 'paused after playing');
+    v.parentNode.removeChild(v);
+    assert_false(v.paused, 'paused after removing');
+    afterStableState(t.step_func(function() {
+      assert_true(v.paused, 'paused after stable state');
+      v.onpause = t.step_func(function() {
+        assert_true(v.paused, 'paused in pause event');
+        // re-insert and verify that it stays paused
+        document.body.appendChild(v);
+        setTimeout(t.step_func(function() {
+          assert_true(v.paused, 'paused after re-inserting');
+          t.done();
+        }), 0);
+      });
+    }));
+  });
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsplayingthemediaresourceplaybackRateexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/playbackRate-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/playbackRate-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/playbackRate-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+PASS playbackRate initial value 
+PASS setting playbackRate 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsplayingthemediaresourceplaybackRatehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/playbackRate.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/playbackRate.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/playbackRate.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;playbackRate&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  var v = document.createElement('video');
+  assert_equals(v.playbackRate, 1);
+}, 'playbackRate initial value');
+
+async_test(function(t) {
+  var v = document.createElement('video');
+  v.playbackRate = 2;
+  v.addEventListener('ratechange', t.step_func(function() {
+    t.done();
+  }));
+}, 'setting playbackRate');
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsplayingthemediaresourcew3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,23 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-to-other-document.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-move-within-document.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-remove-from-document-networkState.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-remove-from-document.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/play-in-detached-document.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/playing-the-media-resource/playbackRate.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementspreload_reflects_none_autoplayexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/preload_reflects_none_autoplay-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/preload_reflects_none_autoplay-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/preload_reflects_none_autoplay-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+spec reference
+
+
+
+PASS audio.preload - reflection test 
+PASS video.preload - reflection test 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementspreload_reflects_none_autoplayhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/preload_reflects_none_autoplay.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/preload_reflects_none_autoplay.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/preload_reflects_none_autoplay.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,31 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video}.preload - reflection test&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#dom-media-preload&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;audio&quot; autoplay preload=&quot;none&quot;&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;video&quot; autoplay preload=&quot;none&quot;&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+ assert_equals(
+  document.getElementById(&quot;audio&quot;).preload,
+  &quot;none&quot;,
+  &quot;audioElement.preload reflects 'none' value even if autoplay attribute is present&quot;);
+}, &quot;audio.preload - reflection test&quot;);
+
+test(function() {
+ assert_equals(
+  document.getElementById(&quot;video&quot;).preload,
+  &quot;none&quot;,
+  &quot;videoElement.preload reflects 'none' value even if autoplay attribute is present&quot;);
+}, &quot;video.preload - reflection test&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadystatesw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/ready-states/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/ready-states/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/ready-states/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/ready-states/autoplay.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadyState_during_canplayexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_canplay-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_canplay-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_canplay-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - readyState property during canplay 
+PASS audio.readyState should be &gt;= HAVE_FUTURE_DATA during canplay event 
+PASS video events - readyState property during canplay 
+PASS video.readyState should be &gt;= HAVE_FUTURE_DATA during canplay event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadyState_during_canplayhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_canplay.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_canplay.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_canplay.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,44 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - readyState property during canplay&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; autoplay controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; autoplay controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;audio.readyState should be &gt;= HAVE_FUTURE_DATA during canplay event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  a.addEventListener(&quot;canplay&quot;, function() {
+    t.step(function() {
+     assert_greater_than_equal(a.readyState, a.HAVE_FUTURE_DATA);
+    });
+    t.done();
+    a.pause();
+  }, false);
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;audio events - readyState property during canplay&quot;);
+
+test(function() {
+  var t = async_test(&quot;video.readyState should be &gt;= HAVE_FUTURE_DATA during canplay event&quot;, {timeout:5000});
+  var v = document.getElementById(&quot;v&quot;);
+  v.addEventListener(&quot;canplay&quot;, function() {
+    t.step(function() {
+     assert_greater_than_equal(v.readyState, v.HAVE_FUTURE_DATA);
+    });
+    t.done();
+    v.pause();
+  }, false);
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;video events - readyState property during canplay&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadyState_during_canplaythroughexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_canplaythrough-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_canplaythrough-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_canplaythrough-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - readyState property during canplaythrough 
+PASS audio.readyState should be HAVE_ENOUGH_DATA during canplaythrough event 
+PASS video events - readyState property during canplaythrough 
+PASS video.readyState should be HAVE_ENOUGH_DATA during canplaythrough event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadyState_during_canplaythroughhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_canplaythrough.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_canplaythrough.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_canplaythrough.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,46 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - readyState property during canplaythrough&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; autoplay controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; autoplay controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;audio.readyState should be HAVE_ENOUGH_DATA during canplaythrough event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  a.addEventListener(&quot;canplaythrough&quot;, function() {
+    t.step(function() {
+     assert_equals(a.readyState,
+      a.HAVE_ENOUGH_DATA);
+    });
+    t.done();
+    a.pause();
+  }, false);
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;audio events - readyState property during canplaythrough&quot;);
+
+test(function() {
+  var t = async_test(&quot;video.readyState should be HAVE_ENOUGH_DATA during canplaythrough event&quot;, {timeout:5000});
+  var v = document.getElementById(&quot;v&quot;);
+  v.addEventListener(&quot;canplaythrough&quot;, function() {
+    t.step(function() {
+     assert_equals(v.readyState,
+      v.HAVE_ENOUGH_DATA);
+    });
+    t.done();
+    v.pause();
+  }, false);
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;video events - readyState property during canplaythrough&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadyState_during_loadeddataexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_loadeddata-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_loadeddata-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_loadeddata-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - readyState property during loadeddata 
+PASS audio.readyState should be &gt;= HAVE_CURRENT_DATA during loadeddata event 
+PASS video events - readyState property during loadeddata 
+PASS video.readyState should be &gt;= HAVE_CURRENT_DATA during loadeddata event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadyState_during_loadeddatahtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_loadeddata.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_loadeddata.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_loadeddata.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,44 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - readyState property during loadeddata&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; autoplay controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; autoplay controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;audio.readyState should be &gt;= HAVE_CURRENT_DATA during loadeddata event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  a.addEventListener(&quot;loadeddata&quot;, function() {
+    t.step(function() {
+     assert_greater_than_equal(a.readyState, a.HAVE_CURRENT_DATA);
+    });
+    t.done();
+    a.pause();
+  }, false);
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;audio events - readyState property during loadeddata&quot;);
+
+test(function() {
+  var t = async_test(&quot;video.readyState should be &gt;= HAVE_CURRENT_DATA during loadeddata event&quot;, {timeout:5000});
+  var v = document.getElementById(&quot;v&quot;);
+  v.addEventListener(&quot;loadeddata&quot;, function() {
+    t.step(function() {
+     assert_greater_than_equal(v.readyState, v.HAVE_CURRENT_DATA);
+    });
+    t.done();
+    v.pause();
+  }, false);
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;video events - readyState property during loadeddata&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadyState_during_loadedmetadataexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_loadedmetadata-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_loadedmetadata-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_loadedmetadata-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - readyState property during loadedmetadata 
+PASS audio.readyState should be &gt;= HAVE_METADATA during loadedmetadata event 
+PASS video events - readyState property during loadedmetadata 
+PASS video.readyState should be &gt;= HAVE_METADATA during loadedmetadata event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadyState_during_loadedmetadatahtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_loadedmetadata.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_loadedmetadata.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_loadedmetadata.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,44 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - readyState property during loadedmetadata&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; autoplay controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; autoplay controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;audio.readyState should be &gt;= HAVE_METADATA during loadedmetadata event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  a.addEventListener(&quot;loadedmetadata&quot;, function() {
+    t.step(function() {
+     assert_greater_than_equal(a.readyState, a.HAVE_METADATA);
+    });
+    t.done();
+    a.pause();
+  }, false);
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;audio events - readyState property during loadedmetadata&quot;);
+
+test(function() {
+  var t = async_test(&quot;video.readyState should be &gt;= HAVE_METADATA during loadedmetadata event&quot;, {timeout:5000});
+  var v = document.getElementById(&quot;v&quot;);
+  v.addEventListener(&quot;loadedmetadata&quot;, function() {
+    t.step(function() {
+     assert_greater_than_equal(v.readyState, v.HAVE_METADATA);
+    });
+    t.done();
+    v.pause();
+  }, false);
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;video events - readyState property during loadedmetadata&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadyState_during_playingexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_playing-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_playing-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_playing-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+spec reference
+
+  
+
+PASS audio events - readyState property during playing 
+PASS audio.readyState should be &gt;= HAVE_FUTURE_DATA during playing event 
+PASS video events - readyState property during playing 
+PASS video.readyState should be &gt;= HAVE_FUTURE_DATA during playing event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadyState_during_playinghtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_playing.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_playing.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_playing.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,44 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video} events - readyState property during playing&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#mediaevents&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot; autoplay controls&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot; autoplay controls&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+  var t = async_test(&quot;audio.readyState should be &gt;= HAVE_FUTURE_DATA during playing event&quot;, {timeout:5000});
+  var a = document.getElementById(&quot;a&quot;);
+  a.addEventListener(&quot;playing&quot;, function() {
+    t.step(function() {
+     assert_greater_than_equal(a.readyState, a.HAVE_FUTURE_DATA);
+    });
+    t.done();
+    a.pause();
+  }, false);
+  a.src = getAudioURI(&quot;/w3c/resources/media/sound_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;audio events - readyState property during playing&quot;);
+
+test(function() {
+  var t = async_test(&quot;video.readyState should be &gt;= HAVE_FUTURE_DATA during playing event&quot;, {timeout:5000});
+  var v = document.getElementById(&quot;v&quot;);
+  v.addEventListener(&quot;playing&quot;, function() {
+    t.step(function() {
+     assert_greater_than_equal(v.readyState, v.HAVE_FUTURE_DATA);
+    });
+    t.done();
+    v.pause();
+  }, false);
+  v.src = getVideoURI(&quot;/w3c/resources/media/movie_5&quot;) + &quot;?&quot; + new Date() + Math.random();
+}, &quot;video events - readyState property during playing&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadyState_initialexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_initial-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_initial-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_initial-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+spec reference
+
+
+
+PASS audio.readyState - default state 
+PASS video.readyState - default state 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsreadyState_initialhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_initial.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_initial.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_initial.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,33 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video}.readyState - default state&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#dom-media-networkstate&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;a&quot;&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;v&quot;&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+ var a = document.getElementById(&quot;a&quot;);
+ assert_equals(
+  a.readyState,
+  a.HAVE_NOTHING,
+  &quot;audioElement.readyState should be HAVE_NOTHING to begin with&quot;);
+}, &quot;audio.readyState - default state&quot;);
+
+test(function() {
+ var v = document.getElementById(&quot;v&quot;);
+ assert_equals(
+  v.readyState,
+  v.HAVE_NOTHING,
+  &quot;videoElement.readyState should be HAVE_NOTHING to begin with&quot;);
+}, &quot;video.readyState - default state&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsseekingw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/seeking/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/seeking/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/seeking/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,20 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/seeking/seek-to-currentTime.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/seeking/seek-to-max-value.htm
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/seeking/seek-to-negative-time.htm
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementssrc_reflects_attribute_not_source_elementsexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/src_reflects_attribute_not_source_elements-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/src_reflects_attribute_not_source_elements-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/src_reflects_attribute_not_source_elements-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+spec reference
+
+
+
+PASS audio.src - reflection test 
+PASS video.src - reflection test 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementssrc_reflects_attribute_not_source_elementshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/src_reflects_attribute_not_source_elements.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/src_reflects_attribute_not_source_elements.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/src_reflects_attribute_not_source_elements.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,33 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;{audio,video}.src - reflection test&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;p&gt;&lt;a href=&quot;https://html.spec.whatwg.org/multipage/#dom-media-src&quot;&gt;spec reference&lt;/a&gt;&lt;/p&gt;
+  &lt;audio id=&quot;audio&quot; src=&quot;foo&quot;&gt;
+   &lt;source src=&quot;barbaz&quot; /&gt;
+  &lt;/audio&gt;
+  &lt;video id=&quot;video&quot; src=&quot;foo&quot;&gt;
+   &lt;source src=&quot;barbaz&quot; /&gt;
+  &lt;/video&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+ assert_equals(
+   document.getElementById(&quot;audio&quot;).src.indexOf(&quot;barbaz&quot;),
+   -1,
+   &quot;audioElement.src should reflect src attribute, not source child elements&quot;);
+}, &quot;audio.src - reflection test&quot;);
+
+test(function() {
+ assert_equals(
+   document.getElementById(&quot;video&quot;).src.indexOf(&quot;barbaz&quot;),
+   -1,
+   &quot;videoElement.src should reflect src attribute, not source child elements&quot;);
+}, &quot;video.src - reflection test&quot;);
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementssynchronisingmultiplemediaelementsmediacontrollerstasksourceexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/synchronising-multiple-media-elements/media-controllers/task-source-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/synchronising-multiple-media-elements/media-controllers/task-source-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/synchronising-multiple-media-elements/media-controllers/task-source-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+FAIL MediaController events task source assert_array_equals: property 1, expected object &quot;[object MediaController]&quot; but got object &quot;[object MediaController]&quot;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementssynchronisingmultiplemediaelementsmediacontrollerstasksourcehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/synchronising-multiple-media-elements/media-controllers/task-source.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/synchronising-multiple-media-elements/media-controllers/task-source.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/synchronising-multiple-media-elements/media-controllers/task-source.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,27 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;MediaController events task source&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+async_test(function(t) {
+  // Both MediaControllers should use the DOM manipulation task source, so the
+  // events should fire in the same order as the attributes are modified.
+  var mc1 = new MediaController();
+  var mc2 = new MediaController();
+  mc1.volume = 0;
+  mc2.volume = 0;
+  mc1.volume = 1;
+  mc2.volume = 1;
+  var targets = [];
+  var callback = t.step_func(function(event) {
+    targets.push(event.target);
+    if (targets.length == 4) {
+      assert_array_equals(targets, [mc1, mc2, mc1, mc2]);
+      t.done();
+    }
+  });
+  mc1.addEventListener('volumechange', callback);
+  mc2.addEventListener('volumechange', callback);
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementssynchronisingmultiplemediaelementsmediacontrollersw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/synchronising-multiple-media-elements/media-controllers/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/synchronising-multiple-media-elements/media-controllers/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/synchronising-multiple-media-elements/media-controllers/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/synchronising-multiple-media-elements/media-controllers/task-source.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementstracktrackelementresourcestrackdevtt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/resources/track.de.vtt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/resources/track.de.vtt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/resources/track.de.vtt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+WEBVTT
+
+00:00:00.000 --&gt; 00:00:01.000
+German
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementstracktrackelementresourcestrackenvtt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/resources/track.en.vtt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/resources/track.en.vtt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/resources/track.en.vtt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+WEBVTT
+
+00:00:00.000 --&gt; 00:00:01.000
+English
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementstracktrackelementresourcestrackfrvtt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/resources/track.fr.vtt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/resources/track.fr.vtt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/resources/track.fr.vtt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+WEBVTT
+
+00:00:00.000 --&gt; 00:00:01.000
+french
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementstracktrackelementresourcestrackvtt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/resources/track.vtt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/resources/track.vtt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/resources/track.vtt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+WEBVTT
+
+00:00:00.000 --&gt; 00:00:01.000
+test
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementstracktrackelementresourcesw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/resources/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/resources/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/resources/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,21 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/resources/track.de.vtt
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/resources/track.en.vtt
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/resources/track.fr.vtt
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/resources/track.vtt
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementstracktrackelementsrcclearcuesexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/src-clear-cues-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/src-clear-cues-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/src-clear-cues-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+
+FAIL track element changing &quot;track URL&quot; and clearing cues, set mode, add cue, set src assert_equals: cues.length after setting src expected 0 but got 1
+FAIL track element changing &quot;track URL&quot; and clearing cues, set mode, set src, add cue, change src assert_equals: cues.length after changing src expected 0 but got 1
+FAIL track element changing &quot;track URL&quot; and clearing cues, set mode, add cue, change mode to disabled, set src assert_equals: cues.length after changing src expected 0 but got 1
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementstracktrackelementsrcclearcueshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/src-clear-cues.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/src-clear-cues.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/src-clear-cues.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,52 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;track element changing &quot;track URL&quot; and clearing cues&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+(async_test(document.title+', set mode, add cue, set src')).step(function(){
+    var track = document.createElement('track');
+    var c = new VTTCue(0, 1, 'foo');
+    c.id = 'id';
+    track.track.addCue(c);
+    assert_equals(track.track.cues, null, 'cues before setting src or mode');
+    track.track.mode = 'showing';
+    assert_equals(track.track.cues.length, 1, 'cues after setting mode');
+    var cues = track.track.cues;
+    track.src = 'data:,a';
+    assert_equals(track.track.cues.length, 0, 'cues.length after setting src');
+    assert_equals(track.track.cues, cues, 'track.track.cues sameness after setting src');
+    assert_equals(c.id, 'id', 'liveness of removed cue');
+    this.done();
+});
+
+(async_test(document.title+', set mode, set src, add cue, change src')).step(function(){
+    var track = document.createElement('track');
+    track.track.mode = 'showing';
+    track.src = 'data:,a';
+    var c = new VTTCue(0, 1, 'foo');
+    c.id = 'id';
+    track.track.addCue(c);
+    assert_equals(track.track.cues.length, 1, 'cues.length before changing src');
+    var cues = track.track.cues;
+    track.src = 'data:,b';
+    assert_equals(track.track.cues.length, 0, 'cues.length after changing src');
+    assert_equals(track.track.cues, cues, 'track.track.cues sameness after changing src');
+    assert_equals(c.id, 'id', 'liveness of removed cue');
+    this.done();
+});
+
+(async_test(document.title+', set mode, add cue, change mode to disabled, set src')).step(function(){
+    var track = document.createElement('track');
+    track.track.mode = 'showing';
+    var c = new VTTCue(0, 1, 'foo');
+    c.id = 'id';
+    track.track.addCue(c);
+    var cues = track.track.cues;
+    track.track.mode = 'disabled';
+    track.src = 'data:,a';
+    assert_equals(cues.length, 0, 'cues.length after changing src');
+    assert_equals(c.id, 'id', 'liveness of removed cue');
+    this.done();
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementstracktrackelementtrackapitexttracksexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/track-api-texttracks-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/track-api-texttracks-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/track-api-texttracks-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+Track element and API Test
+
+
+PASS Check the track elements 
+PASS Check getTrackById method 
+PASS Count track list 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementstracktrackelementtrackapitexttrackshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/track-api-texttracks.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/track-api-texttracks.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/track-api-texttracks.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,36 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;title&gt;Track element - text tracks API test&lt;/title&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#text-track-api&quot;&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Hyunjin Cho&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;h1&gt;Track element and API Test&lt;/h1&gt;
+&lt;div style=&quot;display:none;&quot;&gt;
+    &lt;video id=&quot;tracktest&quot; src=&quot;/w3c/resources/media/movie_300.mp4&quot;&gt;
+        &lt;track kind=&quot;subtitles&quot; src=&quot;resources/track.en.vtt&quot; srclang=&quot;en&quot; label=&quot;English&quot;&gt;
+        &lt;track kind=&quot;captions&quot; src=&quot;resources/track.en.vtt&quot; srclang=&quot;en&quot; label=&quot;English with Captions&quot;&gt;
+        &lt;track id=&quot;french&quot; kind=&quot;subtitles&quot; src=&quot;resources/track.fr.vtt&quot; srclang=&quot;fr&quot; label=&quot;Francais&quot;&gt;
+        &lt;track kind=&quot;subtitles&quot; src=&quot;resources/track.de.vtt&quot; srclang=&quot;de&quot; label=&quot;Deutsch&quot;&gt;
+    &lt;/video&gt;
+&lt;/div&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+    var t1 = document.getElementById('tracktest').textTracks;
+    assert_not_equals(t1, undefined, &quot;textTracks member should not be undefined&quot;);
+}, &quot;Check the track elements&quot;);
+test(function() {
+    var t2 = document.getElementById('tracktest').textTracks.getTrackById(&quot;french&quot;);
+    assert_not_equals(t2, undefined, &quot;textTracks member should not be undefined&quot;);
+}, &quot;Check getTrackById method&quot;);
+test(function() {
+    var t3 = document.getElementById('tracktest').textTracks.length;
+    assert_equals(t3, 4, &quot;textTracks List should be 4&quot;);
+}, &quot;Count track list&quot;);
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementstracktrackelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,20 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/cloneNode.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/src-clear-cues.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/track/track-element/track-api-texttracks.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsuserinterfacemutedexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/user-interface/muted-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/user-interface/muted-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/user-interface/muted-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,23 @@
</span><ins>+
+PASS getting audio.muted (parser-created) 
+PASS setting audio.muted (parser-created) 
+PASS getting audio.muted with muted=&quot;&quot; (parser-created) 
+PASS setting audio.muted with muted=&quot;&quot; (parser-created) 
+PASS getting video.muted (parser-created) 
+PASS setting video.muted (parser-created) 
+PASS getting video.muted with muted=&quot;&quot; (parser-created) 
+PASS setting video.muted with muted=&quot;&quot; (parser-created) 
+PASS getting video.muted with muted=&quot;&quot; after load (parser-created) 
+PASS getting audio.muted (script-created) 
+PASS setting audio.muted (script-created) 
+FAIL getting audio.muted with muted=&quot;&quot; (script-created) assert_false: expected false got true
+FAIL setting audio.muted with muted=&quot;&quot; (script-created) assert_equals: expected false but got true
+PASS getting audio.muted with muted=&quot;&quot; (innerHTML-created) 
+PASS getting audio.muted with muted=&quot;&quot; (document.write-created) 
+PASS getting video.muted (script-created) 
+PASS setting video.muted (script-created) 
+FAIL getting video.muted with muted=&quot;&quot; (script-created) assert_false: expected false got true
+FAIL setting video.muted with muted=&quot;&quot; (script-created) assert_equals: expected false but got true
+PASS getting video.muted with muted=&quot;&quot; (innerHTML-created) 
+PASS getting video.muted with muted=&quot;&quot; (document.write-created) 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsuserinterfacemutedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/user-interface/muted.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/user-interface/muted.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/user-interface/muted.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,152 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;muted&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+&lt;style&gt;video { display: none; }&lt;/style&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+
+&lt;script&gt;
+function test_setting(e, muted, hasAttribute) {
+  assert_equals(e.muted, muted);
+  assert_equals(e.hasAttribute('muted'), hasAttribute);
+
+  e.muted = !e.muted;
+  assert_equals(e.muted, !muted);
+  assert_equals(e.hasAttribute('muted'), hasAttribute);
+
+  e.muted = !e.muted;
+  assert_equals(e.muted, muted);
+  assert_equals(e.hasAttribute('muted'), hasAttribute);
+}
+&lt;/script&gt;
+
+&lt;!--  These tests are inside &lt;audio&gt;/&lt;video&gt; so that the steps for updating the
+     muted IDL attribute cannot be delayed until the end tag is parsed.  --&gt;
+
+&lt;audio id=a1&gt;
+&lt;script&gt;
+var a1 = document.getElementById('a1');
+
+test(function() {
+  assert_false(a1.muted);
+}, 'getting audio.muted (parser-created)');
+
+test(function() {
+  test_setting(a1, false, false);
+}, 'setting audio.muted (parser-created)');
+&lt;/script&gt;
+&lt;/audio&gt;
+
+&lt;audio id=a2 muted&gt;
+&lt;script&gt;
+var a2 = document.getElementById('a2');
+
+test(function() {
+  assert_true(a2.muted);
+}, 'getting audio.muted with muted=&quot;&quot; (parser-created)');
+
+test(function() {
+  test_setting(a2, true, true);
+}, 'setting audio.muted with muted=&quot;&quot; (parser-created)');
+&lt;/script&gt;
+&lt;/audio&gt;
+
+&lt;video id=v1&gt;
+&lt;script&gt;
+var v1 = document.getElementById('v1');
+
+test(function() {
+  assert_false(v1.muted);
+}, 'getting video.muted (parser-created)');
+
+test(function() {
+  test_setting(v1, false, false);
+}, 'setting video.muted (parser-created)');
+&lt;/script&gt;
+&lt;/video&gt;
+
+&lt;video id=v2 muted&gt;
+&lt;script&gt;
+var v2 = document.getElementById('v2');
+
+test(function() {
+  assert_true(v2.muted);
+}, 'getting video.muted with muted=&quot;&quot; (parser-created)');
+
+test(function() {
+  test_setting(v2, true, true);
+}, 'setting video.muted with muted=&quot;&quot; (parser-created)');
+&lt;/script&gt;
+&lt;/video&gt;
+
+&lt;!--  Negative test to ensure that the load algorithm does not update the
+     muted IDL attribute to match the content attribute.  --&gt;
+
+&lt;video id=v3 muted&gt;&lt;/video&gt;
+&lt;script&gt;
+async_test(function(t) {
+  var v = document.getElementById('v3');
+  assert_true(v.muted);
+  v.muted = false;
+  v.src = 'data:,'; // invokes load()
+  v.addEventListener('error', t.step_func(function() {
+    assert_false(v.muted);
+    t.done();
+  }));
+}, 'getting video.muted with muted=&quot;&quot; after load (parser-created)');
+&lt;/script&gt;
+
+&lt;script&gt;
+['audio', 'video'].forEach(function(tagName) {
+  test(function() {
+    var m = document.createElement(tagName);
+    assert_false(m.muted);
+  }, 'getting ' + tagName + '.muted (script-created)');
+
+  test(function() {
+    var m = document.createElement(tagName);
+    test_setting(m, false, false);
+  }, 'setting ' + tagName + '.muted (script-created)');
+
+  test(function() {
+    var m = document.createElement(tagName);
+    m.setAttribute('muted', '');
+    assert_false(m.muted);
+  }, 'getting ' + tagName + '.muted with muted=&quot;&quot; (script-created)');
+
+  test(function() {
+    var m = document.createElement(tagName);
+    m.setAttribute('muted', '');
+    test_setting(m, false, true);
+  }, 'setting ' + tagName + '.muted with muted=&quot;&quot; (script-created)');
+
+  // Spec bug: https://www.w3.org/Bugs/Public/show_bug.cgi?id=25153
+  /*
+  test(function() {
+    var m = document.createElement(tagName);
+    m.setAttribute('muted', '');
+    m = m.cloneNode(false);
+    assert_true(m.hasAttribute('muted'));
+    assert_false(m.muted);
+  }, 'getting ' + tagName + '.muted with muted=&quot;&quot; (cloneNode-created)');
+  */
+
+  test(function() {
+    var div = document.createElement('div');
+    div.innerHTML = '&lt;' + tagName + ' muted&gt;';
+    m = div.firstChild;
+    assert_true(m.hasAttribute('muted'));
+    assert_true(m.muted);
+  }, 'getting ' + tagName + '.muted with muted=&quot;&quot; (innerHTML-created)');
+
+  test(function() {
+    var id = tagName;
+    assert_equals(document.getElementById(id), null);
+    document.write('&lt;' + tagName + ' id=' + id + ' muted&gt;');
+    m = document.getElementById(id);
+    assert_true(m.hasAttribute('muted'));
+    assert_true(m.muted);
+  }, 'getting ' + tagName + '.muted with muted=&quot;&quot; (document.write-created)');
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsuserinterfacew3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/user-interface/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/user-interface/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/user-interface/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/user-interface/muted.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsvideo_volume_checkexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/video_volume_check-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/video_volume_check-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/video_volume_check-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+
+
+PASS Check if the intial value of the video.volume is in the range 0.0 to 1.0 inclusive 
+PASS Check if video.volume is able to set to new value in the range 0.0 to 1.0 
+PASS Check if media.volume is able to set to new value 0.0 as silent 
+PASS Check if media.volume is able to set to new value 1.0 as loudest 
+PASS Check if media.volume is set to new value less than 0.0 that expecting an IndexSizeError exception is to be thrown 
+PASS Check if video.volume is set to new value greater than 1.0 that expecting an IndexSizeError exception is to be thrown 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsvideo_volume_checkhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/video_volume_check.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/video_volume_check.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/video_volume_check.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,58 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;title&gt;Video Test: video_volume_check&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com&quot; /&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-media-volume&quot; /&gt;
+    &lt;meta name=&quot;flags&quot; content=&quot;&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;Check that video.volume returns the value of the muted content attribute&quot; /&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+    &lt;video id=&quot;m&quot;&gt;The user agent doesn't support media element.&lt;/video&gt;
+    &lt;script type=&quot;text/javascript&quot;&gt;
+        var media = document.getElementById(&quot;m&quot;);
+        var VOLUME = {
+            'SILENT'  :  0.0,
+            'NORMAL'  :  0.5,
+            'LOUDEST' :  1.0,
+            'LOWER'   : -1.1,
+            'UPPER'   :  1.1,
+        };
+
+        test(function() {
+            assert_false(media.volume &lt; VOLUME.SILENT || media.volume &gt; VOLUME.LOUDEST, &quot;media.volume outside the range 0.0 to 1.0 inclusive&quot;);
+        }, &quot;Check if the intial value of the video.volume is in the range 0.0 to 1.0 inclusive&quot;);
+
+        function volume_setting(vol, name)
+        {
+            if (vol &lt; VOLUME.SILENT || vol &gt; VOLUME.LOUDEST) {
+                try {
+                    media.volume = vol;
+                    test(function() {
+                        assert_true(false, &quot;media.volume setting exception&quot;);
+                    }, name);
+                } catch(e) {
+                    test(function() {
+                        // 1 should be e.IndexSizeError or e.INDEX_SIZE_ERR in previous spec
+                        assert_equals(e.code, 1, &quot;media.volume setting exception&quot;);
+                    }, name);
+                }
+            } else {
+                media.volume = vol;
+                test(function() {
+                    assert_equals(media.volume, vol, &quot;media.volume new value&quot;);
+                }, name);
+            }
+        }
+
+        volume_setting(VOLUME.NORMAL,  &quot;Check if video.volume is able to set to new value in the range 0.0 to 1.0&quot;);
+        volume_setting(VOLUME.SILENT,  &quot;Check if media.volume is able to set to new value 0.0 as silent&quot;);
+        volume_setting(VOLUME.LOUDEST, &quot;Check if media.volume is able to set to new value 1.0 as loudest&quot;);
+        volume_setting(VOLUME.LOWER,   &quot;Check if media.volume is set to new value less than 0.0 that expecting an IndexSizeError exception is to be thrown&quot;);
+        volume_setting(VOLUME.UPPER,   &quot;Check if video.volume is set to new value greater than 1.0 that expecting an IndexSizeError exception is to be thrown&quot;);
+    &lt;/script&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsvolume_nonfiniteexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/volume_nonfinite-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/volume_nonfinite-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/volume_nonfinite-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,20 @@
</span><ins>+
+FAIL Setting audio.volume to NaN should throw a TypeError assert_throws: function &quot;function () {
+        el.volume = aValue;
+      }&quot; did not throw
+FAIL Setting audio.volume to Infinity should throw a TypeError assert_throws: function &quot;function () {
+        el.volume = aValue;
+      }&quot; threw object &quot;Error: IndexSizeError: DOM Exception 1&quot; (&quot;IndexSizeError&quot;) expected object &quot;TypeError&quot; (&quot;TypeError&quot;)
+FAIL Setting audio.volume to -Infinity should throw a TypeError assert_throws: function &quot;function () {
+        el.volume = aValue;
+      }&quot; threw object &quot;Error: IndexSizeError: DOM Exception 1&quot; (&quot;IndexSizeError&quot;) expected object &quot;TypeError&quot; (&quot;TypeError&quot;)
+FAIL Setting video.volume to NaN should throw a TypeError assert_throws: function &quot;function () {
+        el.volume = aValue;
+      }&quot; did not throw
+FAIL Setting video.volume to Infinity should throw a TypeError assert_throws: function &quot;function () {
+        el.volume = aValue;
+      }&quot; threw object &quot;Error: IndexSizeError: DOM Exception 1&quot; (&quot;IndexSizeError&quot;) expected object &quot;TypeError&quot; (&quot;TypeError&quot;)
+FAIL Setting video.volume to -Infinity should throw a TypeError assert_throws: function &quot;function () {
+        el.volume = aValue;
+      }&quot; threw object &quot;Error: IndexSizeError: DOM Exception 1&quot; (&quot;IndexSizeError&quot;) expected object &quot;TypeError&quot; (&quot;TypeError&quot;)
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsvolume_nonfinitehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/volume_nonfinite.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/volume_nonfinite.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/volume_nonfinite.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;Setting HTMLMediaElement.volume to non-finite numbers&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+[&quot;audio&quot;, &quot;video&quot;].forEach(function(aElement) {
+  [NaN, Infinity, -Infinity].forEach(function(aValue) {
+    test(function() {
+      var el = document.createElement(aElement);
+      assert_throws(new TypeError(), function() {
+        el.volume = aValue;
+      });
+    }, &quot;Setting &quot; + aElement + &quot;.volume to &quot; + String(aValue) + &quot; should throw a TypeError&quot;);
+  });
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentmediaelementsw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,62 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/audio_loop_base.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/audio_volume_check.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/contains.json
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_canplay.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_canplay_noautoplay.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_canplaythrough.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_canplaythrough_noautoplay.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadeddata.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadeddata_noautoplay.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadedmetadata.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadedmetadata_noautoplay.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadstart.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_loadstart_noautoplay.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_canplay_canplaythrough.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_canplay_playing.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_loadedmetadata_loadeddata.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_order_loadstart_progress.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_pause.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_pause_noautoplay.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_play.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_play_noautoplay.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_playing.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_playing_noautoplay.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_progress.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_progress_noautoplay.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_timeupdate.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/event_volumechange.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/historical.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/networkState_during_loadstart.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/networkState_during_progress.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/networkState_initial.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/paused_false_during_play.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/paused_true_during_pause.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/preload_reflects_none_autoplay.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_canplay.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_canplaythrough.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_loadeddata.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_loadedmetadata.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_during_playing.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/readyState_initial.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/src_reflects_attribute_not_source_elements.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/video_loop_base.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/video_volume_check.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/media-elements/volume_nonfinite.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheareaelementareastringifierexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-area-element/area-stringifier-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-area-element/area-stringifier-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-area-element/area-stringifier-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,21 @@
</span><ins>+
+PASS HTMLAreaElement stringifier 
+FAIL HTMLAreaElement stringifier 1 assert_throws: function &quot;function () {
+        aObject.toString.call(v);
+      }&quot; did not throw
+FAIL HTMLAreaElement stringifier 2 assert_throws: function &quot;function () {
+        aObject.toString.call(v)
+      }&quot; did not throw
+PASS HTMLAreaElement stringifier 3 
+FAIL HTMLAreaElement stringifier 4 assert_equals: expected &quot;&quot; but got &quot;[object HTMLAreaElement]&quot;
+FAIL HTMLAreaElement stringifier 5 assert_equals: expected &quot;&quot; but got &quot;[object HTMLAreaElement]&quot;
+FAIL HTMLAreaElement stringifier 6 assert_throws: function &quot;function () {
+        aObject.toString.call(v);
+      }&quot; did not throw
+FAIL HTMLAreaElement stringifier 7 assert_throws: function &quot;function () {
+        aObject.toString.call(v)
+      }&quot; did not throw
+PASS HTMLAreaElement stringifier 8 
+FAIL HTMLAreaElement stringifier 9 assert_equals: expected &quot;http://127.0.0.1:8000/w3c/html/semantics/embedded-content/the-area-element/foo&quot; but got &quot;[object HTMLAreaElement]&quot;
+FAIL HTMLAreaElement stringifier 10 assert_equals: expected &quot;http://127.0.0.1:8000/w3c/html/semantics/embedded-content/the-area-element/foo&quot; but got &quot;[object HTMLAreaElement]&quot;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheareaelementareastringifierhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-area-element/area-stringifier.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-area-element/area-stringifier.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-area-element/area-stringifier.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,16 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;HTMLAreaElement stringifier&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://heycam.github.io/webidl/#es-stringifier&quot;&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;script src=/w3c/resources/stringifiers.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  test_stringifier_attribute(document.createElement(&quot;area&quot;), &quot;href&quot;, false);
+  var area = document.createElement(&quot;area&quot;);
+  area.setAttribute(&quot;href&quot;, &quot;foo&quot;);
+  test_stringifier_attribute(area, &quot;href&quot;, false);
+})
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheareaelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-area-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-area-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-area-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-area-element/area-stringifier.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheaudioelementaudio_001expectedhtm"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_001-expected.htm (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_001-expected.htm                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_001-expected.htm        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,13 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;html&gt;
+&lt;head&gt;
+  &lt;title&gt;HTML5 Media Elements: Content inside the 'audio' element is not shown to the user.&lt;/title&gt;
+  &lt;meta content=&quot;text/html; charset=UTF-8&quot; http-equiv=&quot;Content-Type&quot;&gt;
+  &lt;link rel=&quot;author&quot; title=&quot;Microsoft&quot; href=&quot;http://www.microsoft.com/&quot; /&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;p&gt;Test passes if there is no red.&lt;/p&gt;
+&lt;div id='testcontent'&gt;
+&lt;/div&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheaudioelementaudio_001htm"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_001.htm (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_001.htm                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_001.htm        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;html&gt;
+&lt;head&gt;
+  &lt;title&gt;HTML5 Media Elements: Content inside the 'audio' element is not shown to the user (image).&lt;/title&gt;
+  &lt;meta content=&quot;text/html; charset=UTF-8&quot; http-equiv=&quot;Content-Type&quot;&gt;
+  &lt;link rel=&quot;author&quot; title=&quot;Microsoft&quot; href=&quot;http://www.microsoft.com/&quot; /&gt;
+  &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#audio&quot; /&gt;
+  &lt;link rel=&quot;match&quot; href=&quot;audio_content-ref.htm&quot; /&gt;
+  &lt;meta name=&quot;assert&quot; content=&quot;Content inside the 'audio' element is not shown to the user (image).&quot; /&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;p&gt;Test passes if there is no red.&lt;/p&gt;
+&lt;div id='testcontent'&gt;
+&lt;audio&gt;&lt;img src=&quot;../../../../w3c/resources/images/fail.gif&quot; /&gt;&lt;/audio&gt;
+
+&lt;/div&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheaudioelementaudio_002expectedhtm"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_002-expected.htm (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_002-expected.htm                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_002-expected.htm        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,13 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;html&gt;
+&lt;head&gt;
+  &lt;title&gt;HTML5 Media Elements: Content inside the 'audio' element is not shown to the user.&lt;/title&gt;
+  &lt;meta content=&quot;text/html; charset=UTF-8&quot; http-equiv=&quot;Content-Type&quot;&gt;
+  &lt;link rel=&quot;author&quot; title=&quot;Microsoft&quot; href=&quot;http://www.microsoft.com/&quot; /&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;p&gt;Test passes if there is no red.&lt;/p&gt;
+&lt;div id='testcontent'&gt;
+&lt;/div&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheaudioelementaudio_002htm"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_002.htm (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_002.htm                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_002.htm        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;html&gt;
+&lt;head&gt;
+  &lt;title&gt;HTML5 Media Elements: Content inside the 'audio' element is not shown to the user.&lt;/title&gt;
+  &lt;meta content=&quot;text/html; charset=UTF-8&quot; http-equiv=&quot;Content-Type&quot;&gt;
+  &lt;link rel=&quot;author&quot; title=&quot;Microsoft&quot; href=&quot;http://www.microsoft.com/&quot; /&gt;
+  &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#audio&quot; /&gt;
+  &lt;link rel=&quot;match&quot; href=&quot;audio_content-ref.htm&quot; /&gt;
+  &lt;meta name=&quot;assert&quot; content=&quot;Content inside the 'audio' element is not shown to the user.&quot; /&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;p&gt;Test passes if there is no red.&lt;/p&gt;
+&lt;div id='testcontent'&gt;
+&lt;audio&gt;&lt;span style=&quot;color: red;&quot;&gt;FAIL&lt;/span&gt;&lt;/audio&gt;
+
+&lt;/div&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheaudioelementaudio_constructorexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_constructor-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_constructor-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_constructor-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,17 @@
</span><ins>+
+PASS Audio constructor 
+FAIL No arguments, without new Audio is not a function. (In 'Audio()', 'Audio' is an instance of AudioConstructor)
+PASS No arguments, with new 
+FAIL Empty string argument, without new Audio is not a function. (In 'Audio(&quot;&quot;)', 'Audio' is an instance of AudioConstructor)
+PASS Empty string argument, with new 
+FAIL Non-empty string argument, without new Audio is not a function. (In 'Audio(&quot;src&quot;)', 'Audio' is an instance of AudioConstructor)
+PASS Non-empty string argument, with new 
+FAIL Null argument, without new Audio is not a function. (In 'Audio(null)', 'Audio' is an instance of AudioConstructor)
+PASS Null argument, with new 
+FAIL Undefined argument, without new Audio is not a function. (In 'Audio(undefined)', 'Audio' is an instance of AudioConstructor)
+FAIL Undefined argument, with new assert_equals: expected (object) null but got (string) &quot;undefined&quot;
+FAIL Extra argument, without new Audio is not a function. (In 'Audio(&quot;&quot;, throwingObject)', 'Audio' is an instance of AudioConstructor)
+PASS Extra argument, with new 
+PASS Calling HTMLAudioElement should throw 
+PASS Constructing HTMLAudioElement should throw 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheaudioelementaudio_constructorhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_constructor.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_constructor.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_constructor.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,51 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Audio constructor&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  var throwingObject = {
+    toString: function() { throw Error() },
+    valueOf: function() { throw Error() }
+  };
+  var tests = [
+    [function() { return Audio() }, null, &quot;No arguments, without new&quot;],
+    [function() { return new Audio() }, null, &quot;No arguments, with new&quot;],
+    [function() { return Audio(&quot;&quot;) }, &quot;&quot;, &quot;Empty string argument, without new&quot;],
+    [function() { return new Audio(&quot;&quot;) }, &quot;&quot;, &quot;Empty string argument, with new&quot;],
+    [function() { return Audio(&quot;src&quot;) }, &quot;src&quot;, &quot;Non-empty string argument, without new&quot;],
+    [function() { return new Audio(&quot;src&quot;) }, &quot;src&quot;, &quot;Non-empty string argument, with new&quot;],
+    [function() { return Audio(null) }, &quot;null&quot;, &quot;Null argument, without new&quot;],
+    [function() { return new Audio(null) }, &quot;null&quot;, &quot;Null argument, with new&quot;],
+    [function() { return Audio(undefined) }, null, &quot;Undefined argument, without new&quot;],
+    [function() { return new Audio(undefined) }, null, &quot;Undefined argument, with new&quot;],
+    [function() { return Audio(&quot;&quot;, throwingObject) }, &quot;&quot;, &quot;Extra argument, without new&quot;],
+    [function() { return new Audio(&quot;&quot;, throwingObject) }, &quot;&quot;, &quot;Extra argument, with new&quot;],
+  ];
+  tests.forEach(function(t) {
+    var fn = t[0], expectedSrc = t[1], description = t[2];
+    test(function() {
+      var element = fn();
+      assert_equals(element.localName, &quot;audio&quot;);
+      assert_equals(element.tagName, &quot;AUDIO&quot;);
+      assert_equals(element.namespaceURI, &quot;http://www.w3.org/1999/xhtml&quot;);
+      assert_equals(element.nodeType, Node.ELEMENT_NODE);
+      assert_equals(element.getAttribute(&quot;preload&quot;), &quot;auto&quot;);
+      assert_equals(element.getAttribute(&quot;src&quot;), expectedSrc);
+      assert_equals(element.ownerDocument, document);
+    }, description);
+  });
+});
+test(function() {
+  assert_throws(new TypeError(), function() {
+    HTMLAudioElement();
+  });
+}, &quot;Calling HTMLAudioElement should throw&quot;);
+test(function() {
+  assert_throws(new TypeError(), function() {
+    new HTMLAudioElement();
+  });
+}, &quot;Constructing HTMLAudioElement should throw&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheaudioelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,22 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_001-expected.htm
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_001.htm
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_002-expected.htm
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_002.htm
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-audio-element/audio_constructor.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dcanvasreadonlyexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.canvas.readonly-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.canvas.readonly-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.canvas.readonly-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+2d.canvas.readonly
+CanvasRenderingContext2D.canvas is readonly
+Actual output:
+
+PASS CanvasRenderingContext2D.canvas is readonly 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dcanvasreadonlyhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.canvas.readonly.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.canvas.readonly.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.canvas.readonly.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,31 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: 2d.canvas.readonly&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;2d.canvas.readonly&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;CanvasRenderingContext2D.canvas is readonly&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;CanvasRenderingContext2D.canvas is readonly&quot;);
+_addTest(function(canvas, ctx) {
+
+var c = document.createElement('canvas');
+var d = ctx.canvas;
+_assertDifferent(c, d, &quot;c&quot;, &quot;d&quot;);
+ctx.canvas = c;
+_assertSame(ctx.canvas, d, &quot;ctx.canvas&quot;, &quot;d&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dcanvasreferenceexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.canvas.reference-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.canvas.reference-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.canvas.reference-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+2d.canvas.reference
+CanvasRenderingContext2D.canvas refers back to its canvas
+Actual output:
+
+PASS CanvasRenderingContext2D.canvas refers back to its canvas 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dcanvasreferencehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.canvas.reference.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.canvas.reference.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.canvas.reference.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,27 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: 2d.canvas.reference&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;2d.canvas.reference&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;CanvasRenderingContext2D.canvas refers back to its canvas&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;CanvasRenderingContext2D.canvas refers back to its canvas&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(ctx.canvas, canvas, &quot;ctx.canvas&quot;, &quot;canvas&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dgetcontextexistsexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.exists-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.exists-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.exists-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+2d.getcontext.exists
+The 2D context is implemented
+Actual output:
+
+PASS The 2D context is implemented 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dgetcontextexistshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.exists.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.exists.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.exists.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,27 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: 2d.getcontext.exists&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;2d.getcontext.exists&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;The 2D context is implemented&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;The 2D context is implemented&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertDifferent(canvas.getContext('2d'), null, &quot;canvas.getContext('2d')&quot;, &quot;null&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dgetcontextextraargsexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.extraargs-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.extraargs-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.extraargs-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+2d.getcontext.extraargs
+The 2D context ignores extra getContext arguments
+Actual output:
+
+PASS The 2D context ignores extra getContext arguments 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dgetcontextextraargshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.extraargs.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.extraargs.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.extraargs.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,27 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: 2d.getcontext.extraargs&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;2d.getcontext.extraargs&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;The 2D context ignores extra getContext arguments&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;The 2D context ignores extra getContext arguments&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertDifferent(canvas.getContext('2d', false, {}, [], 1, &quot;2&quot;), null, &quot;canvas.getContext('2d', false, {}, [], 1, \&quot;2\&quot;)&quot;, &quot;null&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dgetcontextsharedexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.shared-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.shared-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.shared-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+2d.getcontext.shared
+getContext('2d') returns objects which share canvas state
+Actual output:
+Expected output:
+
+
+PASS getContext('2d') returns objects which share canvas state 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dgetcontextsharedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.shared.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.shared.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.shared.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,31 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: 2d.getcontext.shared&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;2d.getcontext.shared&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;getContext('2d') returns objects which share canvas state&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;/w3c/resources/images/green-100x50.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;getContext('2d') returns objects which share canvas state&quot;);
+_addTest(function(canvas, ctx) {
+
+var ctx2 = canvas.getContext('2d');
+ctx.fillStyle = '#f00';
+ctx2.fillStyle = '#0f0';
+ctx.fillRect(0, 0, 100, 50);
+_assertPixel(canvas, 50,25, 0,255,0,255, &quot;50,25&quot;, &quot;0,255,0,255&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dgetcontextuniqueexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.unique-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.unique-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.unique-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+2d.getcontext.unique
+getContext('2d') returns the same object
+Actual output:
+
+PASS getContext('2d') returns the same object 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dgetcontextuniquehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.unique.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.unique.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.unique.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,27 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: 2d.getcontext.unique&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;2d.getcontext.unique&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;getContext('2d') returns the same object&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;getContext('2d') returns the same object&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.getContext('2d'), canvas.getContext('2d'), &quot;canvas.getContext('2d')&quot;, &quot;canvas.getContext('2d')&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dscaledmanualpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.scaled-manual.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.scaled-manual.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dtypeexistsexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.exists-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.exists-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.exists-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+2d.type.exists
+The 2D context interface is a property of 'window'
+Defined in &quot;Web IDL&quot; (draft)
+Actual output:
+
+PASS The 2D context interface is a property of 'window' 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dtypeexistshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.exists.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.exists.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.exists.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,27 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: 2d.type.exists&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;2d.type.exists&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;The 2D context interface is a property of 'window'&lt;/p&gt;
+
+&lt;p class=&quot;notes&quot;&gt;Defined in &quot;Web IDL&quot; (draft)
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;The 2D context interface is a property of 'window'&quot;);
+_addTest(function(canvas, ctx) {
+
+_assert(window.CanvasRenderingContext2D, &quot;window.CanvasRenderingContext2D&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dtypeextendexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.extend-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.extend-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.extend-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+2d.type.extend
+Interface methods can be added
+Defined in &quot;Web IDL&quot; (draft)
+Actual output:
+Expected output:
+
+
+PASS Interface methods can be added 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dtypeextendhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.extend.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.extend.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.extend.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,34 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: 2d.type.extend&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;2d.type.extend&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Interface methods can be added&lt;/p&gt;
+
+&lt;p class=&quot;notes&quot;&gt;Defined in &quot;Web IDL&quot; (draft)
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;/w3c/resources/images/green-100x50.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Interface methods can be added&quot;);
+_addTest(function(canvas, ctx) {
+
+window.CanvasRenderingContext2D.prototype.fillRectGreen = function (x, y, w, h)
+{
+    this.fillStyle = '#0f0';
+    this.fillRect(x, y, w, h);
+};
+ctx.fillStyle = '#f00';
+ctx.fillRectGreen(0, 0, 100, 50);
+_assertPixel(canvas, 50,25, 0,255,0,255, &quot;50,25&quot;, &quot;0,255,0,255&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dtypeprototypeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.prototype-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.prototype-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.prototype-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+2d.type.prototype
+window.CanvasRenderingContext2D.prototype are not [[Writable]] and not [[Configurable]], and its methods are [[Configurable]].
+Defined in &quot;Web IDL&quot; (draft)
+Actual output:
+
+PASS window.CanvasRenderingContext2D.prototype are not [[Writable]] and not [[Configurable]], and its methods are [[Configurable]]. 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dtypeprototypehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.prototype.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.prototype.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.prototype.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,36 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: 2d.type.prototype&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;2d.type.prototype&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;window.CanvasRenderingContext2D.prototype are not [[Writable]] and not [[Configurable]], and its methods are [[Configurable]].&lt;/p&gt;
+
+&lt;p class=&quot;notes&quot;&gt;Defined in &quot;Web IDL&quot; (draft)
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;window.CanvasRenderingContext2D.prototype are not [[Writable]] and not [[Configurable]], and its methods are [[Configurable]].&quot;);
+_addTest(function(canvas, ctx) {
+
+_assert(window.CanvasRenderingContext2D.prototype, &quot;window.CanvasRenderingContext2D.prototype&quot;);
+_assert(window.CanvasRenderingContext2D.prototype.fill, &quot;window.CanvasRenderingContext2D.prototype.fill&quot;);
+window.CanvasRenderingContext2D.prototype = null;
+_assert(window.CanvasRenderingContext2D.prototype, &quot;window.CanvasRenderingContext2D.prototype&quot;);
+delete window.CanvasRenderingContext2D.prototype;
+_assert(window.CanvasRenderingContext2D.prototype, &quot;window.CanvasRenderingContext2D.prototype&quot;);
+window.CanvasRenderingContext2D.prototype.fill = 1;
+_assertSame(window.CanvasRenderingContext2D.prototype.fill, 1, &quot;window.CanvasRenderingContext2D.prototype.fill&quot;, &quot;1&quot;);
+delete window.CanvasRenderingContext2D.prototype.fill;
+_assertSame(window.CanvasRenderingContext2D.prototype.fill, undefined, &quot;window.CanvasRenderingContext2D.prototype.fill&quot;, &quot;undefined&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dtypereplaceexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.replace-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.replace-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.replace-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+2d.type.replace
+Interface methods can be overridden
+Defined in &quot;Web IDL&quot; (draft)
+Actual output:
+Expected output:
+
+
+PASS Interface methods can be overridden 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselement2dtypereplacehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.replace.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.replace.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.replace.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,35 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: 2d.type.replace&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;2d.type.replace&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Interface methods can be overridden&lt;/p&gt;
+
+&lt;p class=&quot;notes&quot;&gt;Defined in &quot;Web IDL&quot; (draft)
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;/w3c/resources/images/green-100x50.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Interface methods can be overridden&quot;);
+_addTest(function(canvas, ctx) {
+
+var fillRect = window.CanvasRenderingContext2D.prototype.fillRect;
+window.CanvasRenderingContext2D.prototype.fillRect = function (x, y, w, h)
+{
+    this.fillStyle = '#0f0';
+    fillRect.call(this, x, y, w, h);
+};
+ctx.fillStyle = '#f00';
+ctx.fillRect(0, 0, 100, 50);
+_assertPixel(canvas, 50,25, 0,255,0,255, &quot;50,25&quot;, &quot;0,255,0,255&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontainsjson"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/contains.json (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/contains.json                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/contains.json        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+[
+    {
+        &quot;id&quot;: &quot;color-spaces-and-color-correction&quot;,
+        &quot;original_id&quot;: &quot;color-spaces-and-color-correction&quot;
+    },
+    {
+        &quot;id&quot;: &quot;security-with-canvas-elements&quot;,
+        &quot;original_id&quot;: &quot;security-with-canvas-elements&quot;
+    }
+]
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextargumentsmissingexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.arguments.missing-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.arguments.missing-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.arguments.missing-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+context.arguments.missing
+Defined in &quot;Web IDL&quot; (draft)
+Actual output:
+
+FAIL Canvas test: context.arguments.missing assert_throws: function &quot;function () { canvas.getContext(); }&quot; did not throw
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextargumentsmissinghtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.arguments.missing.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.arguments.missing.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.arguments.missing.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,27 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: context.arguments.missing&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;context.arguments.missing&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;&lt;/p&gt;
+
+&lt;p class=&quot;notes&quot;&gt;Defined in &quot;Web IDL&quot; (draft)
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;&quot;);
+_addTest(function(canvas, ctx) {
+
+assert_throws(new TypeError(), function() { canvas.getContext(); });
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextcasesensitiveexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.casesensitive-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.casesensitive-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.casesensitive-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+context.casesensitive
+Context name &quot;2D&quot; is unrecognised; matching is case sensitive
+Actual output:
+
+PASS Context name &quot;2D&quot; is unrecognised; matching is case sensitive 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextcasesensitivehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.casesensitive.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.casesensitive.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.casesensitive.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,27 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: context.casesensitive&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;context.casesensitive&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Context name &quot;2D&quot; is unrecognised; matching is case sensitive&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Context name \&quot;2D\&quot; is unrecognised; matching is case sensitive&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.getContext('2D'), null, &quot;canvas.getContext('2D')&quot;, &quot;null&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextemptystringexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.emptystring-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.emptystring-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.emptystring-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+context.emptystring
+getContext with empty string returns null
+Actual output:
+
+PASS getContext with empty string returns null 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextemptystringhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.emptystring.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.emptystring.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.emptystring.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,27 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: context.emptystring&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;context.emptystring&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;getContext with empty string returns null&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;getContext with empty string returns null&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.getContext(&quot;&quot;), null, &quot;canvas.getContext(\&quot;\&quot;)&quot;, &quot;null&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextunrecognisedbadnameexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badname-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badname-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badname-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+context.unrecognised.badname
+getContext with unrecognised context name returns null
+Actual output:
+
+PASS getContext with unrecognised context name returns null 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextunrecognisedbadnamehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badname.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badname.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badname.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,27 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: context.unrecognised.badname&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;context.unrecognised.badname&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;getContext with unrecognised context name returns null&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;getContext with unrecognised context name returns null&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.getContext('This is not an implemented context in any real browser'), null, &quot;canvas.getContext('This is not an implemented context in any real browser')&quot;, &quot;null&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextunrecognisedbadsuffixexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badsuffix-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badsuffix-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badsuffix-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+context.unrecognised.badsuffix
+Context name &quot;2d&quot; plus a suffix is unrecognised
+Actual output:
+
+PASS Context name &quot;2d&quot; plus a suffix is unrecognised 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextunrecognisedbadsuffixhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badsuffix.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badsuffix.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badsuffix.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,27 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: context.unrecognised.badsuffix&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;context.unrecognised.badsuffix&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Context name &quot;2d&quot; plus a suffix is unrecognised&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Context name \&quot;2d\&quot; plus a suffix is unrecognised&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.getContext(&quot;2d#&quot;), null, &quot;canvas.getContext(\&quot;2d#\&quot;)&quot;, &quot;null&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextunrecognisednullsuffixexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.nullsuffix-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.nullsuffix-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.nullsuffix-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+context.unrecognised.nullsuffix
+Context name &quot;2d&quot; plus a &quot;\0&quot; suffix is unrecognised
+Actual output:
+
+PASS Context name &quot;2d&quot; plus a &quot;\0&quot; suffix is unrecognised 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextunrecognisednullsuffixhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.nullsuffix.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.nullsuffix.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.nullsuffix.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,27 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: context.unrecognised.nullsuffix&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;context.unrecognised.nullsuffix&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Context name &quot;2d&quot; plus a &quot;\0&quot; suffix is unrecognised&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Context name \&quot;2d\&quot; plus a \&quot;\\0\&quot; suffix is unrecognised&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.getContext(&quot;2d\0&quot;), null, &quot;canvas.getContext(\&quot;2d\\0\&quot;)&quot;, &quot;null&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextunrecognisedunicodeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.unicode-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.unicode-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.unicode-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+context.unrecognised.unicode
+Context name which kind of looks like &quot;2d&quot; is unrecognised
+Actual output:
+
+PASS Context name which kind of looks like &quot;2d&quot; is unrecognised 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementcontextunrecognisedunicodehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.unicode.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.unicode.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.unicode.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,27 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: context.unrecognised.unicode&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;context.unrecognised.unicode&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Context name which kind of looks like &quot;2d&quot; is unrecognised&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Context name which kind of looks like \&quot;2d\&quot; is unrecognised&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.getContext(&quot;2\uFF44&quot;), null, &quot;canvas.getContext(\&quot;2\\uFF44\&quot;)&quot;, &quot;null&quot;); // Fullwidth Latin Small Letter D
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementfallbackbasicexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.basic-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.basic-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.basic-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+fallback.basic
+Fallback content is inserted into the DOM
+Actual output:
+
+PASS Fallback content is inserted into the DOM 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementfallbackbasichtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.basic.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.basic.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.basic.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,27 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: fallback.basic&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;fallback.basic&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Fallback content is inserted into the DOM&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Fallback content is inserted into the DOM&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.childNodes.length, 1, &quot;canvas.childNodes.length&quot;, &quot;1&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementfallbackmultipleexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.multiple-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.multiple-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.multiple-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+fallback.multiple
+Fallback content with multiple elements
+Actual output:
+
+PASS Fallback content with multiple elements 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementfallbackmultiplehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.multiple.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.multiple.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.multiple.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,27 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: fallback.multiple&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;fallback.multiple&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Fallback content with multiple elements&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL&lt;/p&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Fallback content with multiple elements&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.childNodes.length, 2, &quot;canvas.childNodes.length&quot;, &quot;2&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementfallbacknestedexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.nested-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.nested-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.nested-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+fallback.nested
+Fallback content containing another canvas (mostly testing parsers)
+Actual output:
+
+PASS Fallback content containing another canvas (mostly testing parsers) 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementfallbacknestedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.nested.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.nested.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.nested.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,27 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: fallback.nested&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;fallback.nested&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Fallback content containing another canvas (mostly testing parsers)&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;canvas&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Fallback content containing another canvas (mostly testing parsers)&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.childNodes.length, 2, &quot;canvas.childNodes.length&quot;, &quot;2&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialcolourexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.colour-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.colour-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.colour-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+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:
+Expected output:
+
+
+PASS Initial state is transparent black 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialcolourhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.colour.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.colour.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.colour.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,30 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: initial.colour&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;initial.colour&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Initial state is transparent black&lt;/p&gt;
+
+&lt;p class=&quot;notes&quot;&gt;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.
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;initial.colour.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Initial state is transparent black&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertPixel(canvas, 20,20, 0,0,0,0, &quot;20,20&quot;, &quot;0,0,0,0&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialcolourpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.colour.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.colour.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialreset2dstateexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.2dstate-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.2dstate-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.2dstate-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+initial.reset.2dstate
+Resetting the canvas state resets 2D state variables
+Actual output:
+
+PASS Resetting the canvas state resets 2D state variables 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialreset2dstatehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.2dstate.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.2dstate.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.2dstate.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,103 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: initial.reset.2dstate&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;initial.reset.2dstate&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Resetting the canvas state resets 2D state variables&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Resetting the canvas state resets 2D state variables&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.width = 100;
+var default_val;
+
+default_val = ctx.strokeStyle;
+ctx.strokeStyle = &quot;#ff0000&quot;;
+canvas.width = 100;
+_assertSame(ctx.strokeStyle, default_val, &quot;ctx.strokeStyle&quot;, &quot;default_val&quot;);
+
+default_val = ctx.fillStyle;
+ctx.fillStyle = &quot;#ff0000&quot;;
+canvas.width = 100;
+_assertSame(ctx.fillStyle, default_val, &quot;ctx.fillStyle&quot;, &quot;default_val&quot;);
+
+default_val = ctx.globalAlpha;
+ctx.globalAlpha = 0.5;
+canvas.width = 100;
+_assertSame(ctx.globalAlpha, default_val, &quot;ctx.globalAlpha&quot;, &quot;default_val&quot;);
+
+default_val = ctx.lineWidth;
+ctx.lineWidth = 0.5;
+canvas.width = 100;
+_assertSame(ctx.lineWidth, default_val, &quot;ctx.lineWidth&quot;, &quot;default_val&quot;);
+
+default_val = ctx.lineCap;
+ctx.lineCap = &quot;round&quot;;
+canvas.width = 100;
+_assertSame(ctx.lineCap, default_val, &quot;ctx.lineCap&quot;, &quot;default_val&quot;);
+
+default_val = ctx.lineJoin;
+ctx.lineJoin = &quot;round&quot;;
+canvas.width = 100;
+_assertSame(ctx.lineJoin, default_val, &quot;ctx.lineJoin&quot;, &quot;default_val&quot;);
+
+default_val = ctx.miterLimit;
+ctx.miterLimit = 0.5;
+canvas.width = 100;
+_assertSame(ctx.miterLimit, default_val, &quot;ctx.miterLimit&quot;, &quot;default_val&quot;);
+
+default_val = ctx.shadowOffsetX;
+ctx.shadowOffsetX = 5;
+canvas.width = 100;
+_assertSame(ctx.shadowOffsetX, default_val, &quot;ctx.shadowOffsetX&quot;, &quot;default_val&quot;);
+
+default_val = ctx.shadowOffsetY;
+ctx.shadowOffsetY = 5;
+canvas.width = 100;
+_assertSame(ctx.shadowOffsetY, default_val, &quot;ctx.shadowOffsetY&quot;, &quot;default_val&quot;);
+
+default_val = ctx.shadowBlur;
+ctx.shadowBlur = 5;
+canvas.width = 100;
+_assertSame(ctx.shadowBlur, default_val, &quot;ctx.shadowBlur&quot;, &quot;default_val&quot;);
+
+default_val = ctx.shadowColor;
+ctx.shadowColor = &quot;#ff0000&quot;;
+canvas.width = 100;
+_assertSame(ctx.shadowColor, default_val, &quot;ctx.shadowColor&quot;, &quot;default_val&quot;);
+
+default_val = ctx.globalCompositeOperation;
+ctx.globalCompositeOperation = &quot;copy&quot;;
+canvas.width = 100;
+_assertSame(ctx.globalCompositeOperation, default_val, &quot;ctx.globalCompositeOperation&quot;, &quot;default_val&quot;);
+
+default_val = ctx.font;
+ctx.font = &quot;25px serif&quot;;
+canvas.width = 100;
+_assertSame(ctx.font, default_val, &quot;ctx.font&quot;, &quot;default_val&quot;);
+
+default_val = ctx.textAlign;
+ctx.textAlign = &quot;center&quot;;
+canvas.width = 100;
+_assertSame(ctx.textAlign, default_val, &quot;ctx.textAlign&quot;, &quot;default_val&quot;);
+
+default_val = ctx.textBaseline;
+ctx.textBaseline = &quot;bottom&quot;;
+canvas.width = 100;
+_assertSame(ctx.textBaseline, default_val, &quot;ctx.textBaseline&quot;, &quot;default_val&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetclipexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.clip-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.clip-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.clip-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+initial.reset.clip
+Resetting the canvas state resets the current clip region
+Actual output:
+Expected output:
+
+
+PASS Resetting the canvas state resets the current clip region 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetcliphtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.clip.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.clip.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.clip.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,33 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: initial.reset.clip&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;initial.reset.clip&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Resetting the canvas state resets the current clip region&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;/w3c/resources/images/green-100x50.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Resetting the canvas state resets the current clip region&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.width = 100;
+ctx.rect(0, 0, 1, 1);
+ctx.clip();
+canvas.width = 100;
+ctx.fillStyle = '#0f0';
+ctx.fillRect(0, 0, 100, 50);
+_assertPixel(canvas, 20,20, 0,255,0,255, &quot;20,20&quot;, &quot;0,255,0,255&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetdifferentexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.different-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.different-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.different-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+initial.reset.different
+Changing size resets canvas to transparent black
+Actual output:
+Expected output:
+
+
+PASS Changing size resets canvas to transparent black 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetdifferenthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.different.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.different.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.different.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,31 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: initial.reset.different&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;initial.reset.different&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Changing size resets canvas to transparent black&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;initial.reset.different.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Changing size resets canvas to transparent black&quot;);
+_addTest(function(canvas, ctx) {
+
+ctx.fillStyle = '#f00';
+ctx.fillRect(0, 0, 50, 50);
+_assertPixel(canvas, 20,20, 255,0,0,255, &quot;20,20&quot;, &quot;255,0,0,255&quot;);
+canvas.width = 50;
+_assertPixel(canvas, 20,20, 0,0,0,0, &quot;20,20&quot;, &quot;0,0,0,0&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetdifferentpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.different.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.different.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetgradientexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.gradient-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.gradient-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.gradient-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+initial.reset.gradient
+Resetting the canvas state does not invalidate any existing gradients
+Actual output:
+Expected output:
+
+
+PASS Resetting the canvas state does not invalidate any existing gradients 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetgradienthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.gradient.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.gradient.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.gradient.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,36 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: initial.reset.gradient&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;initial.reset.gradient&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Resetting the canvas state does not invalidate any existing gradients&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;/w3c/resources/images/green-100x50.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Resetting the canvas state does not invalidate any existing gradients&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.width = 50;
+var g = ctx.createLinearGradient(0, 0, 100, 0);
+g.addColorStop(0, '#0f0');
+g.addColorStop(1, '#0f0');
+canvas.width = 100;
+ctx.fillStyle = '#f00';
+ctx.fillRect(0, 0, 100, 50);
+ctx.fillStyle = g;
+ctx.fillRect(0, 0, 100, 50);
+_assertPixel(canvas, 50,25, 0,255,0,255, &quot;50,25&quot;, &quot;0,255,0,255&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetpathexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.path-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.path-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.path-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+initial.reset.path
+Resetting the canvas state resets the current path
+Actual output:
+Expected output:
+
+
+PASS Resetting the canvas state resets the current path 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetpathhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.path.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.path.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.path.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,32 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: initial.reset.path&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;initial.reset.path&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Resetting the canvas state resets the current path&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;initial.reset.path.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Resetting the canvas state resets the current path&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.width = 100;
+ctx.rect(0, 0, 100, 50);
+canvas.width = 100;
+ctx.fillStyle = '#f00';
+ctx.fill();
+_assertPixel(canvas, 20,20, 0,0,0,0, &quot;20,20&quot;, &quot;0,0,0,0&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetpathpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.path.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.path.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetpatternexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.pattern-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.pattern-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.pattern-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+initial.reset.pattern
+Resetting the canvas state does not invalidate any existing patterns
+Actual output:
+Expected output:
+
+
+PASS Resetting the canvas state does not invalidate any existing patterns 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetpatternhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.pattern.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.pattern.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.pattern.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,36 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: initial.reset.pattern&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;initial.reset.pattern&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Resetting the canvas state does not invalidate any existing patterns&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;/w3c/resources/images/green-100x50.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Resetting the canvas state does not invalidate any existing patterns&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.width = 30;
+ctx.fillStyle = '#0f0';
+ctx.fillRect(0, 0, 30, 50);
+var p = ctx.createPattern(canvas, 'repeat-x');
+canvas.width = 100;
+ctx.fillStyle = '#f00';
+ctx.fillRect(0, 0, 100, 50);
+ctx.fillStyle = p;
+ctx.fillRect(0, 0, 100, 50);
+_assertPixel(canvas, 50,25, 0,255,0,255, &quot;50,25&quot;, &quot;0,255,0,255&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetsameexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.same-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.same-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.same-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+initial.reset.same
+Setting size (not changing the value) resets canvas to transparent black
+Actual output:
+Expected output:
+
+
+PASS Setting size (not changing the value) resets canvas to transparent black 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetsamehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.same.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.same.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.same.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,32 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: initial.reset.same&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;initial.reset.same&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Setting size (not changing the value) resets canvas to transparent black&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;initial.reset.same.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Setting size (not changing the value) resets canvas to transparent black&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.width = 100;
+ctx.fillStyle = '#f00';
+ctx.fillRect(0, 0, 50, 50);
+_assertPixel(canvas, 20,20, 255,0,0,255, &quot;20,20&quot;, &quot;255,0,0,255&quot;);
+canvas.width = 100;
+_assertPixel(canvas, 20,20, 0,0,0,0, &quot;20,20&quot;, &quot;0,0,0,0&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresetsamepng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.same.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.same.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresettransformexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.transform-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.transform-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.transform-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+initial.reset.transform
+Resetting the canvas state resets the current transformation matrix
+Actual output:
+Expected output:
+
+
+PASS Resetting the canvas state resets the current transformation matrix 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementinitialresettransformhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.transform.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.transform.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.transform.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,32 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: initial.reset.transform&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;initial.reset.transform&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Resetting the canvas state resets the current transformation matrix&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;/w3c/resources/images/green-100x50.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Resetting the canvas state resets the current transformation matrix&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.width = 100;
+ctx.scale(0.1, 0.1);
+canvas.width = 100;
+ctx.fillStyle = '#0f0';
+ctx.fillRect(0, 0, 100, 50);
+_assertPixel(canvas, 20,20, 0,255,0,255, &quot;20,20&quot;, &quot;0,255,0,255&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritydataURIexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.dataURI-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.dataURI-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.dataURI-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+security.dataURI
+data: URIs do not count as different-origin, and do not taint the canvas
+Actual output:
+Expected output:
+
+
+PASS data: URIs do not count as different-origin, and do not taint the canvas 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritydataURIhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.dataURI.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.dataURI.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.dataURI.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,40 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: security.dataURI&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;security.dataURI&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;data: URIs do not count as different-origin, and do not taint the canvas&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;/w3c/resources/images/green-100x50.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;data: URIs do not count as different-origin, and do not taint the canvas&quot;);
+_addTest(function(canvas, ctx) {
+
+ctx.fillStyle = '#0f0';
+ctx.fillRect(0, 0, 100, 50);
+var data = canvas.toDataURL();
+ctx.fillStyle = '#f00';
+ctx.fillRect(0, 0, 100, 50);
+var img = new Image();
+deferTest();
+img.onload = t.step_func_done(function ()
+{
+    ctx.drawImage(img, 0, 0);
+    canvas.toDataURL(); // should be permitted
+    _assertPixel(canvas, 50,25, 0,255,0,255, &quot;50,25&quot;, &quot;0,255,0,255&quot;);
+});
+img.src = data;
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritydrawImagecanvassubexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.drawImage.canvas.sub-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.drawImage.canvas.sub-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.drawImage.canvas.sub-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+security.drawImage.canvas.sub
+drawImage of unclean canvas makes the canvas origin-unclean
+Actual output:
+
+FAIL drawImage of unclean canvas makes the canvas origin-unclean assert_throws: function &quot;function () { canvas.toDataURL(); }&quot; did not throw
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritydrawImagecanvassubhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.drawImage.canvas.sub.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.drawImage.canvas.sub.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.drawImage.canvas.sub.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,35 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: security.drawImage.canvas.sub&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;security.drawImage.canvas.sub&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;drawImage of unclean canvas makes the canvas origin-unclean&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;drawImage of unclean canvas makes the canvas origin-unclean&quot;);
+_addTest(function(canvas, ctx) {
+
+var canvas2 = document.createElement('canvas');
+canvas2.width = 100;
+canvas2.height = 50;
+var ctx2 = canvas2.getContext('2d');
+ctx2.drawImage(document.getElementById('yellow.png'), 0, 0);
+ctx.drawImage(canvas2, 0, 0);
+assert_throws(&quot;SECURITY_ERR&quot;, function() { canvas.toDataURL(); });
+assert_throws(&quot;SECURITY_ERR&quot;, function() { ctx.getImageData(0, 0, 1, 1); });
+
+
+});
+&lt;/script&gt;
+&lt;img src=&quot;http://{{domains[www2]}}:{{ports[http][0]}}/w3c/resources/images/yellow.png&quot; id=&quot;yellow.png&quot; class=&quot;resource&quot;&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritydrawImageimagesubexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.drawImage.image.sub-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.drawImage.image.sub-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.drawImage.image.sub-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+security.drawImage.image.sub
+drawImage of different-origin image makes the canvas origin-unclean
+Actual output:
+
+FAIL drawImage of different-origin image makes the canvas origin-unclean assert_throws: function &quot;function () { canvas.toDataURL(); }&quot; did not throw
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritydrawImageimagesubhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.drawImage.image.sub.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.drawImage.image.sub.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.drawImage.image.sub.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,30 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: security.drawImage.image.sub&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;security.drawImage.image.sub&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;drawImage of different-origin image makes the canvas origin-unclean&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;drawImage of different-origin image makes the canvas origin-unclean&quot;);
+_addTest(function(canvas, ctx) {
+
+ctx.drawImage(document.getElementById('yellow.png'), 0, 0);
+assert_throws(&quot;SECURITY_ERR&quot;, function() { canvas.toDataURL(); });
+assert_throws(&quot;SECURITY_ERR&quot;, function() { ctx.getImageData(0, 0, 1, 1); });
+
+
+});
+&lt;/script&gt;
+&lt;img src=&quot;http://{{domains[www2]}}:{{ports[http][0]}}/w3c/resources/images/yellow.png&quot; id=&quot;yellow.png&quot; class=&quot;resource&quot;&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatterncanvasfillStylesubexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.fillStyle.sub-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.fillStyle.sub-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.fillStyle.sub-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+security.pattern.canvas.fillStyle.sub
+Setting fillStyle to a pattern of an unclean canvas makes the canvas origin-unclean
+Actual output:
+
+FAIL Setting fillStyle to a pattern of an unclean canvas makes the canvas origin-unclean assert_throws: function &quot;function () { canvas.toDataURL(); }&quot; did not throw
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatterncanvasfillStylesubhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.fillStyle.sub.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.fillStyle.sub.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.fillStyle.sub.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,37 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: security.pattern.canvas.fillStyle.sub&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;security.pattern.canvas.fillStyle.sub&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Setting fillStyle to a pattern of an unclean canvas makes the canvas origin-unclean&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Setting fillStyle to a pattern of an unclean canvas makes the canvas origin-unclean&quot;);
+_addTest(function(canvas, ctx) {
+
+var canvas2 = document.createElement('canvas');
+canvas2.width = 100;
+canvas2.height = 50;
+var ctx2 = canvas2.getContext('2d');
+ctx2.drawImage(document.getElementById('yellow.png'), 0, 0);
+var p = ctx.createPattern(canvas2, 'repeat');
+ctx.fillStyle = p;
+ctx.fillStyle = 'red';
+assert_throws(&quot;SECURITY_ERR&quot;, function() { canvas.toDataURL(); });
+assert_throws(&quot;SECURITY_ERR&quot;, function() { ctx.getImageData(0, 0, 1, 1); });
+
+
+});
+&lt;/script&gt;
+&lt;img src=&quot;http://{{domains[www2]}}:{{ports[http][0]}}/w3c/resources/images/yellow.png&quot; id=&quot;yellow.png&quot; class=&quot;resource&quot;&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatterncanvasstrokeStylesubexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.strokeStyle.sub-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.strokeStyle.sub-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.strokeStyle.sub-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+security.pattern.canvas.strokeStyle.sub
+Setting strokeStyle to a pattern of an unclean canvas makes the canvas origin-unclean
+Actual output:
+
+FAIL Setting strokeStyle to a pattern of an unclean canvas makes the canvas origin-unclean assert_throws: function &quot;function () { canvas.toDataURL(); }&quot; did not throw
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatterncanvasstrokeStylesubhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.strokeStyle.sub.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.strokeStyle.sub.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.strokeStyle.sub.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,37 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: security.pattern.canvas.strokeStyle.sub&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;security.pattern.canvas.strokeStyle.sub&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Setting strokeStyle to a pattern of an unclean canvas makes the canvas origin-unclean&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Setting strokeStyle to a pattern of an unclean canvas makes the canvas origin-unclean&quot;);
+_addTest(function(canvas, ctx) {
+
+var canvas2 = document.createElement('canvas');
+canvas2.width = 100;
+canvas2.height = 50;
+var ctx2 = canvas2.getContext('2d');
+ctx2.drawImage(document.getElementById('yellow.png'), 0, 0);
+var p = ctx.createPattern(canvas2, 'repeat');
+ctx.strokeStyle = p;
+ctx.strokeStyle = 'red';
+assert_throws(&quot;SECURITY_ERR&quot;, function() { canvas.toDataURL(); });
+assert_throws(&quot;SECURITY_ERR&quot;, function() { ctx.getImageData(0, 0, 1, 1); });
+
+
+});
+&lt;/script&gt;
+&lt;img src=&quot;http://{{domains[www2]}}:{{ports[http][0]}}/w3c/resources/images/yellow.png&quot; id=&quot;yellow.png&quot; class=&quot;resource&quot;&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatterncanvastimingsubexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.timing.sub-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.timing.sub-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.timing.sub-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+security.pattern.canvas.timing.sub
+Pattern safety depends on whether the source was origin-clean, not on whether it still is clean
+Disagrees with spec on &quot;is&quot; vs &quot;was&quot;
+Actual output:
+
+PASS Pattern safety depends on whether the source was origin-clean, not on whether it still is clean 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatterncanvastimingsubhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.timing.sub.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.timing.sub.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.timing.sub.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,40 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: security.pattern.canvas.timing.sub&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;security.pattern.canvas.timing.sub&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Pattern safety depends on whether the source was origin-clean, not on whether it still is clean&lt;/p&gt;
+
+&lt;p class=&quot;notes&quot;&gt;Disagrees with spec on &quot;is&quot; vs &quot;was&quot;
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Pattern safety depends on whether the source was origin-clean, not on whether it still is clean&quot;);
+_addTest(function(canvas, ctx) {
+
+var canvas2 = document.createElement('canvas');
+canvas2.width = 100;
+canvas2.height = 50;
+var ctx2 = canvas2.getContext('2d');
+ctx2.fillStyle = '#0f0';
+ctx2.fillRect(0, 0, 100, 50);
+var p = ctx.createPattern(canvas2, 'repeat');
+ctx2.drawImage(document.getElementById('yellow.png'), 0, 0); // make canvas2 origin-unclean
+ctx.fillStyle = p;
+ctx.fillRect(0, 0, 100, 50);
+canvas.toDataURL();
+ctx.getImageData(0, 0, 1, 1);
+_assert(true, &quot;true&quot;); // okay if there was no exception
+
+
+});
+&lt;/script&gt;
+&lt;img src=&quot;http://{{domains[www2]}}:{{ports[http][0]}}/w3c/resources/images/yellow.png&quot; id=&quot;yellow.png&quot; class=&quot;resource&quot;&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatterncreatesubexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.create.sub-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.create.sub-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.create.sub-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+security.pattern.create.sub
+Creating an unclean pattern does not make the canvas origin-unclean
+Actual output:
+
+PASS Creating an unclean pattern does not make the canvas origin-unclean 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatterncreatesubhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.create.sub.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.create.sub.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.create.sub.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,31 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: security.pattern.create.sub&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;security.pattern.create.sub&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Creating an unclean pattern does not make the canvas origin-unclean&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Creating an unclean pattern does not make the canvas origin-unclean&quot;);
+_addTest(function(canvas, ctx) {
+
+var p = ctx.createPattern(document.getElementById('yellow.png'), 'repeat');
+canvas.toDataURL();
+ctx.getImageData(0, 0, 1, 1);
+_assert(true, &quot;true&quot;); // okay if there was no exception
+
+
+});
+&lt;/script&gt;
+&lt;img src=&quot;http://{{domains[www]}}:{{ports[http][0]}}/w3c/resources/images/yellow.png&quot; id=&quot;yellow.png&quot; class=&quot;resource&quot;&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatterncrosssubexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.cross.sub-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.cross.sub-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.cross.sub-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+security.pattern.cross.sub
+Using an unclean pattern makes the target canvas origin-unclean, not the pattern canvas
+Actual output:
+
+FAIL Using an unclean pattern makes the target canvas origin-unclean, not the pattern canvas assert_throws: function &quot;function () { canvas.toDataURL(); }&quot; did not throw
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatterncrosssubhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.cross.sub.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.cross.sub.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.cross.sub.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,38 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: security.pattern.cross.sub&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;security.pattern.cross.sub&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Using an unclean pattern makes the target canvas origin-unclean, not the pattern canvas&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Using an unclean pattern makes the target canvas origin-unclean, not the pattern canvas&quot;);
+_addTest(function(canvas, ctx) {
+
+var canvas2 = document.createElement('canvas');
+canvas2.width = 100;
+canvas2.height = 50;
+var ctx2 = canvas2.getContext('2d');
+var p = ctx2.createPattern(document.getElementById('yellow.png'), 'repeat');
+ctx.fillStyle = p;
+ctx.fillRect(0, 0, 100, 50);
+assert_throws(&quot;SECURITY_ERR&quot;, function() { canvas.toDataURL(); });
+assert_throws(&quot;SECURITY_ERR&quot;, function() { ctx.getImageData(0, 0, 1, 1); });
+canvas2.toDataURL();
+ctx2.getImageData(0, 0, 1, 1);
+
+
+});
+&lt;/script&gt;
+&lt;img src=&quot;http://{{domains[www2]}}:{{ports[http][0]}}/w3c/resources/images/yellow.png&quot; id=&quot;yellow.png&quot; class=&quot;resource&quot;&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatternimagefillStylesubexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.image.fillStyle.sub-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.image.fillStyle.sub-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.image.fillStyle.sub-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+security.pattern.image.fillStyle.sub
+Setting fillStyle to a pattern of a different-origin image makes the canvas origin-unclean
+Actual output:
+
+FAIL Setting fillStyle to a pattern of a different-origin image makes the canvas origin-unclean assert_throws: function &quot;function () { canvas.toDataURL(); }&quot; did not throw
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatternimagefillStylesubhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.image.fillStyle.sub.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.image.fillStyle.sub.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.image.fillStyle.sub.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,32 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: security.pattern.image.fillStyle.sub&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;security.pattern.image.fillStyle.sub&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Setting fillStyle to a pattern of a different-origin image makes the canvas origin-unclean&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Setting fillStyle to a pattern of a different-origin image makes the canvas origin-unclean&quot;);
+_addTest(function(canvas, ctx) {
+
+var p = ctx.createPattern(document.getElementById('yellow.png'), 'repeat');
+ctx.fillStyle = p;
+ctx.fillStyle = 'red';
+assert_throws(&quot;SECURITY_ERR&quot;, function() { canvas.toDataURL(); });
+assert_throws(&quot;SECURITY_ERR&quot;, function() { ctx.getImageData(0, 0, 1, 1); });
+
+
+});
+&lt;/script&gt;
+&lt;img src=&quot;http://{{domains[www2]}}:{{ports[http][0]}}/w3c/resources/images/yellow.png&quot; id=&quot;yellow.png&quot; class=&quot;resource&quot;&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatternimagestrokeStylesubexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.image.strokeStyle.sub-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.image.strokeStyle.sub-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.image.strokeStyle.sub-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+security.pattern.image.strokeStyle.sub
+Setting strokeStyle to a pattern of a different-origin image makes the canvas origin-unclean
+Actual output:
+
+FAIL Setting strokeStyle to a pattern of a different-origin image makes the canvas origin-unclean assert_throws: function &quot;function () { canvas.toDataURL(); }&quot; did not throw
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecuritypatternimagestrokeStylesubhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.image.strokeStyle.sub.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.image.strokeStyle.sub.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.image.strokeStyle.sub.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,32 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: security.pattern.image.strokeStyle.sub&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;security.pattern.image.strokeStyle.sub&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Setting strokeStyle to a pattern of a different-origin image makes the canvas origin-unclean&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Setting strokeStyle to a pattern of a different-origin image makes the canvas origin-unclean&quot;);
+_addTest(function(canvas, ctx) {
+
+var p = ctx.createPattern(document.getElementById('yellow.png'), 'repeat');
+ctx.strokeStyle = p;
+ctx.strokeStyle = 'red';
+assert_throws(&quot;SECURITY_ERR&quot;, function() { canvas.toDataURL(); });
+assert_throws(&quot;SECURITY_ERR&quot;, function() { ctx.getImageData(0, 0, 1, 1); });
+
+
+});
+&lt;/script&gt;
+&lt;img src=&quot;http://{{domains[www2]}}:{{ports[http][0]}}/w3c/resources/images/yellow.png&quot; id=&quot;yellow.png&quot; class=&quot;resource&quot;&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecurityresetsubexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.reset.sub-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.reset.sub-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.reset.sub-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+security.reset.sub
+Resetting the canvas state does not reset the origin-clean flag
+Actual output:
+
+FAIL Resetting the canvas state does not reset the origin-clean flag assert_throws: function &quot;function () { canvas.toDataURL(); }&quot; did not throw
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsecurityresetsubhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.reset.sub.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.reset.sub.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.reset.sub.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,32 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: security.reset.sub&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;security.reset.sub&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Resetting the canvas state does not reset the origin-clean flag&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Resetting the canvas state does not reset the origin-clean flag&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.width = 50;
+ctx.drawImage(document.getElementById('yellow.png'), 0, 0);
+assert_throws(&quot;SECURITY_ERR&quot;, function() { canvas.toDataURL(); });
+canvas.width = 100;
+assert_throws(&quot;SECURITY_ERR&quot;, function() { canvas.toDataURL(); });
+
+
+});
+&lt;/script&gt;
+&lt;img src=&quot;http://{{domains[www2]}}:{{ports[http][0]}}/w3c/resources/images/yellow.png&quot; id=&quot;yellow.png&quot; class=&quot;resource&quot;&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesdefaultexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.default-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.default-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.default-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.default
+Default width/height when attributes are missing
+Actual output:
+Expected output:
+
+
+PASS Default width/height when attributes are missing 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesdefaulthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.default.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.default.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.default.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,30 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.default&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.default&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Default width/height when attributes are missing&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; &gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.default.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Default width/height when attributes are missing&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.width, 300, &quot;canvas.width&quot;, &quot;300&quot;);
+_assertSame(canvas.height, 150, &quot;canvas.height&quot;, &quot;150&quot;);
+_assert(!canvas.hasAttribute('width'), &quot;!canvas.hasAttribute('width')&quot;);
+_assert(!canvas.hasAttribute('height'), &quot;!canvas.hasAttribute('height')&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesdefaultpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.default.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.default.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesgetpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.get.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.get.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesidlexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.idl-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.idl-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.idl-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+size.attributes.idl
+Getting/setting width/height IDL attributes
+Actual output:
+
+PASS Getting/setting width/height IDL attributes 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesidlhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.idl.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.idl.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.idl.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,50 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.idl&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.idl&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Getting/setting width/height IDL attributes&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Getting/setting width/height IDL attributes&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.width = &quot;100&quot;;
+canvas.height = &quot;100&quot;;
+_assertSame(canvas.width, 100, &quot;canvas.width&quot;, &quot;100&quot;);
+_assertSame(canvas.height, 100, &quot;canvas.height&quot;, &quot;100&quot;);
+
+canvas.width = &quot;+1.5e2&quot;;
+canvas.height = &quot;0x96&quot;;
+_assertSame(canvas.width, 150, &quot;canvas.width&quot;, &quot;150&quot;);
+_assertSame(canvas.height, 150, &quot;canvas.height&quot;, &quot;150&quot;);
+
+canvas.width = 200 - Math.pow(2, 32);
+canvas.height = 200 - Math.pow(2, 32);
+_assertSame(canvas.width, 200, &quot;canvas.width&quot;, &quot;200&quot;);
+_assertSame(canvas.height, 200, &quot;canvas.height&quot;, &quot;200&quot;);
+
+canvas.width = 301.999;
+canvas.height = 301.001;
+_assertSame(canvas.width, 301, &quot;canvas.width&quot;, &quot;301&quot;);
+_assertSame(canvas.height, 301, &quot;canvas.height&quot;, &quot;301&quot;);
+
+canvas.width = &quot;400x&quot;;
+canvas.height = &quot;foo&quot;;
+_assertSame(canvas.width, 0, &quot;canvas.width&quot;, &quot;0&quot;);
+_assertSame(canvas.height, 0, &quot;canvas.height&quot;, &quot;0&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesidlsetzeroexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.idl.set.zero-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.idl.set.zero-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.idl.set.zero-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+size.attributes.idl.set.zero
+Setting width/height IDL attributes to 0
+Actual output:
+
+PASS Setting width/height IDL attributes to 0 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesidlsetzerohtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.idl.set.zero.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.idl.set.zero.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.idl.set.zero.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,30 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.idl.set.zero&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.idl.set.zero&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Setting width/height IDL attributes to 0&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Setting width/height IDL attributes to 0&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.width = 0;
+canvas.height = 0;
+_assertSame(canvas.width, 0, &quot;canvas.width&quot;, &quot;0&quot;);
+_assertSame(canvas.height, 0, &quot;canvas.height&quot;, &quot;0&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsedecimalexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.decimal-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.decimal-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.decimal-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.parse.decimal
+Parsing of non-negative integers
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsedecimalhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.decimal.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.decimal.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.decimal.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,31 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.parse.decimal&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.parse.decimal&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100.999&quot; height=&quot;100.999&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.parse.decimal.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.width, 100, &quot;canvas.width&quot;, &quot;100&quot;);
+_assertSame(canvas.height, 100, &quot;canvas.height&quot;, &quot;100&quot;);
+_assertSame(window.getComputedStyle(canvas, null).getPropertyValue(&quot;width&quot;), &quot;100px&quot;, &quot;window.getComputedStyle(canvas, null).getPropertyValue(\&quot;width\&quot;)&quot;, &quot;\&quot;100px\&quot;&quot;);
+_assertSame(canvas.getAttribute('width'), '100.999', &quot;canvas.getAttribute('width')&quot;, &quot;'100.999'&quot;);
+_assertSame(canvas.getAttribute('height'), '100.999', &quot;canvas.getAttribute('height')&quot;, &quot;'100.999'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsedecimalpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.decimal.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.decimal.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseemexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.em-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.em-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.em-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.parse.em
+Parsing of non-negative integers
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseemhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.em.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.em.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.em.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,31 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.parse.em&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.parse.em&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100em&quot; height=&quot;100em&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.parse.em.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.width, 100, &quot;canvas.width&quot;, &quot;100&quot;);
+_assertSame(canvas.height, 100, &quot;canvas.height&quot;, &quot;100&quot;);
+_assertSame(window.getComputedStyle(canvas, null).getPropertyValue(&quot;width&quot;), &quot;100px&quot;, &quot;window.getComputedStyle(canvas, null).getPropertyValue(\&quot;width\&quot;)&quot;, &quot;\&quot;100px\&quot;&quot;);
+_assertSame(canvas.getAttribute('width'), '100em', &quot;canvas.getAttribute('width')&quot;, &quot;'100em'&quot;);
+_assertSame(canvas.getAttribute('height'), '100em', &quot;canvas.getAttribute('height')&quot;, &quot;'100em'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseempng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.em.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.em.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseemptyexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.empty-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.empty-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.empty-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.parse.empty
+Parsing of non-negative integers
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseemptyhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.empty.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.empty.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.empty.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,30 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.parse.empty&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.parse.empty&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;&quot; height=&quot;&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.parse.empty.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.width, 300, &quot;canvas.width&quot;, &quot;300&quot;);
+_assertSame(canvas.height, 150, &quot;canvas.height&quot;, &quot;150&quot;);
+_assertSame(canvas.getAttribute('width'), '', &quot;canvas.getAttribute('width')&quot;, &quot;''&quot;);
+_assertSame(canvas.getAttribute('height'), '', &quot;canvas.getAttribute('height')&quot;, &quot;''&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseemptypng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.empty.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.empty.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseexpexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.exp-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.exp-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.exp-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.parse.exp
+Parsing of non-negative integers
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseexphtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.exp.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.exp.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.exp.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,31 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.parse.exp&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.parse.exp&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100e1&quot; height=&quot;100e1&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.parse.exp.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.width, 100, &quot;canvas.width&quot;, &quot;100&quot;);
+_assertSame(canvas.height, 100, &quot;canvas.height&quot;, &quot;100&quot;);
+_assertSame(window.getComputedStyle(canvas, null).getPropertyValue(&quot;width&quot;), &quot;100px&quot;, &quot;window.getComputedStyle(canvas, null).getPropertyValue(\&quot;width\&quot;)&quot;, &quot;\&quot;100px\&quot;&quot;);
+_assertSame(canvas.getAttribute('width'), '100e1', &quot;canvas.getAttribute('width')&quot;, &quot;'100e1'&quot;);
+_assertSame(canvas.getAttribute('height'), '100e1', &quot;canvas.getAttribute('height')&quot;, &quot;'100e1'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseexppng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.exp.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.exp.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsehexexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.hex-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.hex-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.hex-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+size.attributes.parse.hex
+Parsing of non-negative integers
+Actual output:
+
+PASS Parsing of non-negative integers 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsehexhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.hex.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.hex.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.hex.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,31 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.parse.hex&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.parse.hex&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;0x100&quot; height=&quot;0x100&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.width, 0, &quot;canvas.width&quot;, &quot;0&quot;);
+_assertSame(canvas.height, 0, &quot;canvas.height&quot;, &quot;0&quot;);
+_assertSame(window.getComputedStyle(canvas, null).getPropertyValue(&quot;width&quot;), &quot;0px&quot;, &quot;window.getComputedStyle(canvas, null).getPropertyValue(\&quot;width\&quot;)&quot;, &quot;\&quot;0px\&quot;&quot;);
+_assertSame(canvas.getAttribute('width'), '0x100', &quot;canvas.getAttribute('width')&quot;, &quot;'0x100'&quot;);
+_assertSame(canvas.getAttribute('height'), '0x100', &quot;canvas.getAttribute('height')&quot;, &quot;'0x100'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsejunkexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.junk-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.junk-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.junk-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.parse.junk
+Parsing of non-negative integers
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsejunkhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.junk.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.junk.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.junk.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,30 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.parse.junk&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.parse.junk&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;#!?&quot; height=&quot;#!?&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.parse.junk.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.width, 300, &quot;canvas.width&quot;, &quot;300&quot;);
+_assertSame(canvas.height, 150, &quot;canvas.height&quot;, &quot;150&quot;);
+_assertSame(canvas.getAttribute('width'), '#!?', &quot;canvas.getAttribute('width')&quot;, &quot;'#!?'&quot;);
+_assertSame(canvas.getAttribute('height'), '#!?', &quot;canvas.getAttribute('height')&quot;, &quot;'#!?'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsejunkpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.junk.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.junk.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseminusexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.minus-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.minus-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.minus-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.parse.minus
+Parsing of non-negative integers
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseminushtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.minus.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.minus.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.minus.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,30 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.parse.minus&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.parse.minus&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;-100&quot; height=&quot;-100&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.parse.minus.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.width, 300, &quot;canvas.width&quot;, &quot;300&quot;);
+_assertSame(canvas.height, 150, &quot;canvas.height&quot;, &quot;150&quot;);
+_assertSame(canvas.getAttribute('width'), '-100', &quot;canvas.getAttribute('width')&quot;, &quot;'-100'&quot;);
+_assertSame(canvas.getAttribute('height'), '-100', &quot;canvas.getAttribute('height')&quot;, &quot;'-100'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseminuspng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.minus.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.minus.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseoctalexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.octal-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.octal-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.octal-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.parse.octal
+Parsing of non-negative integers
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseoctalhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.octal.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.octal.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.octal.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,31 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.parse.octal&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.parse.octal&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;0100&quot; height=&quot;0100&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.parse.octal.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.width, 100, &quot;canvas.width&quot;, &quot;100&quot;);
+_assertSame(canvas.height, 100, &quot;canvas.height&quot;, &quot;100&quot;);
+_assertSame(window.getComputedStyle(canvas, null).getPropertyValue(&quot;width&quot;), &quot;100px&quot;, &quot;window.getComputedStyle(canvas, null).getPropertyValue(\&quot;width\&quot;)&quot;, &quot;\&quot;100px\&quot;&quot;);
+_assertSame(canvas.getAttribute('width'), '0100', &quot;canvas.getAttribute('width')&quot;, &quot;'0100'&quot;);
+_assertSame(canvas.getAttribute('height'), '0100', &quot;canvas.getAttribute('height')&quot;, &quot;'0100'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseoctalpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.octal.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.octal.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseonlyspaceexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.onlyspace-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.onlyspace-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.onlyspace-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.parse.onlyspace
+Parsing of non-negative integers
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseonlyspacehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.onlyspace.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.onlyspace.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.onlyspace.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,30 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.parse.onlyspace&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.parse.onlyspace&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;  &quot; height=&quot;  &quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.parse.onlyspace.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.width, 300, &quot;canvas.width&quot;, &quot;300&quot;);
+_assertSame(canvas.height, 150, &quot;canvas.height&quot;, &quot;150&quot;);
+_assertSame(canvas.getAttribute('width'), '  ', &quot;canvas.getAttribute('width')&quot;, &quot;'  '&quot;);
+_assertSame(canvas.getAttribute('height'), '  ', &quot;canvas.getAttribute('height')&quot;, &quot;'  '&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseonlyspacepng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.onlyspace.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.onlyspace.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsepercentexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.percent-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.percent-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.percent-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.parse.percent
+Parsing of non-negative integers
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsepercenthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.percent.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.percent.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.percent.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,31 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.parse.percent&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.parse.percent&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100%&quot; height=&quot;100%&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.parse.percent.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.width, 100, &quot;canvas.width&quot;, &quot;100&quot;);
+_assertSame(canvas.height, 100, &quot;canvas.height&quot;, &quot;100&quot;);
+_assertSame(window.getComputedStyle(canvas, null).getPropertyValue(&quot;width&quot;), &quot;100px&quot;, &quot;window.getComputedStyle(canvas, null).getPropertyValue(\&quot;width\&quot;)&quot;, &quot;\&quot;100px\&quot;&quot;);
+_assertSame(canvas.getAttribute('width'), '100%', &quot;canvas.getAttribute('width')&quot;, &quot;'100%'&quot;);
+_assertSame(canvas.getAttribute('height'), '100%', &quot;canvas.getAttribute('height')&quot;, &quot;'100%'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsepercentpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.percent.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.percent.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseplusexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.plus-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.plus-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.plus-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.parse.plus
+Parsing of non-negative integers
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparseplushtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.plus.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.plus.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.plus.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,31 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.parse.plus&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.parse.plus&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;+100&quot; height=&quot;+100&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.parse.plus.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.width, 100, &quot;canvas.width&quot;, &quot;100&quot;);
+_assertSame(canvas.height, 100, &quot;canvas.height&quot;, &quot;100&quot;);
+_assertSame(window.getComputedStyle(canvas, null).getPropertyValue(&quot;width&quot;), &quot;100px&quot;, &quot;window.getComputedStyle(canvas, null).getPropertyValue(\&quot;width\&quot;)&quot;, &quot;\&quot;100px\&quot;&quot;);
+_assertSame(canvas.getAttribute('width'), '+100', &quot;canvas.getAttribute('width')&quot;, &quot;'+100'&quot;);
+_assertSame(canvas.getAttribute('height'), '+100', &quot;canvas.getAttribute('height')&quot;, &quot;'+100'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsepluspng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.plus.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.plus.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsespaceexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.space-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.space-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.space-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.parse.space
+Parsing of non-negative integers
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsespacehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.space.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.space.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.space.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,31 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.parse.space&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.parse.space&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;  100&quot; height=&quot;  100&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.parse.space.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.width, 100, &quot;canvas.width&quot;, &quot;100&quot;);
+_assertSame(canvas.height, 100, &quot;canvas.height&quot;, &quot;100&quot;);
+_assertSame(window.getComputedStyle(canvas, null).getPropertyValue(&quot;width&quot;), &quot;100px&quot;, &quot;window.getComputedStyle(canvas, null).getPropertyValue(\&quot;width\&quot;)&quot;, &quot;\&quot;100px\&quot;&quot;);
+_assertSame(canvas.getAttribute('width'), '  100', &quot;canvas.getAttribute('width')&quot;, &quot;'  100'&quot;);
+_assertSame(canvas.getAttribute('height'), '  100', &quot;canvas.getAttribute('height')&quot;, &quot;'  100'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsespacepng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.space.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.space.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsetrailingjunkexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.trailingjunk-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.trailingjunk-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.trailingjunk-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.parse.trailingjunk
+Parsing of non-negative integers
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsetrailingjunkhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.trailingjunk.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.trailingjunk.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.trailingjunk.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,31 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.parse.trailingjunk&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.parse.trailingjunk&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100#!?&quot; height=&quot;100#!?&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.parse.trailingjunk.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.width, 100, &quot;canvas.width&quot;, &quot;100&quot;);
+_assertSame(canvas.height, 100, &quot;canvas.height&quot;, &quot;100&quot;);
+_assertSame(window.getComputedStyle(canvas, null).getPropertyValue(&quot;width&quot;), &quot;100px&quot;, &quot;window.getComputedStyle(canvas, null).getPropertyValue(\&quot;width\&quot;)&quot;, &quot;\&quot;100px\&quot;&quot;);
+_assertSame(canvas.getAttribute('width'), '100#!?', &quot;canvas.getAttribute('width')&quot;, &quot;'100#!?'&quot;);
+_assertSame(canvas.getAttribute('height'), '100#!?', &quot;canvas.getAttribute('height')&quot;, &quot;'100#!?'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsetrailingjunkpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.trailingjunk.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.trailingjunk.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsewhitespaceexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.whitespace-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.whitespace-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.whitespace-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.parse.whitespace
+Parsing of non-negative integers
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsewhitespacehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.whitespace.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.whitespace.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.whitespace.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,33 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.parse.whitespace&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.parse.whitespace&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;
+         100&quot; height=&quot;
+         100&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.parse.whitespace.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.width, 100, &quot;canvas.width&quot;, &quot;100&quot;);
+_assertSame(canvas.height, 100, &quot;canvas.height&quot;, &quot;100&quot;);
+_assertSame(window.getComputedStyle(canvas, null).getPropertyValue(&quot;width&quot;), &quot;100px&quot;, &quot;window.getComputedStyle(canvas, null).getPropertyValue(\&quot;width\&quot;)&quot;, &quot;\&quot;100px\&quot;&quot;);
+_assertSame(canvas.getAttribute('width'), '\n\t\x0c100', &quot;canvas.getAttribute('width')&quot;, &quot;'\\n\\t\\x0c100'&quot;);
+_assertSame(canvas.getAttribute('height'), '\n\t\x0c100', &quot;canvas.getAttribute('height')&quot;, &quot;'\\n\\t\\x0c100'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsewhitespacepng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.whitespace.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.whitespace.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsezeroexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.zero-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.zero-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.zero-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+size.attributes.parse.zero
+Parsing of non-negative integers
+Actual output:
+
+PASS Parsing of non-negative integers 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesparsezerohtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.zero.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.zero.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.zero.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,31 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.parse.zero&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.parse.zero&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;0&quot; height=&quot;0&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.width, 0, &quot;canvas.width&quot;, &quot;0&quot;);
+_assertSame(canvas.height, 0, &quot;canvas.height&quot;, &quot;0&quot;);
+_assertSame(window.getComputedStyle(canvas, null).getPropertyValue(&quot;width&quot;), &quot;0px&quot;, &quot;window.getComputedStyle(canvas, null).getPropertyValue(\&quot;width\&quot;)&quot;, &quot;\&quot;0px\&quot;&quot;);
+_assertSame(canvas.getAttribute('width'), '0', &quot;canvas.getAttribute('width')&quot;, &quot;'0'&quot;);
+_assertSame(canvas.getAttribute('height'), '0', &quot;canvas.getAttribute('height')&quot;, &quot;'0'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesreflectsetcontentexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setcontent-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setcontent-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setcontent-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.reflect.setcontent
+Setting content attributes updates IDL and content attributes
+Actual output:
+Expected output:
+
+
+PASS Setting content attributes updates IDL and content attributes 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesreflectsetcontenthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setcontent.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setcontent.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setcontent.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,32 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.reflect.setcontent&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.reflect.setcontent&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Setting content attributes updates IDL and content attributes&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.reflect.setcontent.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Setting content attributes updates IDL and content attributes&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.setAttribute('width', '120');
+canvas.setAttribute('height', '60');
+_assertSame(canvas.getAttribute('width'), '120', &quot;canvas.getAttribute('width')&quot;, &quot;'120'&quot;);
+_assertSame(canvas.getAttribute('height'), '60', &quot;canvas.getAttribute('height')&quot;, &quot;'60'&quot;);
+_assertSame(canvas.width, 120, &quot;canvas.width&quot;, &quot;120&quot;);
+_assertSame(canvas.height, 60, &quot;canvas.height&quot;, &quot;60&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesreflectsetcontentpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setcontent.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setcontent.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesreflectsetidlexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidl-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidl-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidl-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.reflect.setidl
+Setting IDL attributes updates IDL and content attributes
+Actual output:
+Expected output:
+
+
+PASS Setting IDL attributes updates IDL and content attributes 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesreflectsetidlhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidl.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidl.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidl.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,32 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.reflect.setidl&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.reflect.setidl&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Setting IDL attributes updates IDL and content attributes&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.reflect.setidl.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Setting IDL attributes updates IDL and content attributes&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.width = 120;
+canvas.height = 60;
+_assertSame(canvas.getAttribute('width'), '120', &quot;canvas.getAttribute('width')&quot;, &quot;'120'&quot;);
+_assertSame(canvas.getAttribute('height'), '60', &quot;canvas.getAttribute('height')&quot;, &quot;'60'&quot;);
+_assertSame(canvas.width, 120, &quot;canvas.width&quot;, &quot;120&quot;);
+_assertSame(canvas.height, 60, &quot;canvas.height&quot;, &quot;60&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesreflectsetidlpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidl.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidl.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesreflectsetidlzeroexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidlzero-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidlzero-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidlzero-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+size.attributes.reflect.setidlzero
+Setting IDL attributes to 0 updates IDL and content attributes
+Actual output:
+
+PASS Setting IDL attributes to 0 updates IDL and content attributes 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesreflectsetidlzerohtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidlzero.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidlzero.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidlzero.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,32 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.reflect.setidlzero&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.reflect.setidlzero&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Setting IDL attributes to 0 updates IDL and content attributes&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Setting IDL attributes to 0 updates IDL and content attributes&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.width = 0;
+canvas.height = 0;
+_assertSame(canvas.getAttribute('width'), '0', &quot;canvas.getAttribute('width')&quot;, &quot;'0'&quot;);
+_assertSame(canvas.getAttribute('height'), '0', &quot;canvas.getAttribute('height')&quot;, &quot;'0'&quot;);
+_assertSame(canvas.width, 0, &quot;canvas.width&quot;, &quot;0&quot;);
+_assertSame(canvas.height, 0, &quot;canvas.height&quot;, &quot;0&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesremovedexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.removed-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.removed-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.removed-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.removed
+Removing content attributes reverts to default size
+Actual output:
+Expected output:
+
+
+PASS Removing content attributes reverts to default size 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesremovedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.removed.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.removed.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.removed.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,29 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.removed&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.removed&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Removing content attributes reverts to default size&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;120&quot; height=&quot;60&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.removed.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Removing content attributes reverts to default size&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.width, 120, &quot;canvas.width&quot;, &quot;120&quot;);
+canvas.removeAttribute('width');
+_assertSame(canvas.width, 300, &quot;canvas.width&quot;, &quot;300&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesremovedpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.removed.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.removed.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.set.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.set.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributedecimalexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.decimal-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.decimal-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.decimal-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.setAttribute.decimal
+Parsing of non-negative integers in setAttribute
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers in setAttribute 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributedecimalhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.decimal.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.decimal.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.decimal.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,33 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.setAttribute.decimal&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.setAttribute.decimal&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers in setAttribute&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;50&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.setAttribute.decimal.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers in setAttribute&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.setAttribute('width', '100.999');
+canvas.setAttribute('height', '100.999');
+_assertSame(canvas.width, 100, &quot;canvas.width&quot;, &quot;100&quot;);
+_assertSame(canvas.height, 100, &quot;canvas.height&quot;, &quot;100&quot;);
+_assertSame(window.getComputedStyle(canvas, null).getPropertyValue(&quot;width&quot;), &quot;100px&quot;, &quot;window.getComputedStyle(canvas, null).getPropertyValue(\&quot;width\&quot;)&quot;, &quot;\&quot;100px\&quot;&quot;);
+_assertSame(canvas.getAttribute('width'), '100.999', &quot;canvas.getAttribute('width')&quot;, &quot;'100.999'&quot;);
+_assertSame(canvas.getAttribute('height'), '100.999', &quot;canvas.getAttribute('height')&quot;, &quot;'100.999'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributedecimalpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.decimal.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.decimal.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeemexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.em-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.em-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.em-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.setAttribute.em
+Parsing of non-negative integers in setAttribute
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers in setAttribute 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeemhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.em.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.em.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.em.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,33 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.setAttribute.em&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.setAttribute.em&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers in setAttribute&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;50&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.setAttribute.em.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers in setAttribute&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.setAttribute('width', '100em');
+canvas.setAttribute('height', '100em');
+_assertSame(canvas.width, 100, &quot;canvas.width&quot;, &quot;100&quot;);
+_assertSame(canvas.height, 100, &quot;canvas.height&quot;, &quot;100&quot;);
+_assertSame(window.getComputedStyle(canvas, null).getPropertyValue(&quot;width&quot;), &quot;100px&quot;, &quot;window.getComputedStyle(canvas, null).getPropertyValue(\&quot;width\&quot;)&quot;, &quot;\&quot;100px\&quot;&quot;);
+_assertSame(canvas.getAttribute('width'), '100em', &quot;canvas.getAttribute('width')&quot;, &quot;'100em'&quot;);
+_assertSame(canvas.getAttribute('height'), '100em', &quot;canvas.getAttribute('height')&quot;, &quot;'100em'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeempng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.em.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.em.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeemptyexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.empty-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.empty-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.empty-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.setAttribute.empty
+Parsing of non-negative integers in setAttribute
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers in setAttribute 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeemptyhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.empty.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.empty.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.empty.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,32 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.setAttribute.empty&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.setAttribute.empty&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers in setAttribute&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;50&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.setAttribute.empty.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers in setAttribute&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.setAttribute('width', '');
+canvas.setAttribute('height', '');
+_assertSame(canvas.width, 300, &quot;canvas.width&quot;, &quot;300&quot;);
+_assertSame(canvas.height, 150, &quot;canvas.height&quot;, &quot;150&quot;);
+_assertSame(canvas.getAttribute('width'), '', &quot;canvas.getAttribute('width')&quot;, &quot;''&quot;);
+_assertSame(canvas.getAttribute('height'), '', &quot;canvas.getAttribute('height')&quot;, &quot;''&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeemptypng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.empty.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.empty.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeexpexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.exp-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.exp-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.exp-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.setAttribute.exp
+Parsing of non-negative integers in setAttribute
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers in setAttribute 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeexphtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.exp.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.exp.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.exp.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,33 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.setAttribute.exp&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.setAttribute.exp&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers in setAttribute&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;50&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.setAttribute.exp.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers in setAttribute&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.setAttribute('width', '100e1');
+canvas.setAttribute('height', '100e1');
+_assertSame(canvas.width, 100, &quot;canvas.width&quot;, &quot;100&quot;);
+_assertSame(canvas.height, 100, &quot;canvas.height&quot;, &quot;100&quot;);
+_assertSame(window.getComputedStyle(canvas, null).getPropertyValue(&quot;width&quot;), &quot;100px&quot;, &quot;window.getComputedStyle(canvas, null).getPropertyValue(\&quot;width\&quot;)&quot;, &quot;\&quot;100px\&quot;&quot;);
+_assertSame(canvas.getAttribute('width'), '100e1', &quot;canvas.getAttribute('width')&quot;, &quot;'100e1'&quot;);
+_assertSame(canvas.getAttribute('height'), '100e1', &quot;canvas.getAttribute('height')&quot;, &quot;'100e1'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeexppng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.exp.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.exp.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributehexexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.hex-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.hex-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.hex-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+size.attributes.setAttribute.hex
+Parsing of non-negative integers in setAttribute
+Actual output:
+
+PASS Parsing of non-negative integers in setAttribute 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributehexhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.hex.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.hex.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.hex.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,33 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.setAttribute.hex&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.setAttribute.hex&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers in setAttribute&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;50&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers in setAttribute&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.setAttribute('width', '0x100');
+canvas.setAttribute('height', '0x100');
+_assertSame(canvas.width, 0, &quot;canvas.width&quot;, &quot;0&quot;);
+_assertSame(canvas.height, 0, &quot;canvas.height&quot;, &quot;0&quot;);
+_assertSame(window.getComputedStyle(canvas, null).getPropertyValue(&quot;width&quot;), &quot;0px&quot;, &quot;window.getComputedStyle(canvas, null).getPropertyValue(\&quot;width\&quot;)&quot;, &quot;\&quot;0px\&quot;&quot;);
+_assertSame(canvas.getAttribute('width'), '0x100', &quot;canvas.getAttribute('width')&quot;, &quot;'0x100'&quot;);
+_assertSame(canvas.getAttribute('height'), '0x100', &quot;canvas.getAttribute('height')&quot;, &quot;'0x100'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributejunkexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.junk-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.junk-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.junk-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.setAttribute.junk
+Parsing of non-negative integers in setAttribute
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers in setAttribute 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributejunkhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.junk.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.junk.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.junk.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,32 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.setAttribute.junk&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.setAttribute.junk&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers in setAttribute&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;50&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.setAttribute.junk.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers in setAttribute&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.setAttribute('width', '#!?');
+canvas.setAttribute('height', '#!?');
+_assertSame(canvas.width, 300, &quot;canvas.width&quot;, &quot;300&quot;);
+_assertSame(canvas.height, 150, &quot;canvas.height&quot;, &quot;150&quot;);
+_assertSame(canvas.getAttribute('width'), '#!?', &quot;canvas.getAttribute('width')&quot;, &quot;'#!?'&quot;);
+_assertSame(canvas.getAttribute('height'), '#!?', &quot;canvas.getAttribute('height')&quot;, &quot;'#!?'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributejunkpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.junk.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.junk.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeminusexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.minus-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.minus-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.minus-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.setAttribute.minus
+Parsing of non-negative integers in setAttribute
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers in setAttribute 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeminushtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.minus.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.minus.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.minus.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,32 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.setAttribute.minus&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.setAttribute.minus&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers in setAttribute&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;50&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.setAttribute.minus.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers in setAttribute&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.setAttribute('width', '-100');
+canvas.setAttribute('height', '-100');
+_assertSame(canvas.width, 300, &quot;canvas.width&quot;, &quot;300&quot;);
+_assertSame(canvas.height, 150, &quot;canvas.height&quot;, &quot;150&quot;);
+_assertSame(canvas.getAttribute('width'), '-100', &quot;canvas.getAttribute('width')&quot;, &quot;'-100'&quot;);
+_assertSame(canvas.getAttribute('height'), '-100', &quot;canvas.getAttribute('height')&quot;, &quot;'-100'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeminuspng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.minus.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.minus.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeoctalexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.octal-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.octal-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.octal-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.setAttribute.octal
+Parsing of non-negative integers in setAttribute
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers in setAttribute 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeoctalhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.octal.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.octal.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.octal.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,33 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.setAttribute.octal&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.setAttribute.octal&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers in setAttribute&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;50&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.setAttribute.octal.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers in setAttribute&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.setAttribute('width', '0100');
+canvas.setAttribute('height', '0100');
+_assertSame(canvas.width, 100, &quot;canvas.width&quot;, &quot;100&quot;);
+_assertSame(canvas.height, 100, &quot;canvas.height&quot;, &quot;100&quot;);
+_assertSame(window.getComputedStyle(canvas, null).getPropertyValue(&quot;width&quot;), &quot;100px&quot;, &quot;window.getComputedStyle(canvas, null).getPropertyValue(\&quot;width\&quot;)&quot;, &quot;\&quot;100px\&quot;&quot;);
+_assertSame(canvas.getAttribute('width'), '0100', &quot;canvas.getAttribute('width')&quot;, &quot;'0100'&quot;);
+_assertSame(canvas.getAttribute('height'), '0100', &quot;canvas.getAttribute('height')&quot;, &quot;'0100'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeoctalpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.octal.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.octal.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeonlyspaceexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.onlyspace-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.onlyspace-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.onlyspace-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.setAttribute.onlyspace
+Parsing of non-negative integers in setAttribute
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers in setAttribute 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeonlyspacehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.onlyspace.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.onlyspace.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.onlyspace.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,32 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.setAttribute.onlyspace&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.setAttribute.onlyspace&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers in setAttribute&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;50&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.setAttribute.onlyspace.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers in setAttribute&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.setAttribute('width', '  ');
+canvas.setAttribute('height', '  ');
+_assertSame(canvas.width, 300, &quot;canvas.width&quot;, &quot;300&quot;);
+_assertSame(canvas.height, 150, &quot;canvas.height&quot;, &quot;150&quot;);
+_assertSame(canvas.getAttribute('width'), '  ', &quot;canvas.getAttribute('width')&quot;, &quot;'  '&quot;);
+_assertSame(canvas.getAttribute('height'), '  ', &quot;canvas.getAttribute('height')&quot;, &quot;'  '&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeonlyspacepng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.onlyspace.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.onlyspace.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributepercentexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.percent-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.percent-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.percent-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.setAttribute.percent
+Parsing of non-negative integers in setAttribute
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers in setAttribute 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributepercenthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.percent.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.percent.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.percent.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,33 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.setAttribute.percent&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.setAttribute.percent&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers in setAttribute&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;50&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.setAttribute.percent.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers in setAttribute&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.setAttribute('width', '100%');
+canvas.setAttribute('height', '100%');
+_assertSame(canvas.width, 100, &quot;canvas.width&quot;, &quot;100&quot;);
+_assertSame(canvas.height, 100, &quot;canvas.height&quot;, &quot;100&quot;);
+_assertSame(window.getComputedStyle(canvas, null).getPropertyValue(&quot;width&quot;), &quot;100px&quot;, &quot;window.getComputedStyle(canvas, null).getPropertyValue(\&quot;width\&quot;)&quot;, &quot;\&quot;100px\&quot;&quot;);
+_assertSame(canvas.getAttribute('width'), '100%', &quot;canvas.getAttribute('width')&quot;, &quot;'100%'&quot;);
+_assertSame(canvas.getAttribute('height'), '100%', &quot;canvas.getAttribute('height')&quot;, &quot;'100%'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributepercentpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.percent.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.percent.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeplusexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.plus-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.plus-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.plus-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.setAttribute.plus
+Parsing of non-negative integers in setAttribute
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers in setAttribute 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributeplushtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.plus.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.plus.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.plus.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,33 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.setAttribute.plus&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.setAttribute.plus&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers in setAttribute&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;50&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.setAttribute.plus.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers in setAttribute&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.setAttribute('width', '+100');
+canvas.setAttribute('height', '+100');
+_assertSame(canvas.width, 100, &quot;canvas.width&quot;, &quot;100&quot;);
+_assertSame(canvas.height, 100, &quot;canvas.height&quot;, &quot;100&quot;);
+_assertSame(window.getComputedStyle(canvas, null).getPropertyValue(&quot;width&quot;), &quot;100px&quot;, &quot;window.getComputedStyle(canvas, null).getPropertyValue(\&quot;width\&quot;)&quot;, &quot;\&quot;100px\&quot;&quot;);
+_assertSame(canvas.getAttribute('width'), '+100', &quot;canvas.getAttribute('width')&quot;, &quot;'+100'&quot;);
+_assertSame(canvas.getAttribute('height'), '+100', &quot;canvas.getAttribute('height')&quot;, &quot;'+100'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributepluspng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.plus.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.plus.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributespaceexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.space-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.space-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.space-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.setAttribute.space
+Parsing of non-negative integers in setAttribute
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers in setAttribute 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributespacehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.space.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.space.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.space.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,33 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.setAttribute.space&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.setAttribute.space&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers in setAttribute&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;50&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.setAttribute.space.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers in setAttribute&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.setAttribute('width', '  100');
+canvas.setAttribute('height', '  100');
+_assertSame(canvas.width, 100, &quot;canvas.width&quot;, &quot;100&quot;);
+_assertSame(canvas.height, 100, &quot;canvas.height&quot;, &quot;100&quot;);
+_assertSame(window.getComputedStyle(canvas, null).getPropertyValue(&quot;width&quot;), &quot;100px&quot;, &quot;window.getComputedStyle(canvas, null).getPropertyValue(\&quot;width\&quot;)&quot;, &quot;\&quot;100px\&quot;&quot;);
+_assertSame(canvas.getAttribute('width'), '  100', &quot;canvas.getAttribute('width')&quot;, &quot;'  100'&quot;);
+_assertSame(canvas.getAttribute('height'), '  100', &quot;canvas.getAttribute('height')&quot;, &quot;'  100'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributespacepng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.space.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.space.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributetrailingjunkexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.trailingjunk-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.trailingjunk-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.trailingjunk-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.setAttribute.trailingjunk
+Parsing of non-negative integers in setAttribute
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers in setAttribute 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributetrailingjunkhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.trailingjunk.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.trailingjunk.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.trailingjunk.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,33 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.setAttribute.trailingjunk&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.setAttribute.trailingjunk&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers in setAttribute&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;50&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.setAttribute.trailingjunk.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers in setAttribute&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.setAttribute('width', '100#!?');
+canvas.setAttribute('height', '100#!?');
+_assertSame(canvas.width, 100, &quot;canvas.width&quot;, &quot;100&quot;);
+_assertSame(canvas.height, 100, &quot;canvas.height&quot;, &quot;100&quot;);
+_assertSame(window.getComputedStyle(canvas, null).getPropertyValue(&quot;width&quot;), &quot;100px&quot;, &quot;window.getComputedStyle(canvas, null).getPropertyValue(\&quot;width\&quot;)&quot;, &quot;\&quot;100px\&quot;&quot;);
+_assertSame(canvas.getAttribute('width'), '100#!?', &quot;canvas.getAttribute('width')&quot;, &quot;'100#!?'&quot;);
+_assertSame(canvas.getAttribute('height'), '100#!?', &quot;canvas.getAttribute('height')&quot;, &quot;'100#!?'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributetrailingjunkpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.trailingjunk.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.trailingjunk.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributewhitespaceexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.whitespace-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.whitespace-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.whitespace-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.setAttribute.whitespace
+Parsing of non-negative integers in setAttribute
+Actual output:
+Expected output:
+
+
+PASS Parsing of non-negative integers in setAttribute 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributewhitespacehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.whitespace.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.whitespace.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.whitespace.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,33 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.setAttribute.whitespace&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.setAttribute.whitespace&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers in setAttribute&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;50&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.setAttribute.whitespace.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers in setAttribute&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.setAttribute('width', '\r\n\t\x0c100');
+canvas.setAttribute('height', '\r\n\t\x0c100');
+_assertSame(canvas.width, 100, &quot;canvas.width&quot;, &quot;100&quot;);
+_assertSame(canvas.height, 100, &quot;canvas.height&quot;, &quot;100&quot;);
+_assertSame(window.getComputedStyle(canvas, null).getPropertyValue(&quot;width&quot;), &quot;100px&quot;, &quot;window.getComputedStyle(canvas, null).getPropertyValue(\&quot;width\&quot;)&quot;, &quot;\&quot;100px\&quot;&quot;);
+_assertSame(canvas.getAttribute('width'), '\r\n\t\x0c100', &quot;canvas.getAttribute('width')&quot;, &quot;'\\r\\n\\t\\x0c100'&quot;);
+_assertSame(canvas.getAttribute('height'), '\r\n\t\x0c100', &quot;canvas.getAttribute('height')&quot;, &quot;'\\r\\n\\t\\x0c100'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributewhitespacepng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.whitespace.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.whitespace.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributezeroexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.zero-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.zero-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.zero-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+size.attributes.setAttribute.zero
+Parsing of non-negative integers in setAttribute
+Actual output:
+
+PASS Parsing of non-negative integers in setAttribute 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributessetAttributezerohtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.zero.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.zero.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.zero.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,33 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.setAttribute.zero&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.setAttribute.zero&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Parsing of non-negative integers in setAttribute&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;50&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Parsing of non-negative integers in setAttribute&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.setAttribute('width', '0');
+canvas.setAttribute('height', '0');
+_assertSame(canvas.width, 0, &quot;canvas.width&quot;, &quot;0&quot;);
+_assertSame(canvas.height, 0, &quot;canvas.height&quot;, &quot;0&quot;);
+_assertSame(window.getComputedStyle(canvas, null).getPropertyValue(&quot;width&quot;), &quot;0px&quot;, &quot;window.getComputedStyle(canvas, null).getPropertyValue(\&quot;width\&quot;)&quot;, &quot;\&quot;0px\&quot;&quot;);
+_assertSame(canvas.getAttribute('width'), '0', &quot;canvas.getAttribute('width')&quot;, &quot;'0'&quot;);
+_assertSame(canvas.getAttribute('height'), '0', &quot;canvas.getAttribute('height')&quot;, &quot;'0'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesstyleexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.style-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.style-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.style-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+size.attributes.style
+Canvas size is independent of CSS resizing
+Actual output:
+Expected output:
+
+
+PASS Canvas size is independent of CSS resizing 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesstylehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.style.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.style.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.style.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: size.attributes.style&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;size.attributes.style&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;Canvas size is independent of CSS resizing&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;50&quot; height=&quot;30&quot; style=&quot;width: 100px; height: 50px&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;size.attributes.style.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;Canvas size is independent of CSS resizing&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(canvas.width, 50, &quot;canvas.width&quot;, &quot;50&quot;);
+_assertSame(canvas.height, 30, &quot;canvas.height&quot;, &quot;30&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementsizeattributesstylepng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.style.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.style.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoBlobjpegexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toBlob.jpeg-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toBlob.jpeg-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toBlob.jpeg-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+toBlob.jpeg
+toBlob with image/jpeg returns a JPEG Blob
+Actual output:
+
+FAIL toBlob with image/jpeg returns a JPEG Blob canvas.toBlob is not a function. (In 'canvas.toBlob(function(data){
+  _assertSame(data.type, &quot;image/jpeg&quot;, &quot;data.type&quot;, &quot;\&quot;image/jpeg\&quot;&quot;);
+}, 'image/jpeg')', 'canvas.toBlob' is undefined)
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoBlobjpeghtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toBlob.jpeg.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toBlob.jpeg.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toBlob.jpeg.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,29 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: toBlob.jpeg&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;toBlob.jpeg&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;toBlob with image/jpeg returns a JPEG Blob&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;toBlob with image/jpeg returns a JPEG Blob&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.toBlob(function(data){
+  _assertSame(data.type, &quot;image/jpeg&quot;, &quot;data.type&quot;, &quot;\&quot;image/jpeg\&quot;&quot;);
+}, 'image/jpeg');
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoBlobpngexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toBlob.png-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toBlob.png-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toBlob.png-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+toBlob.png
+toBlob with image/png returns a PNG Blob
+Actual output:
+
+FAIL toBlob with image/png returns a PNG Blob canvas.toBlob is not a function. (In 'canvas.toBlob(function(data){
+  _assertSame(data.type, &quot;image/png&quot;, &quot;data.type&quot;, &quot;\&quot;image/png\&quot;&quot;);
+}, 'image/png')', 'canvas.toBlob' is undefined)
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoBlobpnghtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toBlob.png.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toBlob.png.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toBlob.png.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,29 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: toBlob.png&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;toBlob.png&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;toBlob with image/png returns a PNG Blob&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;toBlob with image/png returns a PNG Blob&quot;);
+_addTest(function(canvas, ctx) {
+
+canvas.toBlob(function(data){
+  _assertSame(data.type, &quot;image/png&quot;, &quot;data.type&quot;, &quot;\&quot;image/png\&quot;&quot;);
+}, 'image/png');
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLarguments1expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.1-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.1-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.1-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+toDataURL.arguments.1
+toDataURL ignores extra arguments
+Actual output:
+
+PASS toDataURL ignores extra arguments 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLarguments1html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.1.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.1.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.1.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: toDataURL.arguments.1&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;toDataURL.arguments.1&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;toDataURL ignores extra arguments&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;toDataURL ignores extra arguments&quot;);
+_addTest(function(canvas, ctx) {
+
+var data = canvas.toDataURL('image/png', 'another argument that should not raise an exception');
+assert_regexp_match(data, /^data:image\/png[;,]/);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLarguments2expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.2-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.2-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.2-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+toDataURL.arguments.2
+toDataURL ignores extra arguments
+Actual output:
+
+PASS toDataURL ignores extra arguments 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLarguments2html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.2.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.2.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.2.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: toDataURL.arguments.2&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;toDataURL.arguments.2&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;toDataURL ignores extra arguments&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;toDataURL ignores extra arguments&quot;);
+_addTest(function(canvas, ctx) {
+
+var data = canvas.toDataURL('image/png', 'another argument that should not raise an exception', 'and another');
+assert_regexp_match(data, /^data:image\/png[;,]/);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLarguments3expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.3-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.3-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.3-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+toDataURL.arguments.3
+toDataURL ignores extra arguments
+Actual output:
+
+PASS toDataURL ignores extra arguments 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLarguments3html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.3.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.3.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.3.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,29 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: toDataURL.arguments.3&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;toDataURL.arguments.3&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;toDataURL ignores extra arguments&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;toDataURL ignores extra arguments&quot;);
+_addTest(function(canvas, ctx) {
+
+// More arguments that should not raise exceptions
+var data = canvas.toDataURL('image/png', null, null, null);
+assert_regexp_match(data, /^data:image\/png[;,]/);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLbogustypeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.bogustype-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.bogustype-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.bogustype-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+toDataURL.bogustype
+toDataURL with a syntactically invalid type returns a PNG
+Actual output:
+
+PASS toDataURL with a syntactically invalid type returns a PNG 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLbogustypehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.bogustype.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.bogustype.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.bogustype.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: toDataURL.bogustype&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;toDataURL.bogustype&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;toDataURL with a syntactically invalid type returns a PNG&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;toDataURL with a syntactically invalid type returns a PNG&quot;);
+_addTest(function(canvas, ctx) {
+
+var data = canvas.toDataURL('bogus');
+assert_regexp_match(data, /^data:image\/png[;,]/);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLdefaultexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.default-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.default-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.default-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+toDataURL.default
+toDataURL with no arguments returns a PNG
+Actual output:
+
+PASS toDataURL with no arguments returns a PNG 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLdefaulthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.default.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.default.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.default.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: toDataURL.default&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;toDataURL.default&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;toDataURL with no arguments returns a PNG&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;toDataURL with no arguments returns a PNG&quot;);
+_addTest(function(canvas, ctx) {
+
+var data = canvas.toDataURL();
+assert_regexp_match(data, /^data:image\/png[;,]/);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegalphaexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.alpha-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.alpha-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.alpha-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+toDataURL.jpeg.alpha
+toDataURL with JPEG composites onto black
+Actual output:
+Expected output:
+
+
+PASS toDataURL with JPEG composites onto black 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegalphahtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.alpha.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.alpha.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.alpha.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,45 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: toDataURL.jpeg.alpha&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;toDataURL.jpeg.alpha&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;toDataURL with JPEG composites onto black&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;toDataURL.jpeg.alpha.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;toDataURL with JPEG composites onto black&quot;);
+_addTest(function(canvas, ctx) {
+
+ctx.fillStyle = 'rgba(128, 255, 128, 0.5)';
+ctx.fillRect(0, 0, 100, 50);
+ctx.globalCompositeOperation = 'destination-over'; // should be ignored by toDataURL
+var data = canvas.toDataURL('image/jpeg');
+ctx.globalCompositeOperation = 'source-over';
+if (!data.match(/^data:image\/jpeg[;,]/)) {
+  _assert(true, &quot;true&quot;);
+} else {
+  ctx.fillStyle = '#f00';
+  ctx.fillRect(0, 0, 100, 50);
+  var img = new Image();
+  deferTest();
+  img.onload = t.step_func_done(function ()
+  {
+      ctx.drawImage(img, 0, 0);
+      _assertPixelApprox(canvas, 50,25, 63,127,63,255, &quot;50,25&quot;, &quot;63,127,63,255&quot;, 8);
+  });
+  img.src = data;
+}
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegalphapng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.alpha.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.alpha.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegprimarycoloursexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.primarycolours-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.primarycolours-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.primarycolours-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+toDataURL.jpeg.primarycolours
+toDataURL with JPEG handles simple colours correctly
+Actual output:
+Expected output:
+
+
+PASS toDataURL with JPEG handles simple colours correctly 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegprimarycolourshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.primarycolours.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.primarycolours.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.primarycolours.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,48 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: toDataURL.jpeg.primarycolours&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;toDataURL.jpeg.primarycolours&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;toDataURL with JPEG handles simple colours correctly&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;toDataURL.jpeg.primarycolours.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;toDataURL with JPEG handles simple colours correctly&quot;);
+_addTest(function(canvas, ctx) {
+
+ctx.fillStyle = '#ff0';
+ctx.fillRect(0, 0, 25, 40);
+ctx.fillStyle = '#0ff';
+ctx.fillRect(25, 0, 50, 40);
+ctx.fillStyle = '#00f';
+ctx.fillRect(75, 0, 25, 40);
+ctx.fillStyle = '#fff';
+ctx.fillRect(0, 40, 100, 10);
+var data = canvas.toDataURL('image/jpeg'); // it is okay if this returns a PNG instead
+ctx.fillStyle = '#f00';
+ctx.fillRect(0, 0, 100, 50);
+var img = new Image();
+deferTest();
+img.onload = t.step_func_done(function ()
+{
+    ctx.drawImage(img, 0, 0);
+    _assertPixelApprox(canvas, 12,20, 255,255,0,255, &quot;12,20&quot;, &quot;255,255,0,255&quot;, 8);
+    _assertPixelApprox(canvas, 50,20, 0,255,255,255, &quot;50,20&quot;, &quot;0,255,255,255&quot;, 8);
+    _assertPixelApprox(canvas, 87,20, 0,0,255,255, &quot;87,20&quot;, &quot;0,0,255,255&quot;, 8);
+    _assertPixelApprox(canvas, 50,45, 255,255,255,255, &quot;50,45&quot;, &quot;255,255,255,255&quot;, 8);
+});
+img.src = data;
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegprimarycolourspng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.primarycolours.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.primarycolours.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegqualitybasicexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.basic-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.basic-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.basic-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+toDataURL.jpeg.quality.basic
+toDataURL with JPEG uses the quality parameter
+Actual output:
+Expected output:
+
+
+PASS toDataURL with JPEG uses the quality parameter 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegqualitybasichtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.basic.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.basic.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.basic.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,56 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: toDataURL.jpeg.quality.basic&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;toDataURL.jpeg.quality.basic&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;toDataURL with JPEG uses the quality parameter&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;toDataURL.jpeg.quality.basic.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;toDataURL with JPEG uses the quality parameter&quot;);
+_addTest(function(canvas, ctx) {
+
+ctx.fillStyle = '#00f';
+ctx.fillRect(0, 0, 100, 50);
+ctx.fillStyle = '#0ff';
+ctx.fillRect(0, 3, 100, 1);
+// Check for JPEG support first
+var data = canvas.toDataURL('image/jpeg');
+if (!data.match(/^data:image\/jpeg[;,]/)) {
+  _assert(true, &quot;true&quot;);
+} else {
+  var data_hi = canvas.toDataURL('image/jpeg', 0.99);
+  var data_lo = canvas.toDataURL('image/jpeg', 0.01);
+  ctx.fillStyle = '#f00';
+  ctx.fillRect(0, 0, 100, 50);
+  deferTest();
+  var img_hi = new Image();
+  img_hi.onload = function ()
+  {
+      var img_lo = new Image();
+      img_lo.onload = t.step_func_done(function ()
+      {
+          ctx.drawImage(img_hi, 0, 0, 50, 50, 0, 0, 50, 50);
+          ctx.drawImage(img_lo, 0, 0, 50, 50, 50, 0, 50, 50);
+          _assert(data_hi.length &gt; data_lo.length, &quot;data_hi.length &gt; data_lo.length&quot;);
+          _assertPixelApprox(canvas, 25,25, 0,0,255,255, &quot;25,25&quot;, &quot;0,0,255,255&quot;, 8);
+          _assertPixelApprox(canvas, 75,25, 0,0,255,255, &quot;75,25&quot;, &quot;0,0,255,255&quot;, 32);
+      });
+      img_lo.src = data_lo;
+  };
+  img_hi.src = data_hi;
+}
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegqualitybasicpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.basic.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.basic.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegqualitynotnumberexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.notnumber-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.notnumber-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.notnumber-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+toDataURL.jpeg.quality.notnumber
+toDataURL with JPEG handles non-numeric quality parameters
+Actual output:
+
+PASS toDataURL with JPEG handles non-numeric quality parameters 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegqualitynotnumberhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.notnumber.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.notnumber.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.notnumber.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,42 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: toDataURL.jpeg.quality.notnumber&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;toDataURL.jpeg.quality.notnumber&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;toDataURL with JPEG handles non-numeric quality parameters&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;toDataURL with JPEG handles non-numeric quality parameters&quot;);
+_addTest(function(canvas, ctx) {
+
+ctx.fillStyle = '#00f';
+ctx.fillRect(0, 0, 100, 50);
+ctx.fillStyle = '#0ff';
+ctx.fillRect(0, 3, 100, 1);
+// Check for JPEG support first
+var data = canvas.toDataURL('image/jpeg');
+if (!data.match(/^data:image\/jpeg[;,]/)) {
+  _assert(true, &quot;true&quot;);
+} else {
+    _assertSame(canvas.toDataURL('image/jpeg', 'bogus'), data, &quot;canvas.toDataURL('image/jpeg', 'bogus')&quot;, &quot;data&quot;);
+    _assertSame(canvas.toDataURL('image/jpeg', {}), data, &quot;canvas.toDataURL('image/jpeg', {})&quot;, &quot;data&quot;);
+    _assertSame(canvas.toDataURL('image/jpeg', null), data, &quot;canvas.toDataURL('image/jpeg', null)&quot;, &quot;data&quot;);
+    _assertSame(canvas.toDataURL('image/jpeg', undefined), data, &quot;canvas.toDataURL('image/jpeg', undefined)&quot;, &quot;data&quot;);
+    _assertSame(canvas.toDataURL('image/jpeg', true), data, &quot;canvas.toDataURL('image/jpeg', true)&quot;, &quot;data&quot;);
+    _assertSame(canvas.toDataURL('image/jpeg', '0.01'), data, &quot;canvas.toDataURL('image/jpeg', '0.01')&quot;, &quot;data&quot;);
+}
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegqualityoutsiderangeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.outsiderange-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.outsiderange-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.outsiderange-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+toDataURL.jpeg.quality.outsiderange
+toDataURL with JPEG handles out-of-range quality parameters
+Actual output:
+
+PASS toDataURL with JPEG handles out-of-range quality parameters 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpegqualityoutsiderangehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.outsiderange.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.outsiderange.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.outsiderange.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,43 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: toDataURL.jpeg.quality.outsiderange&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;toDataURL.jpeg.quality.outsiderange&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;toDataURL with JPEG handles out-of-range quality parameters&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;toDataURL with JPEG handles out-of-range quality parameters&quot;);
+_addTest(function(canvas, ctx) {
+
+ctx.fillStyle = '#00f';
+ctx.fillRect(0, 0, 100, 50);
+ctx.fillStyle = '#0ff';
+ctx.fillRect(0, 3, 100, 1);
+// Check for JPEG support first
+var data = canvas.toDataURL('image/jpeg');
+if (!data.match(/^data:image\/jpeg[;,]/)) {
+  _assert(true, &quot;true&quot;);
+} else {
+    _assertSame(canvas.toDataURL('image/jpeg', 10), data, &quot;canvas.toDataURL('image/jpeg', 10)&quot;, &quot;data&quot;);
+    _assertSame(canvas.toDataURL('image/jpeg', -10), data, &quot;canvas.toDataURL('image/jpeg', -10)&quot;, &quot;data&quot;);
+    _assertSame(canvas.toDataURL('image/jpeg', 1.01), data, &quot;canvas.toDataURL('image/jpeg', 1.01)&quot;, &quot;data&quot;);
+    _assertSame(canvas.toDataURL('image/jpeg', -0.01), data, &quot;canvas.toDataURL('image/jpeg', -0.01)&quot;, &quot;data&quot;);
+
+    _assert(canvas.toDataURL('image/jpeg', 1).length &gt;= canvas.toDataURL('image/jpeg', 0.9).length, &quot;canvas.toDataURL('image/jpeg', 1).length &gt;= canvas.toDataURL('image/jpeg', 0.9).length&quot;);
+    _assert(canvas.toDataURL('image/jpeg', 0).length &lt;= canvas.toDataURL('image/jpeg', 0.1).length, &quot;canvas.toDataURL('image/jpeg', 0).length &lt;= canvas.toDataURL('image/jpeg', 0.1).length&quot;);
+}
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpgexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpg-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpg-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpg-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+toDataURL.jpg
+toDataURL with image/jpg is invalid type hence returns a PNG
+Actual output:
+
+PASS toDataURL with image/jpg is invalid type hence returns a PNG 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLjpghtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpg.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpg.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpg.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: toDataURL.jpg&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;toDataURL.jpg&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;toDataURL with image/jpg is invalid type hence returns a PNG&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;toDataURL with image/jpg is invalid type hence returns a PNG&quot;);
+_addTest(function(canvas, ctx) {
+
+var data = canvas.toDataURL('image/jpg');
+assert_regexp_match(data, /^data:image\/png[;,]/);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLlowercaseasciiexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.ascii-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.ascii-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.ascii-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+toDataURL.lowercase.ascii
+toDataURL type is case-insensitive
+Actual output:
+
+PASS toDataURL type is case-insensitive 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLlowercaseasciihtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.ascii.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.ascii.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.ascii.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,35 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: toDataURL.lowercase.ascii&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;toDataURL.lowercase.ascii&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;toDataURL type is case-insensitive&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;toDataURL type is case-insensitive&quot;);
+_addTest(function(canvas, ctx) {
+
+var data = canvas.toDataURL('ImAgE/PnG');
+assert_regexp_match(data, /^data:image\/png[;,]/);
+
+// If JPEG is supported at all, it must be supported case-insensitively
+data = canvas.toDataURL('image/jpeg');
+if (data.match(/^data:image\/jpeg[;,]/)) {
+    data = canvas.toDataURL('ImAgE/JpEg');
+    assert_regexp_match(data, /^data:image\/jpeg[;,]/);
+}
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLlowercaseunicodeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.unicode-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.unicode-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.unicode-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+toDataURL.lowercase.unicode
+toDataURL type is ASCII-case-insensitive
+Actual output:
+
+PASS toDataURL type is ASCII-case-insensitive 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLlowercaseunicodehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.unicode.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.unicode.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.unicode.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,32 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: toDataURL.lowercase.unicode&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;toDataURL.lowercase.unicode&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;toDataURL type is ASCII-case-insensitive&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;toDataURL type is ASCII-case-insensitive&quot;);
+_addTest(function(canvas, ctx) {
+
+// Use LATIN CAPITAL LETTER I WITH DOT ABOVE (Unicode lowercase is &quot;i&quot;)
+var data = canvas.toDataURL('\u0130mage/png');
+assert_regexp_match(data, /^data:image\/png[;,]/);
+
+var data = canvas.toDataURL('\u0130mage/jpeg');
+assert_regexp_match(data, /^data:image\/png[;,]/);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLnocontextexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.nocontext-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.nocontext-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.nocontext-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+toDataURL.nocontext
+toDataURL works before any context has been got
+Actual output:
+
+PASS toDataURL works before any context has been got 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLnocontexthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.nocontext.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.nocontext.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.nocontext.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,29 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: toDataURL.nocontext&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;toDataURL.nocontext&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;toDataURL works before any context has been got&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;toDataURL works before any context has been got&quot;);
+_addTest(function(canvas, ctx) {
+
+var canvas2 = document.createElement('canvas');
+var data = canvas2.toDataURL();
+assert_regexp_match(data, /^data:image\/png[;,]/);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLpngexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+toDataURL.png
+toDataURL with image/png returns a PNG
+Actual output:
+
+PASS toDataURL with image/png returns a PNG 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLpngcomplexcoloursexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.complexcolours-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.complexcolours-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.complexcolours-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+toDataURL.png.complexcolours
+toDataURL with PNG handles non-primary and non-solid colours correctly
+Actual output:
+Expected output:
+
+
+PASS toDataURL with PNG handles non-primary and non-solid colours correctly 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLpngcomplexcolourshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.complexcolours.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.complexcolours.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.complexcolours.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,48 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: toDataURL.png.complexcolours&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;toDataURL.png.complexcolours&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;toDataURL with PNG handles non-primary and non-solid colours correctly&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;toDataURL.png.complexcolours.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;toDataURL with PNG handles non-primary and non-solid colours correctly&quot;);
+_addTest(function(canvas, ctx) {
+
+// (These values are chosen to survive relatively alright through being premultiplied)
+ctx.fillStyle = 'rgba(1, 3, 254, 1)';
+ctx.fillRect(0, 0, 25, 25);
+ctx.fillStyle = 'rgba(8, 252, 248, 0.75)';
+ctx.fillRect(25, 0, 25, 25);
+ctx.fillStyle = 'rgba(6, 10, 250, 0.502)';
+ctx.fillRect(50, 0, 25, 25);
+ctx.fillStyle = 'rgba(12, 16, 244, 0.25)';
+ctx.fillRect(75, 0, 25, 25);
+var img = new Image();
+deferTest();
+img.onload = t.step_func_done(function ()
+{
+    ctx.drawImage(img, 0, 25);
+    // (The alpha values do not really survive float-&gt;int conversion, so just
+    // do approximate comparisons)
+    _assertPixel(canvas, 12,40, 1,3,254,255, &quot;12,40&quot;, &quot;1,3,254,255&quot;);
+    _assertPixelApprox(canvas, 37,40, 8,252,248,191, &quot;37,40&quot;, &quot;8,252,248,191&quot;, 2);
+    _assertPixelApprox(canvas, 62,40, 6,10,250,127, &quot;62,40&quot;, &quot;6,10,250,127&quot;, 4);
+    _assertPixelApprox(canvas, 87,40, 12,16,244,63, &quot;87,40&quot;, &quot;12,16,244,63&quot;, 8);
+});
+img.src = canvas.toDataURL();
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLpngcomplexcolourspng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.complexcolours.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.complexcolours.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLpnghtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: toDataURL.png&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;toDataURL.png&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;toDataURL with image/png returns a PNG&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;toDataURL with image/png returns a PNG&quot;);
+_addTest(function(canvas, ctx) {
+
+var data = canvas.toDataURL('image/png');
+assert_regexp_match(data, /^data:image\/png[;,]/);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLpngprimarycoloursexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.primarycolours-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.primarycolours-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.primarycolours-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+toDataURL.png.primarycolours
+toDataURL with PNG handles simple colours correctly
+Actual output:
+Expected output:
+
+
+PASS toDataURL with PNG handles simple colours correctly 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLpngprimarycolourshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.primarycolours.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.primarycolours.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.primarycolours.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,48 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: toDataURL.png.primarycolours&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;toDataURL.png.primarycolours&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;toDataURL with PNG handles simple colours correctly&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+&lt;p class=&quot;output expectedtext&quot;&gt;Expected output:&lt;p&gt;&lt;img src=&quot;toDataURL.png.primarycolours.png&quot; class=&quot;output expected&quot; id=&quot;expected&quot; alt=&quot;&quot;&gt;
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;toDataURL with PNG handles simple colours correctly&quot;);
+_addTest(function(canvas, ctx) {
+
+ctx.fillStyle = '#ff0';
+ctx.fillRect(0, 0, 25, 40);
+ctx.fillStyle = '#0ff';
+ctx.fillRect(25, 0, 50, 40);
+ctx.fillStyle = '#00f';
+ctx.fillRect(75, 0, 25, 40);
+ctx.fillStyle = '#fff';
+ctx.fillRect(0, 40, 100, 10);
+var data = canvas.toDataURL();
+ctx.fillStyle = '#f00';
+ctx.fillRect(0, 0, 100, 50);
+var img = new Image();
+deferTest();
+img.onload = t.step_func_done(function ()
+{
+    ctx.drawImage(img, 0, 0);
+    _assertPixel(canvas, 12,20, 255,255,0,255, &quot;12,20&quot;, &quot;255,255,0,255&quot;);
+    _assertPixel(canvas, 50,20, 0,255,255,255, &quot;50,20&quot;, &quot;0,255,255,255&quot;);
+    _assertPixel(canvas, 87,20, 0,0,255,255, &quot;87,20&quot;, &quot;0,0,255,255&quot;);
+    _assertPixel(canvas, 50,45, 255,255,255,255, &quot;50,45&quot;, &quot;255,255,255,255&quot;);
+});
+img.src = data;
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLpngprimarycolourspng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.primarycolours.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.primarycolours.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLunrecognisedexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.unrecognised-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.unrecognised-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.unrecognised-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+toDataURL.unrecognised
+toDataURL with an unhandled type returns a PNG
+Actual output:
+
+PASS toDataURL with an unhandled type returns a PNG 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLunrecognisedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.unrecognised.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.unrecognised.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.unrecognised.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: toDataURL.unrecognised&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;toDataURL.unrecognised&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;toDataURL with an unhandled type returns a PNG&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;toDataURL with an unhandled type returns a PNG&quot;);
+_addTest(function(canvas, ctx) {
+
+var data = canvas.toDataURL('image/example');
+assert_regexp_match(data, /^data:image\/png[;,]/);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLzeroheightexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zeroheight-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zeroheight-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zeroheight-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+toDataURL.zeroheight
+toDataURL on zero-size canvas returns 'data:,'
+Actual output:
+
+PASS toDataURL on zero-size canvas returns 'data:,' 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLzeroheighthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zeroheight.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zeroheight.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zeroheight.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: toDataURL.zeroheight&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;toDataURL.zeroheight&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;toDataURL on zero-size canvas returns 'data:,'&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; height=&quot;0&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;toDataURL on zero-size canvas returns 'data:,'&quot;);
+_addTest(function(canvas, ctx) {
+
+var data = canvas.toDataURL();
+_assertSame(data, 'data:,', &quot;data&quot;, &quot;'data:,'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLzerosizeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zerosize-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zerosize-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zerosize-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+toDataURL.zerosize
+toDataURL on zero-size canvas returns 'data:,'
+Actual output:
+
+PASS toDataURL on zero-size canvas returns 'data:,' 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLzerosizehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zerosize.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zerosize.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zerosize.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: toDataURL.zerosize&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;toDataURL.zerosize&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;toDataURL on zero-size canvas returns 'data:,'&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;0&quot; height=&quot;0&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;toDataURL on zero-size canvas returns 'data:,'&quot;);
+_addTest(function(canvas, ctx) {
+
+var data = canvas.toDataURL();
+_assertSame(data, 'data:,', &quot;data&quot;, &quot;'data:,'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLzerowidthexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zerowidth-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zerowidth-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zerowidth-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+toDataURL.zerowidth
+toDataURL on zero-size canvas returns 'data:,'
+Actual output:
+
+PASS toDataURL on zero-size canvas returns 'data:,' 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtoDataURLzerowidthhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zerowidth.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zerowidth.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zerowidth.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: toDataURL.zerowidth&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;toDataURL.zerowidth&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;toDataURL on zero-size canvas returns 'data:,'&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;0&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;toDataURL on zero-size canvas returns 'data:,'&quot;);
+_addTest(function(canvas, ctx) {
+
+var data = canvas.toDataURL();
+_assertSame(data, 'data:,', &quot;data&quot;, &quot;'data:,'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtypedeleteexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.delete-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.delete-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.delete-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+type.delete
+window.HTMLCanvasElement interface object is [[Configurable]]
+Defined in &quot;Web IDL&quot; (draft)
+Actual output:
+
+PASS window.HTMLCanvasElement interface object is [[Configurable]] 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtypedeletehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.delete.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.delete.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.delete.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: type.delete&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;type.delete&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;window.HTMLCanvasElement interface object is [[Configurable]]&lt;/p&gt;
+
+&lt;p class=&quot;notes&quot;&gt;Defined in &quot;Web IDL&quot; (draft)
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;window.HTMLCanvasElement interface object is [[Configurable]]&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(delete window.HTMLCanvasElement, true, &quot;delete window.HTMLCanvasElement&quot;, &quot;true&quot;);
+_assertSame(window.HTMLCanvasElement, undefined, &quot;window.HTMLCanvasElement&quot;, &quot;undefined&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtypeexistsexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.exists-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.exists-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.exists-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+type.exists
+HTMLCanvasElement is a property of window
+Defined in &quot;Web IDL&quot; (draft)
+Actual output:
+
+PASS HTMLCanvasElement is a property of window 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtypeexistshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.exists.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.exists.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.exists.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,27 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: type.exists&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;type.exists&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;HTMLCanvasElement is a property of window&lt;/p&gt;
+
+&lt;p class=&quot;notes&quot;&gt;Defined in &quot;Web IDL&quot; (draft)
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;HTMLCanvasElement is a property of window&quot;);
+_addTest(function(canvas, ctx) {
+
+_assert(window.HTMLCanvasElement, &quot;window.HTMLCanvasElement&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtypeextendexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.extend-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.extend-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.extend-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+type.extend
+HTMLCanvasElement methods can be added, and the new methods used by canvases
+Defined in &quot;Web IDL&quot; (draft)
+Actual output:
+
+PASS HTMLCanvasElement methods can be added, and the new methods used by canvases 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtypeextendhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.extend.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.extend.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.extend.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: type.extend&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;type.extend&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;HTMLCanvasElement methods can be added, and the new methods used by canvases&lt;/p&gt;
+
+&lt;p class=&quot;notes&quot;&gt;Defined in &quot;Web IDL&quot; (draft)
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;HTMLCanvasElement methods can be added, and the new methods used by canvases&quot;);
+_addTest(function(canvas, ctx) {
+
+window.HTMLCanvasElement.prototype.getZero = function () { return 0; };
+_assertSame(canvas.getZero(), 0, &quot;canvas.getZero()&quot;, &quot;0&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtypenameexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.name-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.name-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.name-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+type.name
+HTMLCanvasElement type and toString
+Actual output:
+
+PASS HTMLCanvasElement type and toString 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtypenamehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.name.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.name.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.name.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,27 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: type.name&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;type.name&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;HTMLCanvasElement type and toString&lt;/p&gt;
+
+
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;HTMLCanvasElement type and toString&quot;);
+_addTest(function(canvas, ctx) {
+
+_assertSame(Object.prototype.toString.call(canvas), '[object HTMLCanvasElement]', &quot;Object.prototype.toString.call(canvas)&quot;, &quot;'[object HTMLCanvasElement]'&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtypeprototypeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.prototype-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.prototype-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.prototype-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+type.prototype
+window.HTMLCanvasElement has prototype, which is { ReadOnly, DontDelete }. prototype has getContext, which is not
+Defined in &quot;Web IDL&quot; (draft)
+Actual output:
+
+PASS window.HTMLCanvasElement has prototype, which is { ReadOnly, DontDelete }. prototype has getContext, which is not 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtypeprototypehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.prototype.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.prototype.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.prototype.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,36 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: type.prototype&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;type.prototype&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;window.HTMLCanvasElement has prototype, which is { ReadOnly, DontDelete }. prototype has getContext, which is not&lt;/p&gt;
+
+&lt;p class=&quot;notes&quot;&gt;Defined in &quot;Web IDL&quot; (draft)
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;window.HTMLCanvasElement has prototype, which is { ReadOnly, DontDelete }. prototype has getContext, which is not&quot;);
+_addTest(function(canvas, ctx) {
+
+_assert(window.HTMLCanvasElement.prototype, &quot;window.HTMLCanvasElement.prototype&quot;);
+_assert(window.HTMLCanvasElement.prototype.getContext, &quot;window.HTMLCanvasElement.prototype.getContext&quot;);
+window.HTMLCanvasElement.prototype = null;
+_assert(window.HTMLCanvasElement.prototype, &quot;window.HTMLCanvasElement.prototype&quot;);
+delete window.HTMLCanvasElement.prototype;
+_assert(window.HTMLCanvasElement.prototype, &quot;window.HTMLCanvasElement.prototype&quot;);
+window.HTMLCanvasElement.prototype.getContext = 1;
+_assertSame(window.HTMLCanvasElement.prototype.getContext, 1, &quot;window.HTMLCanvasElement.prototype.getContext&quot;, &quot;1&quot;);
+delete window.HTMLCanvasElement.prototype.getContext;
+_assertSame(window.HTMLCanvasElement.prototype.getContext, undefined, &quot;window.HTMLCanvasElement.prototype.getContext&quot;, &quot;undefined&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtypereplaceexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.replace-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.replace-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.replace-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+type.replace
+HTMLCanvasElement methods can be replaced, and the replacement methods used by canvases
+Defined in &quot;Web IDL&quot; (draft)
+Actual output:
+
+PASS HTMLCanvasElement methods can be replaced, and the replacement methods used by canvases 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementtypereplacehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.replace.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.replace.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.replace.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;!--  DO NOT EDIT! This test has been generated by tools/gentest.py.  --&gt;
+&lt;title&gt;Canvas test: type.replace&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/canvas-tests.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/w3c/resources/canvas-tests.css&quot;&gt;
+&lt;body class=&quot;show_output&quot;&gt;
+
+&lt;h1&gt;type.replace&lt;/h1&gt;
+&lt;p class=&quot;desc&quot;&gt;HTMLCanvasElement methods can be replaced, and the replacement methods used by canvases&lt;/p&gt;
+
+&lt;p class=&quot;notes&quot;&gt;Defined in &quot;Web IDL&quot; (draft)
+&lt;p class=&quot;output&quot;&gt;Actual output:&lt;/p&gt;
+&lt;canvas id=&quot;c&quot; class=&quot;output&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;&lt;p class=&quot;fallback&quot;&gt;FAIL (fallback content)&lt;/p&gt;&lt;/canvas&gt;
+
+&lt;ul id=&quot;d&quot;&gt;&lt;/ul&gt;
+&lt;script&gt;
+var t = async_test(&quot;HTMLCanvasElement methods can be replaced, and the replacement methods used by canvases&quot;);
+_addTest(function(canvas, ctx) {
+
+window.HTMLCanvasElement.prototype.getContext = function (name) { return 0; };
+_assertSame(canvas.getContext('2d'), 0, &quot;canvas.getContext('2d')&quot;, &quot;0&quot;);
+
+
+});
+&lt;/script&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthecanvaselementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,168 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.canvas.readonly.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.canvas.reference.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.exists.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.extraargs.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.shared.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.getcontext.unique.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.scaled-manual.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.exists.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.extend.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.prototype.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/2d.type.replace.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/contains.json
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.arguments.missing.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.casesensitive.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.emptystring.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badname.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.badsuffix.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.nullsuffix.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/context.unrecognised.unicode.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.basic.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.multiple.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/fallback.nested.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.colour.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.colour.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.2dstate.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.clip.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.different.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.different.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.gradient.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.path.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.path.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.pattern.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.same.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.same.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/initial.reset.transform.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.dataURI.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.drawImage.canvas.sub.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.drawImage.image.sub.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.fillStyle.sub.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.strokeStyle.sub.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.timing.sub.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.create.sub.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.cross.sub.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.image.fillStyle.sub.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.pattern.image.strokeStyle.sub.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/security.reset.sub.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.default.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.default.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.get.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.idl.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.idl.set.zero.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.decimal.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.decimal.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.em.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.em.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.empty.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.empty.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.exp.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.exp.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.hex.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.junk.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.junk.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.minus.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.minus.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.octal.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.octal.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.onlyspace.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.onlyspace.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.percent.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.percent.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.plus.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.plus.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.space.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.space.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.trailingjunk.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.trailingjunk.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.whitespace.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.whitespace.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.zero.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setcontent.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setcontent.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidl.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidl.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.reflect.setidlzero.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.removed.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.removed.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.set.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.decimal.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.decimal.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.em.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.em.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.empty.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.empty.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.exp.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.exp.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.hex.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.junk.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.junk.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.minus.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.minus.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.octal.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.octal.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.onlyspace.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.onlyspace.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.percent.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.percent.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.plus.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.plus.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.space.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.space.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.trailingjunk.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.trailingjunk.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.whitespace.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.whitespace.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.zero.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.style.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/size.attributes.style.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toBlob.jpeg.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toBlob.png.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.1.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.2.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.arguments.3.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.bogustype.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.default.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.alpha.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.alpha.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.primarycolours.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.primarycolours.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.basic.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.basic.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.notnumber.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpeg.quality.outsiderange.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.jpg.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.ascii.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.lowercase.unicode.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.nocontext.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.complexcolours.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.complexcolours.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.primarycolours.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.png.primarycolours.png
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.unrecognised.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zeroheight.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zerosize.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/toDataURL.zerowidth.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.delete.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.exists.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.extend.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.name.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.prototype.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-canvas-element/type.replace.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheembedelementembeddimensionexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-dimension-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-dimension-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-dimension-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+
+
+PASS Check the actual length of the embed element's height 
+PASS Check the actual length of the embed element's width 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheembedelementembeddimensionhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-dimension.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-dimension.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-dimension.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,20 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;HTML Test: dimension&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-embed-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;embed src=&quot;/w3c/resources/images/blue.png&quot; height=&quot;100&quot; width=&quot;100&quot; id=&quot;test&quot;&gt;
+&lt;script&gt;
+  test(function () {
+    var height = getComputedStyle(document.getElementById(&quot;test&quot;), false)[&quot;height&quot;];
+    assert_equals(height, &quot;100px&quot;, &quot;The height of the embed element should be 100px.&quot;);
+  }, &quot;Check the actual length of the embed element's height&quot;);
+
+  test(function () {
+    var width = getComputedStyle(document.getElementById(&quot;test&quot;), false)[&quot;width&quot;];
+    assert_equals(width, &quot;100px&quot;, &quot;The width of the embed element should be 100px.&quot;);
+  }, &quot;Check the actual length of the embed element's width&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheembedelementembedrepresentnothing01expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-01-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-01-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-01-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;Embed Reftest Reference&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com&quot;&gt;
+&lt;body&gt;
+  &lt;p&gt;Test passes if there is &lt;strong&gt;no red&lt;/strong&gt;.&lt;/p&gt;
+&lt;/body&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheembedelementembedrepresentnothing01html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-01.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-01.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-01.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;HTML Test: The embed element without src and type attributes represents nothing&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-embed-element&quot;&gt;
+&lt;link rel=&quot;match&quot; href=&quot;embed-represent-nothing-ref.html&quot;&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;Check if the embed element without src and type attributes represents nothing&quot;&gt;
+&lt;style&gt;
+  embed {
+    background-color: red;
+    height: 100px;
+    width: 100px;
+  }
+&lt;/style&gt;
+&lt;body&gt;
+  &lt;p&gt;Test passes if there is &lt;strong&gt;no red&lt;/strong&gt;.&lt;/p&gt;
+  &lt;embed&gt;
+&lt;/body&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheembedelementembedrepresentnothing02expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-02-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-02-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-02-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;Embed Reftest Reference&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com&quot;&gt;
+&lt;body&gt;
+  &lt;p&gt;Test passes if there is &lt;strong&gt;no red&lt;/strong&gt;.&lt;/p&gt;
+&lt;/body&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheembedelementembedrepresentnothing02html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-02.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-02.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-02.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,22 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;HTML Test: The embed element represents nothing when its type and src attributs are removed&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-embed-element&quot;&gt;
+&lt;link rel=&quot;match&quot; href=&quot;embed-represent-nothing-ref.html&quot;&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;Check if the embed element represents nothing when its src and type attributes are removed&quot;&gt;
+&lt;style&gt;
+  embed {
+    background-color: red;
+    height: 100px;
+    width: 100px;
+  }
+&lt;/style&gt;
+&lt;body&gt;
+  &lt;p&gt;Test passes if there is &lt;strong&gt;no red&lt;/strong&gt;.&lt;/p&gt;
+  &lt;embed id=&quot;embed&quot; src=&quot;/w3c/resources/images/red-16x16.png&quot; type=&quot;image/png&quot;&gt;
+  &lt;script&gt;
+    document.getElementById(&quot;embed&quot;).removeAttribute(&quot;src&quot;);
+    document.getElementById(&quot;embed&quot;).removeAttribute(&quot;type&quot;);
+  &lt;/script&gt;
+&lt;/body&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheembedelementembedrepresentnothing03expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-03-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-03-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-03-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;Embed Reftest Reference&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com&quot;&gt;
+&lt;body&gt;
+  &lt;p&gt;Test passes if there is &lt;strong&gt;no red&lt;/strong&gt;.&lt;/p&gt;
+&lt;/body&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheembedelementembedrepresentnothing03html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-03.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-03.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-03.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,20 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;HTML Test: The embed element represents nothing when it has a media ancestor&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-embed-element&quot;&gt;
+&lt;link rel=&quot;match&quot; href=&quot;embed-represent-nothing-ref.html&quot;&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;Check if the embed element represents nothing when it has a media ancestor&quot;&gt;
+&lt;style&gt;
+  embed {
+    background-color: red;
+    height: 100px;
+    width: 100px;
+  }
+&lt;/style&gt;
+&lt;body&gt;
+  &lt;p&gt;Test passes if there is &lt;strong&gt;no red&lt;/strong&gt;.&lt;/p&gt;
+  &lt;video&gt;
+    &lt;embed src=&quot;/w3c/resources/images/red-16x16.png&quot;&gt;
+  &lt;/video&gt;
+&lt;/body&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheembedelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,26 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-dimension.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-01-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-01.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-02-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-02.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-03-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-03.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-04-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-04.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementiframe_javascript_url_01expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/iframe_javascript_url_01-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/iframe_javascript_url_01-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/iframe_javascript_url_01-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+FAILED (test did not run)
+    
+
+PASS javascript: URL creating a document in an about:blank iframe 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementiframe_javascript_url_01htm"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/iframe_javascript_url_01.htm (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/iframe_javascript_url_01.htm                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/iframe_javascript_url_01.htm        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,55 @@
</span><ins>+&lt;!DOCTYPE html&gt;&lt;html&gt;&lt;head&gt;&lt;title&gt;javascript: URL creating a document in an about:blank iframe&lt;/title&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/embedded-content.html#the-iframe-element&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/embedded-content.html#process-the-iframe-attributes&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-iframe-element&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#process-the-iframe-attributes&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;FAILED (test did not run)&lt;/div&gt;
+
+&lt;iframe src=&quot;about:blank&quot; name=&quot;ifr1&quot;&gt;&lt;/iframe&gt;
+&lt;iframe src=&quot;&quot; name=&quot;ifr2&quot;&gt;&lt;/iframe&gt;
+&lt;iframe src=&quot;./&quot; name=&quot;ifr3&quot;&gt;&lt;/iframe&gt;
+
+&lt;script&gt;
+var test = async_test();
+var results = {};
+var expected = {
+    ifr1:{url:&quot;about:blank&quot;, sameDom: true},
+    ifr2:{url:&quot;about:blank&quot;, sameDom: true},
+    ifr3:{url: location.href.replace(/\/[^\/]*$/, '/'), sameDom: true },
+    ifr4:{url:&quot;about:blank&quot;, sameDom: true}
+}
+
+var js_url = 'javascript:&quot;&lt;html&gt;&lt;script&gt;var sameDom = false; try{var cn = top.document.body.className;sameDom = true;}catch(e){}; parent.postMessage( {url: document.URL, name: name, sameDom: sameDom}, \'*\')&lt;\/script&gt;&lt;body&gt;&lt;p&gt;JS-generated document&lt;/p&gt;&lt;/body&gt;&lt;/&lt;html&gt;&quot;;'
+window.addEventListener('message', function(e){
+    var ifr = e.data.name;
+    results[ifr] = e.data;
+    test.step(function(){
+        assert_equals(results[ifr].url, expected[ifr].url);
+        assert_equals(results[ifr].sameDom, expected[ifr].sameDom);
+    }, 'Testing URL and details of IFRAME ' + ifr);
+    if(Object.keys(results).length === Object.keys(expected).length){
+        test.done();
+    }
+}, false);
+
+var ifr = document.createElement('iframe');
+ifr.name = 'ifr4';
+document.body.appendChild(ifr);
+
+window.onload = function () {
+    for (var i = 0, frame, frames = document.getElementsByTagName('iframe'); frame = frames[i]; i++) {
+        try{
+            frame.src = js_url;
+        }catch(e){
+            results[frame.name] = 'Exception on setting!';
+        }
+    };
+}
+
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementiframe_sandbox_allow_scriptexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_script-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_script-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_script-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+CONSOLE MESSAGE: Blocked script execution in 'http://127.0.0.1:8000/w3c/html/semantics/embedded-content/the-iframe-element/resources/sandbox_allow_script.html' because the document's frame is sandboxed and the 'allow-scripts' permission is not set.
+
+PASS iframe_sandbox_allow_scripts 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementiframe_sandbox_allow_scripthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_script.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_script.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_script.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,39 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;uft-8&quot;&gt;
+&lt;title&gt;HTML Test: iframe_sandbox_allow_scripts&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#attr-iframe-sandbox&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-iframe-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+
+&lt;iframe id=&quot;testIframe&quot; src=&quot;resources/sandbox_allow_script.html&quot; sandbox=&quot;allow-same-origin&quot; style=&quot;display:none&quot;&gt;&lt;/iframe&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  var step1 = false;
+  var t = async_test(&quot;iframe_sandbox_allow_scripts&quot;);
+
+  setup({timeout:1000});
+  window.addEventListener(&quot;message&quot;, callback1, false);
+
+  function run() {
+    window.removeEventListener(&quot;message&quot;, callback1, false);
+    document.getElementById(&quot;testIframe&quot;).sandbox = &quot;allow-scripts&quot;;
+    document.getElementById(&quot;testIframe&quot;).contentWindow.location.reload();
+    window.addEventListener(&quot;message&quot;, callback2, false);
+  }
+
+  function callback1(e) {
+    step1= !step1;
+  }
+
+  function callback2(e) {
+    t.step(function () {
+      assert_false(step1, &quot;[allow-scripts] is not set.&quot;);
+      assert_equals(e.data, &quot;Script executed&quot;, &quot;[allow-scripts] is set.&quot;);
+    });
+    t.done();
+  }
+
+  setTimeout(run, 500);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementmove_iframe_in_dom_01expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_01-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_01-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_01-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+ 
+
+PASS moving modified IFRAME in document (original page about:blank, DOM modification) 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementmove_iframe_in_dom_01html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_01.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_01.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_01.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,20 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;moving modified IFRAME in document (original page about:blank, DOM modification)&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/#iframe-load-event-steps&quot;&gt;
+&lt;iframe src=&quot;about:blank&quot;&gt;&lt;/iframe&gt;
+&lt;div id=&quot;target&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+onload = function() {
+  var ifr = document.getElementsByTagName('iframe')[0];
+  ifr.contentDocument.body.appendChild(ifr.contentDocument.createElement('p')).textContent = 'Modified document';
+  setTimeout(function() {
+    ifr.onload = function() {
+      assert_equals(ifr.contentDocument.body.textContent.indexOf('Modified'), -1);
+      done();
+    };
+    document.getElementById('target').appendChild(ifr);
+  }, 100);
+}
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementmove_iframe_in_dom_02expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_02-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_02-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_02-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+ 
+
+PASS moving modified IFRAME in document (original page about:blank, document.write modification) 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementmove_iframe_in_dom_02html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_02.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_02.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_02.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,22 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;moving modified IFRAME in document (original page about:blank, document.write modification)&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/#iframe-load-event-steps&quot;&gt;
+&lt;iframe src=&quot;about:blank&quot;&gt;&lt;/iframe&gt;
+&lt;div id=&quot;target&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+onload = function() {
+  var ifr = document.getElementsByTagName('iframe')[0];
+  ifr.contentDocument.open();
+  ifr.contentDocument.write('Modified document');
+  ifr.contentDocument.close();
+  setTimeout(function() {
+    ifr.onload = function() {
+        assert_equals(ifr.contentDocument.body.textContent.indexOf('Modified'), -1);
+        done();
+    };
+    document.getElementById('target').appendChild(ifr);
+  }, 100);
+}
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementmove_iframe_in_dom_03expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_03-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_03-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_03-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+ 
+
+PASS moving modified IFRAME in document (original page from server, DOM modification) 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementmove_iframe_in_dom_03html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_03.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_03.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_03.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,20 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;moving modified IFRAME in document (original page from server, DOM modification)&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/#iframe-load-event-steps&quot;&gt;
+&lt;iframe src=&quot;support/blank.htm&quot;&gt;&lt;/iframe&gt;
+&lt;div id=&quot;target&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+onload = function() {
+  var ifr = document.getElementsByTagName('iframe')[0];
+  ifr.contentDocument.body.appendChild(ifr.contentDocument.createElement('p')).textContent = 'Modified document';
+  setTimeout(function() {
+    ifr.onload = function() {
+      assert_equals(ifr.contentDocument.body.textContent.indexOf('Modified'), -1);
+      done();
+    };
+    document.getElementById('target').appendChild(ifr);
+  }, 100);
+}
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementmove_iframe_in_dom_04expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_04-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_04-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_04-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+ 
+
+PASS moving modified IFRAME in document (original page from server, document.write modification) 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementmove_iframe_in_dom_04html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_04.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_04.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_04.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,22 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;moving modified IFRAME in document (original page from server, document.write modification)&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/#iframe-load-event-steps&quot;&gt;
+&lt;iframe src=&quot;support/blank.htm&quot;&gt;&lt;/iframe&gt;
+&lt;div id=&quot;target&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+onload = function(){
+  var ifr = document.getElementsByTagName('iframe')[0];
+  ifr.contentDocument.open();
+  ifr.contentDocument.write('Modified document');
+  ifr.contentDocument.close();
+  setTimeout(function() {
+    ifr.onload = function () {
+      assert_equals(ifr.contentDocument.body.textContent.indexOf('Modified'), -1);
+      done();
+    };
+    document.getElementById('target').appendChild(ifr);
+  }, 100);
+}
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementresourcessandbox_allow_scripthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/resources/sandbox_allow_script.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/resources/sandbox_allow_script.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/resources/sandbox_allow_script.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;uft-8&quot;&gt;
+&lt;title&gt;HTML Test: sandbox_allow_scripts&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;div id=&quot;test&quot;&gt;Before change&lt;/div&gt;
+&lt;script&gt;
+  parent.window.postMessage(&quot;Script executed&quot;, &quot;*&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheiframeelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,23 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/iframe_javascript_url_01.htm
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_script.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_01.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_02.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_03.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_04.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelement3jpg"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/3.jpg</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/3.jpg
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementImageconstructorexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/Image-constructor-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/Image-constructor-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/Image-constructor-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+
+PASS Image constructor works 
+PASS Image and HTMLImageElement share a prototype 
+PASS Image localName is img 
+PASS Image namespace URI is correct 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementImageconstructorhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/Image-constructor.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/Image-constructor.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/Image-constructor.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,29 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;title&gt;DOM Image constructor Test&lt;/title&gt;
+&lt;meta content=&quot;text/html; charset=UTF-8&quot; http-equiv=&quot;Content-Type&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/embedded-content.html#the-img-element&quot; /&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;Tests the Image constructor for the img-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+
+
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  test(function() {
+    var img = new Image();
+    assert_true(img != undefined);
+  }, &quot;Image constructor works&quot;);
+
+  test(function() {
+    assert_true(Image.prototype === HTMLImageElement.prototype);
+  }, &quot;Image and HTMLImageElement share a prototype&quot;);
+
+  test(function() {
+    assert_true((new Image()).localName === &quot;img&quot;);
+  }, &quot;Image localName is img&quot;);
+
+  test(function() {
+    assert_true((new Image()).namespaceURI === &quot;http://www.w3.org/1999/xhtml&quot;);
+  }, &quot;Image namespace URI is correct&quot;);
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementbrokenimgjpg"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/brokenimg.jpg (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/brokenimg.jpg                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/brokenimg.jpg        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;html&gt;
+
+&lt;/html&gt;
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementcontainsjson"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/contains.json (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/contains.json                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/contains.json        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,60 @@
</span><ins>+[
+    {
+        &quot;id&quot;: &quot;alt&quot;,
+        &quot;original_id&quot;: &quot;alt&quot;,
+        &quot;children&quot;: [
+            {
+                &quot;id&quot;: &quot;general-guidelines&quot;,
+                &quot;original_id&quot;: &quot;general-guidelines&quot;
+            },
+            {
+                &quot;id&quot;: &quot;a-link-or-button-containing-nothing-but-the-image&quot;,
+                &quot;original_id&quot;: &quot;a-link-or-button-containing-nothing-but-the-image&quot;
+            },
+            {
+                &quot;id&quot;: &quot;a-phrase-or-paragraph-with-an-alternative-graphical-representation-charts-diagrams-graphs-maps-illustrations&quot;,
+                &quot;original_id&quot;: &quot;a-phrase-or-paragraph-with-an-alternative-graphical-representation:-charts,-diagrams,-graphs,-maps,-illustrations&quot;
+            },
+            {
+                &quot;id&quot;: &quot;a-short-phrase-or-label-with-an-alternative-graphical-representation-icons-logos&quot;,
+                &quot;original_id&quot;: &quot;a-short-phrase-or-label-with-an-alternative-graphical-representation:-icons,-logos&quot;
+            },
+            {
+                &quot;id&quot;: &quot;text-that-has-been-rendered-to-a-graphic-for-typographical-effect&quot;,
+                &quot;original_id&quot;: &quot;text-that-has-been-rendered-to-a-graphic-for-typographical-effect&quot;
+            },
+            {
+                &quot;id&quot;: &quot;a-graphical-representation-of-some-of-the-surrounding-text&quot;,
+                &quot;original_id&quot;: &quot;a-graphical-representation-of-some-of-the-surrounding-text&quot;
+            },
+            {
+                &quot;id&quot;: &quot;a-purely-decorative-image-that-doesn-t-add-any-information&quot;,
+                &quot;original_id&quot;: &quot;a-purely-decorative-image-that-doesn't-add-any-information&quot;
+            },
+            {
+                &quot;id&quot;: &quot;a-group-of-images-that-form-a-single-larger-picture-with-no-links&quot;,
+                &quot;original_id&quot;: &quot;a-group-of-images-that-form-a-single-larger-picture-with-no-links&quot;
+            },
+            {
+                &quot;id&quot;: &quot;a-group-of-images-that-form-a-single-larger-picture-with-links&quot;,
+                &quot;original_id&quot;: &quot;a-group-of-images-that-form-a-single-larger-picture-with-links&quot;
+            },
+            {
+                &quot;id&quot;: &quot;a-key-part-of-the-content&quot;,
+                &quot;original_id&quot;: &quot;a-key-part-of-the-content&quot;
+            },
+            {
+                &quot;id&quot;: &quot;an-image-not-intended-for-the-user&quot;,
+                &quot;original_id&quot;: &quot;an-image-not-intended-for-the-user&quot;
+            },
+            {
+                &quot;id&quot;: &quot;guidance-for-markup-generators&quot;,
+                &quot;original_id&quot;: &quot;guidance-for-markup-generators&quot;
+            },
+            {
+                &quot;id&quot;: &quot;guidance-for-conformance-checkers&quot;,
+                &quot;original_id&quot;: &quot;guidance-for-conformance-checkers&quot;
+            }
+        ]
+    }
+]
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementcurrentpixeldensitybasicexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/current-pixel-density/basic-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/current-pixel-density/basic-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/current-pixel-density/basic-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,14 @@
</span><ins>+          
+
+PASS &lt;img src=&quot;/w3c/resources/images/green-256x256.png&quot; data-expect=&quot;256&quot;&gt; 
+PASS &lt;img srcset=&quot;/w3c/resources/images/green-256x256.png 1x&quot; data-expect=&quot;256&quot;&gt; 
+PASS &lt;img srcset=&quot;/w3c/resources/images/green-256x256.png 1.6x&quot; data-expect=&quot;160&quot;&gt; 
+PASS &lt;img srcset=&quot;/w3c/resources/images/green-256x256.png 2x&quot; data-expect=&quot;128&quot;&gt; 
+PASS &lt;img srcset=&quot;/w3c/resources/images/green-256x256.png 10000x&quot; data-expect=&quot;0&quot;&gt; 
+PASS &lt;img srcset=&quot;/w3c/resources/images/green-256x256.png 9e99999999999999999999999x&quot; data-expect=&quot;0&quot;&gt; 
+PASS &lt;img srcset=&quot;/w3c/resources/images/green-256x256.png 256w&quot; sizes=&quot;256px&quot; data-expect=&quot;256&quot;&gt; 
+PASS &lt;img srcset=&quot;/w3c/resources/images/green-256x256.png 512w&quot; sizes=&quot;256px&quot; data-expect=&quot;128&quot;&gt; 
+PASS &lt;img srcset=&quot;/w3c/resources/images/green-256x256.png 256w&quot; sizes=&quot;512px&quot; data-expect=&quot;512&quot;&gt; 
+PASS &lt;img srcset=&quot;/w3c/resources/images/green-256x256.png 256w&quot; sizes=&quot;1px&quot; data-expect=&quot;1&quot;&gt; 
+PASS &lt;img srcset=&quot;/w3c/resources/images/green-256x256.png 256w&quot; sizes=&quot;0px&quot; data-expect=&quot;0&quot;&gt; 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementcurrentpixeldensitybasichtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/current-pixel-density/basic.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/current-pixel-density/basic.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/current-pixel-density/basic.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,33 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;img current pixel density basic&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;img src=&quot;/w3c/resources/images/green-256x256.png&quot; data-expect=&quot;256&quot;&gt;
+&lt;img srcset=&quot;/w3c/resources/images/green-256x256.png 1x&quot; data-expect=&quot;256&quot;&gt;
+&lt;img srcset=&quot;/w3c/resources/images/green-256x256.png 1.6x&quot; data-expect=&quot;160&quot;&gt;
+&lt;img srcset=&quot;/w3c/resources/images/green-256x256.png 2x&quot; data-expect=&quot;128&quot;&gt;
+&lt;img srcset=&quot;/w3c/resources/images/green-256x256.png 10000x&quot; data-expect=&quot;0&quot;&gt;
+&lt;img srcset=&quot;/w3c/resources/images/green-256x256.png 9e99999999999999999999999x&quot; data-expect=&quot;0&quot;&gt;
+&lt;img srcset=&quot;/w3c/resources/images/green-256x256.png 256w&quot; sizes=&quot;256px&quot; data-expect=&quot;256&quot;&gt;
+&lt;img srcset=&quot;/w3c/resources/images/green-256x256.png 512w&quot; sizes=&quot;256px&quot; data-expect=&quot;128&quot;&gt;
+&lt;img srcset=&quot;/w3c/resources/images/green-256x256.png 256w&quot; sizes=&quot;512px&quot; data-expect=&quot;512&quot;&gt;
+&lt;img srcset=&quot;/w3c/resources/images/green-256x256.png 256w&quot; sizes=&quot;1px&quot; data-expect=&quot;1&quot;&gt;
+&lt;img srcset=&quot;/w3c/resources/images/green-256x256.png 256w&quot; sizes=&quot;0px&quot; data-expect=&quot;0&quot;&gt;
+&lt;script&gt;
+setup({explicit_done:true});
+onload = function() {
+  [].forEach.call(document.images, function(img) {
+    test(function() {
+      var expected = parseFloat(img.dataset.expect);
+      assert_equals(img.width, expected, 'width');
+      assert_equals(img.height, expected, 'height');
+      assert_equals(img.clientWidth, expected, 'clientWidth');
+      assert_equals(img.clientHeight, expected, 'clientHeight');
+      assert_equals(img.naturalWidth, 256, 'naturalWidth');
+      assert_equals(img.naturalHeight, 256, 'naturalHeight');
+    }, img.outerHTML);
+  });
+  done();
+};
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementcurrentpixeldensityerrorexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/current-pixel-density/error-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/current-pixel-density/error-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/current-pixel-density/error-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+      
+
+PASS &lt;img id=&quot;ref&quot; src=&quot;404&quot; alt=&quot;testing&quot;&gt; 
+PASS &lt;img srcset=&quot;404&quot; alt=&quot;testing&quot;&gt; 
+PASS &lt;img srcset=&quot;404 0.5x&quot; alt=&quot;testing&quot;&gt; 
+PASS &lt;img srcset=&quot;404 2x&quot; alt=&quot;testing&quot;&gt; 
+PASS &lt;img srcset=&quot;404 100w&quot; alt=&quot;testing&quot;&gt; 
+PASS &lt;img srcset=&quot;404 100w&quot; sizes=&quot;500px&quot; alt=&quot;testing&quot;&gt; 
+PASS &lt;img src=&quot;404 100w&quot; sizes=&quot;500px&quot; alt=&quot;testing&quot;&gt; 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementcurrentpixeldensityerrorhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/current-pixel-density/error.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/current-pixel-density/error.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/current-pixel-density/error.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,31 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;img current pixel density error&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;img id=ref src=&quot;404&quot; alt=&quot;testing&quot;&gt;
+&lt;img srcset=&quot;404&quot; alt=&quot;testing&quot;&gt;
+&lt;img srcset=&quot;404 0.5x&quot; alt=&quot;testing&quot;&gt;
+&lt;img srcset=&quot;404 2x&quot; alt=&quot;testing&quot;&gt;
+&lt;img srcset=&quot;404 100w&quot; alt=&quot;testing&quot;&gt;
+&lt;img srcset=&quot;404 100w&quot; sizes=&quot;500px&quot; alt=&quot;testing&quot;&gt;
+&lt;picture&gt;&lt;img src=&quot;404 100w&quot; sizes=&quot;500px&quot; alt=&quot;testing&quot;&gt;&lt;/picture&gt;
+&lt;script&gt;
+setup({explicit_done:true});
+onload = function() {
+  var ref = document.getElementById(&quot;ref&quot;);
+  var expected_width = ref.width;
+  var expected_height = ref.height;
+  [].forEach.call(document.images, function(img) {
+    test(function() {
+      assert_not_equals(expected_width, 0, 'expected_width');
+      assert_not_equals(expected_height, 0, 'expected_height');
+      assert_equals(img.width, expected_width, 'width');
+      assert_equals(img.height, expected_height, 'height');
+      assert_equals(img.naturalWidth, 0, 'naturalWidth');
+      assert_equals(img.naturalHeight, 0, 'naturalHeight');
+    }, img.outerHTML);
+  });
+  done();
+};
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementcurrentpixeldensityw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/current-pixel-density/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/current-pixel-density/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/current-pixel-density/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/current-pixel-density/basic.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/current-pixel-density/error.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementenvironmentchangesviewportchangeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/environment-changes/viewport-change-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/environment-changes/viewport-change-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/environment-changes/viewport-change-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+
+PASS img viewport change 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementenvironmentchangesviewportchangehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/environment-changes/viewport-change.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/environment-changes/viewport-change.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/environment-changes/viewport-change.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,65 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;img viewport change&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/w3c/resources/utils.js&quot;&gt;&lt;/script&gt;
+&lt;style&gt;
+.narrow { width:50px }
+.wide { width:1000px }
+&lt;/style&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+setup({explicit_done:true});
+
+function resolve(url) {
+  if (url === &quot;&quot;) {
+    return url;
+  }
+  var a = document.createElement('a');
+  a.href = url;
+  return a.href;
+}
+
+function insertIframe(className) {
+  var iframe = document.createElement('iframe');
+  iframe.className = className;
+  iframe.src = 'iframed.sub.html?id=' + token();
+  document.body.appendChild(iframe);
+}
+insertIframe('narrow');
+insertIframe('wide');
+
+var start_date = new Date();
+
+onload = function() {
+  var load_time = new Date() - start_date;
+  var iframes = document.getElementsByTagName('iframe');
+  [].forEach.call(iframes, function(iframe) {
+    [].forEach.call(iframe.contentDocument.images, function(img) {
+      var expected = {wide:resolve(img.dataset.wide), narrow:resolve(img.dataset.narrow)};
+      var current = iframe.className;
+      var next = current === 'wide' ? 'narrow' : 'wide';
+      var expect_change = expected[next].indexOf('broken.png') !== 0 &amp;&amp; !('noChange' in img.dataset);
+
+      test(function() {
+        assert_equals(img.currentSrc, expected[current]);
+      }, img.dataset.desc + ', onload, ' + current);
+
+      async_test(function() {
+        img.onload = this.unreached_func('Got unexpected load event');
+        img.onerror = this.unreached_func('Got unexpected error event');
+        if (expect_change) {
+          img.onload = this.step_func_done(function() {
+            assert_equals(img.currentSrc, expected[next]);
+          });
+        } else {
+          setTimeout(this.step_func_done(), 500 + load_time);
+        }
+      }, img.dataset.desc + ', resize to ' + next);
+    });
+    iframe.classList.toggle('wide');
+    iframe.classList.toggle('narrow');
+  });
+  done();
+}
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementenvironmentchangesw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/environment-changes/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/environment-changes/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/environment-changes/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/environment-changes/viewport-change.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementimage1jpg"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/image-1.jpg</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/image-1.jpg
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementimgcompleteexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/img.complete-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/img.complete-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/img.complete-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+   
+
+PASS img src omitted 
+PASS img src empty 
+PASS async src complete test 
+FAIL IDL attribute complete returns true when image resource has been fetched but not run yet &amp; image is not in broken state assert_unreached: .complete didn't change to true Reached unreachable code
+PASS async src broken test 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementimgcompletehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/img.complete.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/img.complete.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/img.complete.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,82 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;title&gt;DOM img complete Test&lt;/title&gt;
+&lt;meta content=&quot;text/html; charset=UTF-8&quot; http-equiv=&quot;Content-Type&quot;&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Anselm Hannemann&quot; href=&quot;http://anselm-hannemann.com/&quot; /&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-img-complete&quot; /&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;Tests the complete status of the img-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+
+&lt;img id=&quot;imgTestTag&quot;&gt;
+&lt;img src=&quot;&quot; id=&quot;imgTestTag2&quot;&gt;
+&lt;img id=&quot;imgTestTag3&quot; style=&quot;width: 80px; height:auto;&quot;&gt;
+&lt;img id=&quot;imgTestTag4&quot;&gt;
+
+&lt;script&gt;
+  var imageInstance = document.createElement('img');
+  imageInstance.style.display = 'none';
+
+  document.body.appendChild(imageInstance);
+&lt;/script&gt;
+
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  test(function() {
+    assert_true(document.getElementById(&quot;imgTestTag&quot;).complete);
+  }, &quot;img src omitted&quot;);
+
+  test(function() {
+    assert_true(document.getElementById(&quot;imgTestTag2&quot;).complete);
+  }, &quot;img src empty&quot;);
+
+  // test if set to true after img is completely available
+  var t = async_test(&quot;async src complete test&quot;);
+
+  t.step(function(){
+    document.getElementById(&quot;imgTestTag3&quot;).src = '3.jpg?nocache=' + Math.random();
+
+    //test if img.complete is set to false if src is changed
+    assert_false(document.getElementById(&quot;imgTestTag3&quot;).complete, &quot;src changed, should be set to false&quot;)
+  });
+
+  document.getElementById(&quot;imgTestTag3&quot;).onload = t.step_func(function(){
+    assert_true(document.getElementById(&quot;imgTestTag3&quot;).complete);
+    t.done();
+  });
+
+  // https://html.spec.whatwg.org/multipage/multipage/embedded-content-1.html#update-the-image-data
+  // says to &quot;await a stable state&quot; before fetching so we use a separate &lt;script&gt;
+  imageInstance.src = 'image-1.jpg?pipe=trickle(d1)&amp;nocache=' + Math.random(); // make sure the image isn't in cache
+&lt;/script&gt;
+&lt;script&gt;
+  // test: The final task that is queued by the networking task source once the resource has been fetched has been queued, but has not yet been run, and the img element is not in the broken state
+  async_test(function(t) {
+    assert_false(imageInstance.complete, &quot;imageInstance.complete should be false&quot;);
+    var startTime = Date.now();
+    while (true) {
+      if (Date.now() - startTime &gt; 2000)
+        assert_unreached('.complete didn\'t change to true');
+      if (imageInstance.complete === true) break;
+    }
+    t.done();
+  },
+  'IDL attribute complete returns true when image resource has been fetched but not run yet &amp; image is not in broken state');
+
+  // test if broken img does not pass
+  var t2 = async_test(&quot;async src broken test&quot;);
+  var img4 = document.getElementById(&quot;imgTestTag4&quot;);
+
+  t2.step(
+    function(){
+    img4.src = 'brokenimg.jpg';
+
+    //test if img.complete is set to false if src is changed
+    assert_false(img4.complete, &quot;src changed to broken img, should be set to false&quot;);
+  });
+
+  img4.onload = img4.onerror = t2.step_func(function(event){
+    assert_equals(event.type, &quot;error&quot;);
+    assert_true(img4.complete);
+    t2.done();
+  });
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementsizesparseasizesattributeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,611 @@
</span><ins>+   
+
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?a2 300w, /w3c/resources/images/green-16x16.png?a2 301w&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?b2 450w, /w3c/resources/images/green-16x16.png?b2 451w&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?c2 600w, /w3c/resources/images/green-16x16.png?c2 601w&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?d2 900w, /w3c/resources/images/green-16x16.png?d2 901w&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e2 50w, /w3c/resources/images/green-16x16.png?e2 51w&quot; sizes=&quot;0&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e3 50w, /w3c/resources/images/green-16x16.png?e3 51w&quot; sizes=&quot;-0&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e4 50w, /w3c/resources/images/green-16x16.png?e4 51w&quot; sizes=&quot;+0&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e5 50w, /w3c/resources/images/green-16x16.png?e5 51w&quot; sizes=&quot;+1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e6 50w, /w3c/resources/images/green-16x16.png?e6 51w&quot; sizes=&quot;.1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e7 50w, /w3c/resources/images/green-16x16.png?e7 51w&quot; sizes=&quot;0.1em&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e8 50w, /w3c/resources/images/green-16x16.png?e8 51w&quot; sizes=&quot;0.1ex&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e9 50w, /w3c/resources/images/green-16x16.png?e9 51w&quot; sizes=&quot;0.1ch&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e10 50w, /w3c/resources/images/green-16x16.png?e10 51w&quot; sizes=&quot;0.1rem&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e11 50w, /w3c/resources/images/green-16x16.png?e11 51w&quot; sizes=&quot;0.1vw&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e12 50w, /w3c/resources/images/green-16x16.png?e12 51w&quot; sizes=&quot;0.1vh&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e13 50w, /w3c/resources/images/green-16x16.png?e13 51w&quot; sizes=&quot;0.1vmin&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e14 50w, /w3c/resources/images/green-16x16.png?e14 51w&quot; sizes=&quot;0.1vmax&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e15 50w, /w3c/resources/images/green-16x16.png?e15 51w&quot; sizes=&quot;0.1cm&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e16 50w, /w3c/resources/images/green-16x16.png?e16 51w&quot; sizes=&quot;1mm&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e17 50w, /w3c/resources/images/green-16x16.png?e17 51w&quot; sizes=&quot;1q&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e18 50w, /w3c/resources/images/green-16x16.png?e18 51w&quot; sizes=&quot;0.01in&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e19 50w, /w3c/resources/images/green-16x16.png?e19 51w&quot; sizes=&quot;0.1pc&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e20 50w, /w3c/resources/images/green-16x16.png?e20 51w&quot; sizes=&quot;0.1pt&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e21 50w, /w3c/resources/images/green-16x16.png?e21 51w&quot; sizes=&quot;/* */1px/* */&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e22 50w, /w3c/resources/images/green-16x16.png?e22 51w&quot; sizes=&quot; /**/ /**/ 1px /**/ /**/ &quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e23 50w, /w3c/resources/images/green-16x16.png?e23 51w&quot; sizes=&quot;(),1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e24 50w, /w3c/resources/images/green-16x16.png?e24 51w&quot; sizes=&quot;x(),1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e25 50w, /w3c/resources/images/green-16x16.png?e25 51w&quot; sizes=&quot;{},1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e26 50w, /w3c/resources/images/green-16x16.png?e26 51w&quot; sizes=&quot;[],1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e27 50w, /w3c/resources/images/green-16x16.png?e27 51w&quot; sizes=&quot;1px,(&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e28 50w, /w3c/resources/images/green-16x16.png?e28 51w&quot; sizes=&quot;1px,x(&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e29 50w, /w3c/resources/images/green-16x16.png?e29 51w&quot; sizes=&quot;1px,{&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e30 50w, /w3c/resources/images/green-16x16.png?e30 51w&quot; sizes=&quot;1px,[&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e31 50w, /w3c/resources/images/green-16x16.png?e31 51w&quot; sizes=&quot;\(,1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e32 50w, /w3c/resources/images/green-16x16.png?e32 51w&quot; sizes=&quot;x\(,1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e33 50w, /w3c/resources/images/green-16x16.png?e33 51w&quot; sizes=&quot;\{,1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e34 50w, /w3c/resources/images/green-16x16.png?e34 51w&quot; sizes=&quot;\[,1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e35 50w, /w3c/resources/images/green-16x16.png?e35 51w&quot; sizes=&quot;1\p\x&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e36 50w, /w3c/resources/images/green-16x16.png?e36 51w&quot; sizes=&quot;calc(1px)&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e37 50w, /w3c/resources/images/green-16x16.png?e37 51w&quot; sizes=&quot;(min-width:0) calc(1px)&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e38 50w, /w3c/resources/images/green-16x16.png?e38 51w&quot; sizes=&quot;(min-width:calc(0)) 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e39 50w, /w3c/resources/images/green-16x16.png?e39 51w&quot; sizes=&quot;(min-width:0) 1px, 100vw&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e40 50w, /w3c/resources/images/green-16x16.png?e40 51w&quot; sizes=&quot;(min-width:0) 1px, (min-width:0) 100vw, 100vw&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e41 50w, /w3c/resources/images/green-16x16.png?e41 51w&quot; sizes=&quot;(min-width:0) 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e42 50w, /w3c/resources/images/green-16x16.png?e42 51w&quot; sizes=&quot;not (min-width:0) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e43 50w, /w3c/resources/images/green-16x16.png?e43 51w&quot; sizes=&quot;(min-width:unknown-mf-value) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e44 50w, /w3c/resources/images/green-16x16.png?e44 51w&quot; sizes=&quot;not (min-width:unknown-mf-value) 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e45 50w, /w3c/resources/images/green-16x16.png?e45 51w&quot; sizes=&quot;(min-width:-1px) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e46 50w, /w3c/resources/images/green-16x16.png?e46 51w&quot; sizes=&quot;not (min-width:-1px) 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e47 50w, /w3c/resources/images/green-16x16.png?e47 51w&quot; sizes=&quot;(unknown-mf-name) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e48 50w, /w3c/resources/images/green-16x16.png?e48 51w&quot; sizes=&quot;not (unknown-mf-name) 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e49 50w, /w3c/resources/images/green-16x16.png?e49 51w&quot; sizes=&quot;(&amp;quot;unknown-general-enclosed&amp;quot;) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e50 50w, /w3c/resources/images/green-16x16.png?e50 51w&quot; sizes=&quot;not (&amp;quot;unknown-general-enclosed&amp;quot;) 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e51 50w, /w3c/resources/images/green-16x16.png?e51 51w&quot; sizes=&quot;unknown-general-enclosed(foo) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e52 50w, /w3c/resources/images/green-16x16.png?e52 51w&quot; sizes=&quot;not unknown-general-enclosed(foo) 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e53 50w, /w3c/resources/images/green-16x16.png?e53 51w&quot; sizes=&quot;print 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e54 50w, /w3c/resources/images/green-16x16.png?e54 51w&quot; sizes=&quot;not print 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e55 50w, /w3c/resources/images/green-16x16.png?e55 51w&quot; sizes=&quot;unknown-media-type 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e56 50w, /w3c/resources/images/green-16x16.png?e56 51w&quot; sizes=&quot;not unknown-media-type 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e57 50w, /w3c/resources/images/green-16x16.png?e57 51w&quot; sizes=&quot;(min-width:0) or (min-width:0) 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e58 50w, /w3c/resources/images/green-16x16.png?e58 51w&quot; sizes=&quot;(min-width:0) or (unknown-mf-name) 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e59 50w, /w3c/resources/images/green-16x16.png?e59 51w&quot; sizes=&quot;(min-width:0) or (min-width:unknown-mf-value) 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e60 50w, /w3c/resources/images/green-16x16.png?e60 51w&quot; sizes=&quot;(min-width:0) or (min-width:-1px) 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e61 50w, /w3c/resources/images/green-16x16.png?e61 51w&quot; sizes=&quot;(min-width:0) or (&amp;quot;unknown-general-enclosed&amp;quot;) 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e62 50w, /w3c/resources/images/green-16x16.png?e62 51w&quot; sizes=&quot;(min-width:0) or unknown-general-enclosed(foo) 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e63 50w, /w3c/resources/images/green-16x16.png?e63 51w&quot; sizes=&quot;(min-width:0) or (!) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e64 50w, /w3c/resources/images/green-16x16.png?e64 51w&quot; sizes=&quot;(min-width:0) or unknown-media-type 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e65 50w, /w3c/resources/images/green-16x16.png?e65 51w&quot; sizes=&quot;(123) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e66 50w, /w3c/resources/images/green-16x16.png?e66 51w&quot; sizes=&quot;not (123) 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e67 50w, /w3c/resources/images/green-16x16.png?e67 51w&quot; sizes=&quot;(!) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e68 50w, /w3c/resources/images/green-16x16.png?e68 51w&quot; sizes=&quot;not (!) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e69 50w, /w3c/resources/images/green-16x16.png?e69 51w&quot; sizes=&quot;! 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e70 50w, /w3c/resources/images/green-16x16.png?e70 51w&quot; sizes=&quot;not ! 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e71 50w, /w3c/resources/images/green-16x16.png?e71 51w&quot; sizes=&quot;(]) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e72 50w, /w3c/resources/images/green-16x16.png?e72 51w&quot; sizes=&quot;not (]) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e73 50w, /w3c/resources/images/green-16x16.png?e73 51w&quot; sizes=&quot;] 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e74 50w, /w3c/resources/images/green-16x16.png?e74 51w&quot; sizes=&quot;not ] 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e75 50w, /w3c/resources/images/green-16x16.png?e75 51w&quot; sizes=&quot;(}) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e76 50w, /w3c/resources/images/green-16x16.png?e76 51w&quot; sizes=&quot;not (}) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e77 50w, /w3c/resources/images/green-16x16.png?e77 51w&quot; sizes=&quot;} 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e78 50w, /w3c/resources/images/green-16x16.png?e78 51w&quot; sizes=&quot;not } 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e79 50w, /w3c/resources/images/green-16x16.png?e79 51w&quot; sizes=&quot;) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e80 50w, /w3c/resources/images/green-16x16.png?e80 51w&quot; sizes=&quot;not ) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e81 50w, /w3c/resources/images/green-16x16.png?e81 51w&quot; sizes=&quot;(;) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e82 50w, /w3c/resources/images/green-16x16.png?e82 51w&quot; sizes=&quot;not (;) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e83 50w, /w3c/resources/images/green-16x16.png?e83 51w&quot; sizes=&quot;(.) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e84 50w, /w3c/resources/images/green-16x16.png?e84 51w&quot; sizes=&quot;not (.) 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e85 50w, /w3c/resources/images/green-16x16.png?e85 51w&quot; sizes=&quot;; 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e86 50w, /w3c/resources/images/green-16x16.png?e86 51w&quot; sizes=&quot;not ; 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e87 50w, /w3c/resources/images/green-16x16.png?e87 51w&quot; sizes=&quot;, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e88 50w, /w3c/resources/images/green-16x16.png?e88 51w&quot; sizes=&quot;1px,&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e89 50w, /w3c/resources/images/green-16x16.png?e89 51w&quot; sizes=&quot;(min-width:0) 1px,&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e90 50w, /w3c/resources/images/green-16x16.png?e90 51w&quot; sizes=&quot;-0e-0px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e91 50w, /w3c/resources/images/green-16x16.png?e91 51w&quot; sizes=&quot;+0.11e+01px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e92 50w, /w3c/resources/images/green-16x16.png?e92 51w&quot; sizes=&quot;0.2e1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e93 50w, /w3c/resources/images/green-16x16.png?e93 51w&quot; sizes=&quot;0.3E1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e94 50w, /w3c/resources/images/green-16x16.png?e94 51w&quot; sizes=&quot;.4E1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e95 50w, /w3c/resources/images/green-16x16.png?e95 51w&quot; sizes=&quot;all 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e96 50w, /w3c/resources/images/green-16x16.png?e96 51w&quot; sizes=&quot;all and (min-width:0) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e97 50w, /w3c/resources/images/green-16x16.png?e97 51w&quot; sizes=&quot;min-width:0 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e98 50w, /w3c/resources/images/green-16x16.png?e98 51w&quot; sizes=&quot;1px, 100vw&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e99 50w, /w3c/resources/images/green-16x16.png?e99 51w&quot; sizes=&quot;1px, (min-width:0) 100vw&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e100 50w, /w3c/resources/images/green-16x16.png?e100 51w&quot; sizes=&quot;1px, foo bar&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e101 50w, /w3c/resources/images/green-16x16.png?e101 51w&quot; sizes=&quot;(min-width:0) 1px, foo bar&quot;&gt; ref sizes=&quot;1px&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f2 50w, /w3c/resources/images/green-16x16.png?f2 51w&quot; sizes=&quot;&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f3 50w, /w3c/resources/images/green-16x16.png?f3 51w&quot; sizes=&quot;,&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f4 50w, /w3c/resources/images/green-16x16.png?f4 51w&quot; sizes=&quot;-1px&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f5 50w, /w3c/resources/images/green-16x16.png?f5 51w&quot; sizes=&quot;1&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f6 50w, /w3c/resources/images/green-16x16.png?f6 51w&quot; sizes=&quot;0.1%&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f7 50w, /w3c/resources/images/green-16x16.png?f7 51w&quot; sizes=&quot;0.1deg&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f8 50w, /w3c/resources/images/green-16x16.png?f8 51w&quot; sizes=&quot;0.1grad&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f9 50w, /w3c/resources/images/green-16x16.png?f9 51w&quot; sizes=&quot;0.1rad&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f10 50w, /w3c/resources/images/green-16x16.png?f10 51w&quot; sizes=&quot;0.1turn&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f11 50w, /w3c/resources/images/green-16x16.png?f11 51w&quot; sizes=&quot;0.1s&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f12 50w, /w3c/resources/images/green-16x16.png?f12 51w&quot; sizes=&quot;0.1ms&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f13 50w, /w3c/resources/images/green-16x16.png?f13 51w&quot; sizes=&quot;0.1Hz&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f14 50w, /w3c/resources/images/green-16x16.png?f14 51w&quot; sizes=&quot;0.1kHz&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f15 50w, /w3c/resources/images/green-16x16.png?f15 51w&quot; sizes=&quot;0.1dpi&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f16 50w, /w3c/resources/images/green-16x16.png?f16 51w&quot; sizes=&quot;0.1dpcm&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f17 50w, /w3c/resources/images/green-16x16.png?f17 51w&quot; sizes=&quot;0.1dppx&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f18 50w, /w3c/resources/images/green-16x16.png?f18 51w&quot; data-foo=&quot;1px&quot; sizes=&quot;attr(data-foo, length, 1px)&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f19 50w, /w3c/resources/images/green-16x16.png?f19 51w&quot; data-foo=&quot;1&quot; sizes=&quot;attr(data-foo, px, 1px)&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f20 50w, /w3c/resources/images/green-16x16.png?f20 51w&quot; sizes=&quot;toggle(1px)&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f21 50w, /w3c/resources/images/green-16x16.png?f21 51w&quot; sizes=&quot;inherit&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f22 50w, /w3c/resources/images/green-16x16.png?f22 51w&quot; sizes=&quot;auto&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f23 50w, /w3c/resources/images/green-16x16.png?f23 51w&quot; sizes=&quot;initial&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f24 50w, /w3c/resources/images/green-16x16.png?f24 51w&quot; sizes=&quot;unset&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f25 50w, /w3c/resources/images/green-16x16.png?f25 51w&quot; sizes=&quot;default&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f26 50w, /w3c/resources/images/green-16x16.png?f26 51w&quot; sizes=&quot;1/* */px&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f27 50w, /w3c/resources/images/green-16x16.png?f27 51w&quot; sizes=&quot;1p/* */x&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f28 50w, /w3c/resources/images/green-16x16.png?f28 51w&quot; sizes=&quot;-/**/0&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f29 50w, /w3c/resources/images/green-16x16.png?f29 51w&quot; sizes=&quot;((),1px&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f30 50w, /w3c/resources/images/green-16x16.png?f30 51w&quot; sizes=&quot;x(x(),1px&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f31 50w, /w3c/resources/images/green-16x16.png?f31 51w&quot; sizes=&quot;{{},1px&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f32 50w, /w3c/resources/images/green-16x16.png?f32 51w&quot; sizes=&quot;[[],1px&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f33 50w, /w3c/resources/images/green-16x16.png?f33 51w&quot; sizes=&quot;1px !important&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f34 50w, /w3c/resources/images/green-16x16.png?f34 51w&quot; sizes=&quot;\1px&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f35 50w, /w3c/resources/images/green-16x16.png?f35 51w&quot; sizes=&quot;all 1px&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f36 50w, /w3c/resources/images/green-16x16.png?f36 51w&quot; sizes=&quot;all and (min-width:0) 1px&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f37 50w, /w3c/resources/images/green-16x16.png?f37 51w&quot; sizes=&quot;min-width:0 1px&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f38 50w, /w3c/resources/images/green-16x16.png?f38 51w&quot; sizes=&quot;100vw, 1px&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f39 50w, /w3c/resources/images/green-16x16.png?f39 51w&quot; sizes=&quot;100vw, (min-width:0) 1px&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f40 50w, /w3c/resources/images/green-16x16.png?f40 51w&quot; sizes=&quot;foo bar&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f41 50w, /w3c/resources/images/green-16x16.png?f41 51w&quot; sizes=&quot;foo-bar&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f42 50w, /w3c/resources/images/green-16x16.png?f42 51w&quot; sizes=&quot;(min-width:0) 1px foo bar&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f43 50w, /w3c/resources/images/green-16x16.png?f43 51w&quot; sizes=&quot;(min-width:0) 0.1%&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f44 50w, /w3c/resources/images/green-16x16.png?f44 51w&quot; sizes=&quot;(min-width:0) 1&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f45 50w, /w3c/resources/images/green-16x16.png?f45 51w&quot; sizes=&quot;-1e0px&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f46 50w, /w3c/resources/images/green-16x16.png?f46 51w&quot; sizes=&quot;1e1.5px&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f47 50w, /w3c/resources/images/green-16x16.png?f47 51w&quot; style=&quot;--foo: 1px&quot; sizes=&quot;var(--foo)&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f48 50w, /w3c/resources/images/green-16x16.png?f48 51w&quot; sizes=&quot;calc(1px&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f49 50w, /w3c/resources/images/green-16x16.png?f49 51w&quot; sizes=&quot;(min-width:0) calc(1px&quot;&gt; ref sizes=&quot;100vw&quot; (standards mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?a2 300w, /w3c/resources/images/green-16x16.png?a2 301w&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?b2 450w, /w3c/resources/images/green-16x16.png?b2 451w&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?c2 600w, /w3c/resources/images/green-16x16.png?c2 601w&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?d2 900w, /w3c/resources/images/green-16x16.png?d2 901w&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e2 50w, /w3c/resources/images/green-16x16.png?e2 51w&quot; sizes=&quot;0&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e3 50w, /w3c/resources/images/green-16x16.png?e3 51w&quot; sizes=&quot;-0&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e4 50w, /w3c/resources/images/green-16x16.png?e4 51w&quot; sizes=&quot;+0&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e5 50w, /w3c/resources/images/green-16x16.png?e5 51w&quot; sizes=&quot;+1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e6 50w, /w3c/resources/images/green-16x16.png?e6 51w&quot; sizes=&quot;.1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e7 50w, /w3c/resources/images/green-16x16.png?e7 51w&quot; sizes=&quot;0.1em&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e8 50w, /w3c/resources/images/green-16x16.png?e8 51w&quot; sizes=&quot;0.1ex&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e9 50w, /w3c/resources/images/green-16x16.png?e9 51w&quot; sizes=&quot;0.1ch&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e10 50w, /w3c/resources/images/green-16x16.png?e10 51w&quot; sizes=&quot;0.1rem&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e11 50w, /w3c/resources/images/green-16x16.png?e11 51w&quot; sizes=&quot;0.1vw&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e12 50w, /w3c/resources/images/green-16x16.png?e12 51w&quot; sizes=&quot;0.1vh&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e13 50w, /w3c/resources/images/green-16x16.png?e13 51w&quot; sizes=&quot;0.1vmin&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e14 50w, /w3c/resources/images/green-16x16.png?e14 51w&quot; sizes=&quot;0.1vmax&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e15 50w, /w3c/resources/images/green-16x16.png?e15 51w&quot; sizes=&quot;0.1cm&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e16 50w, /w3c/resources/images/green-16x16.png?e16 51w&quot; sizes=&quot;1mm&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e17 50w, /w3c/resources/images/green-16x16.png?e17 51w&quot; sizes=&quot;1q&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e18 50w, /w3c/resources/images/green-16x16.png?e18 51w&quot; sizes=&quot;0.01in&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e19 50w, /w3c/resources/images/green-16x16.png?e19 51w&quot; sizes=&quot;0.1pc&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e20 50w, /w3c/resources/images/green-16x16.png?e20 51w&quot; sizes=&quot;0.1pt&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e21 50w, /w3c/resources/images/green-16x16.png?e21 51w&quot; sizes=&quot;/* */1px/* */&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e22 50w, /w3c/resources/images/green-16x16.png?e22 51w&quot; sizes=&quot; /**/ /**/ 1px /**/ /**/ &quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e23 50w, /w3c/resources/images/green-16x16.png?e23 51w&quot; sizes=&quot;(),1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e24 50w, /w3c/resources/images/green-16x16.png?e24 51w&quot; sizes=&quot;x(),1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e25 50w, /w3c/resources/images/green-16x16.png?e25 51w&quot; sizes=&quot;{},1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e26 50w, /w3c/resources/images/green-16x16.png?e26 51w&quot; sizes=&quot;[],1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e27 50w, /w3c/resources/images/green-16x16.png?e27 51w&quot; sizes=&quot;1px,(&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e28 50w, /w3c/resources/images/green-16x16.png?e28 51w&quot; sizes=&quot;1px,x(&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e29 50w, /w3c/resources/images/green-16x16.png?e29 51w&quot; sizes=&quot;1px,{&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e30 50w, /w3c/resources/images/green-16x16.png?e30 51w&quot; sizes=&quot;1px,[&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e31 50w, /w3c/resources/images/green-16x16.png?e31 51w&quot; sizes=&quot;\(,1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e32 50w, /w3c/resources/images/green-16x16.png?e32 51w&quot; sizes=&quot;x\(,1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e33 50w, /w3c/resources/images/green-16x16.png?e33 51w&quot; sizes=&quot;\{,1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e34 50w, /w3c/resources/images/green-16x16.png?e34 51w&quot; sizes=&quot;\[,1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e35 50w, /w3c/resources/images/green-16x16.png?e35 51w&quot; sizes=&quot;1\p\x&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e36 50w, /w3c/resources/images/green-16x16.png?e36 51w&quot; sizes=&quot;calc(1px)&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e37 50w, /w3c/resources/images/green-16x16.png?e37 51w&quot; sizes=&quot;(min-width:0) calc(1px)&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e38 50w, /w3c/resources/images/green-16x16.png?e38 51w&quot; sizes=&quot;(min-width:calc(0)) 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e39 50w, /w3c/resources/images/green-16x16.png?e39 51w&quot; sizes=&quot;(min-width:0) 1px, 100vw&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e40 50w, /w3c/resources/images/green-16x16.png?e40 51w&quot; sizes=&quot;(min-width:0) 1px, (min-width:0) 100vw, 100vw&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e41 50w, /w3c/resources/images/green-16x16.png?e41 51w&quot; sizes=&quot;(min-width:0) 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e42 50w, /w3c/resources/images/green-16x16.png?e42 51w&quot; sizes=&quot;not (min-width:0) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e43 50w, /w3c/resources/images/green-16x16.png?e43 51w&quot; sizes=&quot;(min-width:unknown-mf-value) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e44 50w, /w3c/resources/images/green-16x16.png?e44 51w&quot; sizes=&quot;not (min-width:unknown-mf-value) 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e45 50w, /w3c/resources/images/green-16x16.png?e45 51w&quot; sizes=&quot;(min-width:-1px) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e46 50w, /w3c/resources/images/green-16x16.png?e46 51w&quot; sizes=&quot;not (min-width:-1px) 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e47 50w, /w3c/resources/images/green-16x16.png?e47 51w&quot; sizes=&quot;(unknown-mf-name) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e48 50w, /w3c/resources/images/green-16x16.png?e48 51w&quot; sizes=&quot;not (unknown-mf-name) 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e49 50w, /w3c/resources/images/green-16x16.png?e49 51w&quot; sizes=&quot;(&amp;quot;unknown-general-enclosed&amp;quot;) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e50 50w, /w3c/resources/images/green-16x16.png?e50 51w&quot; sizes=&quot;not (&amp;quot;unknown-general-enclosed&amp;quot;) 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e51 50w, /w3c/resources/images/green-16x16.png?e51 51w&quot; sizes=&quot;unknown-general-enclosed(foo) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e52 50w, /w3c/resources/images/green-16x16.png?e52 51w&quot; sizes=&quot;not unknown-general-enclosed(foo) 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e53 50w, /w3c/resources/images/green-16x16.png?e53 51w&quot; sizes=&quot;print 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e54 50w, /w3c/resources/images/green-16x16.png?e54 51w&quot; sizes=&quot;not print 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e55 50w, /w3c/resources/images/green-16x16.png?e55 51w&quot; sizes=&quot;unknown-media-type 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e56 50w, /w3c/resources/images/green-16x16.png?e56 51w&quot; sizes=&quot;not unknown-media-type 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e57 50w, /w3c/resources/images/green-16x16.png?e57 51w&quot; sizes=&quot;(min-width:0) or (min-width:0) 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e58 50w, /w3c/resources/images/green-16x16.png?e58 51w&quot; sizes=&quot;(min-width:0) or (unknown-mf-name) 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e59 50w, /w3c/resources/images/green-16x16.png?e59 51w&quot; sizes=&quot;(min-width:0) or (min-width:unknown-mf-value) 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e60 50w, /w3c/resources/images/green-16x16.png?e60 51w&quot; sizes=&quot;(min-width:0) or (min-width:-1px) 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e61 50w, /w3c/resources/images/green-16x16.png?e61 51w&quot; sizes=&quot;(min-width:0) or (&amp;quot;unknown-general-enclosed&amp;quot;) 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e62 50w, /w3c/resources/images/green-16x16.png?e62 51w&quot; sizes=&quot;(min-width:0) or unknown-general-enclosed(foo) 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e63 50w, /w3c/resources/images/green-16x16.png?e63 51w&quot; sizes=&quot;(min-width:0) or (!) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e64 50w, /w3c/resources/images/green-16x16.png?e64 51w&quot; sizes=&quot;(min-width:0) or unknown-media-type 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e65 50w, /w3c/resources/images/green-16x16.png?e65 51w&quot; sizes=&quot;(123) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e66 50w, /w3c/resources/images/green-16x16.png?e66 51w&quot; sizes=&quot;not (123) 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e67 50w, /w3c/resources/images/green-16x16.png?e67 51w&quot; sizes=&quot;(!) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e68 50w, /w3c/resources/images/green-16x16.png?e68 51w&quot; sizes=&quot;not (!) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e69 50w, /w3c/resources/images/green-16x16.png?e69 51w&quot; sizes=&quot;! 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e70 50w, /w3c/resources/images/green-16x16.png?e70 51w&quot; sizes=&quot;not ! 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e71 50w, /w3c/resources/images/green-16x16.png?e71 51w&quot; sizes=&quot;(]) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e72 50w, /w3c/resources/images/green-16x16.png?e72 51w&quot; sizes=&quot;not (]) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e73 50w, /w3c/resources/images/green-16x16.png?e73 51w&quot; sizes=&quot;] 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e74 50w, /w3c/resources/images/green-16x16.png?e74 51w&quot; sizes=&quot;not ] 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e75 50w, /w3c/resources/images/green-16x16.png?e75 51w&quot; sizes=&quot;(}) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e76 50w, /w3c/resources/images/green-16x16.png?e76 51w&quot; sizes=&quot;not (}) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e77 50w, /w3c/resources/images/green-16x16.png?e77 51w&quot; sizes=&quot;} 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e78 50w, /w3c/resources/images/green-16x16.png?e78 51w&quot; sizes=&quot;not } 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e79 50w, /w3c/resources/images/green-16x16.png?e79 51w&quot; sizes=&quot;) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e80 50w, /w3c/resources/images/green-16x16.png?e80 51w&quot; sizes=&quot;not ) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e81 50w, /w3c/resources/images/green-16x16.png?e81 51w&quot; sizes=&quot;(;) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e82 50w, /w3c/resources/images/green-16x16.png?e82 51w&quot; sizes=&quot;not (;) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e83 50w, /w3c/resources/images/green-16x16.png?e83 51w&quot; sizes=&quot;(.) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e84 50w, /w3c/resources/images/green-16x16.png?e84 51w&quot; sizes=&quot;not (.) 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e85 50w, /w3c/resources/images/green-16x16.png?e85 51w&quot; sizes=&quot;; 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e86 50w, /w3c/resources/images/green-16x16.png?e86 51w&quot; sizes=&quot;not ; 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e87 50w, /w3c/resources/images/green-16x16.png?e87 51w&quot; sizes=&quot;, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e88 50w, /w3c/resources/images/green-16x16.png?e88 51w&quot; sizes=&quot;1px,&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e89 50w, /w3c/resources/images/green-16x16.png?e89 51w&quot; sizes=&quot;(min-width:0) 1px,&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e90 50w, /w3c/resources/images/green-16x16.png?e90 51w&quot; sizes=&quot;-0e-0px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e91 50w, /w3c/resources/images/green-16x16.png?e91 51w&quot; sizes=&quot;+0.11e+01px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e92 50w, /w3c/resources/images/green-16x16.png?e92 51w&quot; sizes=&quot;0.2e1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e93 50w, /w3c/resources/images/green-16x16.png?e93 51w&quot; sizes=&quot;0.3E1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e94 50w, /w3c/resources/images/green-16x16.png?e94 51w&quot; sizes=&quot;.4E1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e95 50w, /w3c/resources/images/green-16x16.png?e95 51w&quot; sizes=&quot;all 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e96 50w, /w3c/resources/images/green-16x16.png?e96 51w&quot; sizes=&quot;all and (min-width:0) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e97 50w, /w3c/resources/images/green-16x16.png?e97 51w&quot; sizes=&quot;min-width:0 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e98 50w, /w3c/resources/images/green-16x16.png?e98 51w&quot; sizes=&quot;1px, 100vw&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e99 50w, /w3c/resources/images/green-16x16.png?e99 51w&quot; sizes=&quot;1px, (min-width:0) 100vw&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e100 50w, /w3c/resources/images/green-16x16.png?e100 51w&quot; sizes=&quot;1px, foo bar&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e101 50w, /w3c/resources/images/green-16x16.png?e101 51w&quot; sizes=&quot;(min-width:0) 1px, foo bar&quot;&gt; ref sizes=&quot;1px&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f2 50w, /w3c/resources/images/green-16x16.png?f2 51w&quot; sizes=&quot;&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f3 50w, /w3c/resources/images/green-16x16.png?f3 51w&quot; sizes=&quot;,&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f4 50w, /w3c/resources/images/green-16x16.png?f4 51w&quot; sizes=&quot;-1px&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f5 50w, /w3c/resources/images/green-16x16.png?f5 51w&quot; sizes=&quot;1&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f6 50w, /w3c/resources/images/green-16x16.png?f6 51w&quot; sizes=&quot;0.1%&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f7 50w, /w3c/resources/images/green-16x16.png?f7 51w&quot; sizes=&quot;0.1deg&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f8 50w, /w3c/resources/images/green-16x16.png?f8 51w&quot; sizes=&quot;0.1grad&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f9 50w, /w3c/resources/images/green-16x16.png?f9 51w&quot; sizes=&quot;0.1rad&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f10 50w, /w3c/resources/images/green-16x16.png?f10 51w&quot; sizes=&quot;0.1turn&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f11 50w, /w3c/resources/images/green-16x16.png?f11 51w&quot; sizes=&quot;0.1s&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f12 50w, /w3c/resources/images/green-16x16.png?f12 51w&quot; sizes=&quot;0.1ms&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f13 50w, /w3c/resources/images/green-16x16.png?f13 51w&quot; sizes=&quot;0.1Hz&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f14 50w, /w3c/resources/images/green-16x16.png?f14 51w&quot; sizes=&quot;0.1kHz&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f15 50w, /w3c/resources/images/green-16x16.png?f15 51w&quot; sizes=&quot;0.1dpi&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f16 50w, /w3c/resources/images/green-16x16.png?f16 51w&quot; sizes=&quot;0.1dpcm&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f17 50w, /w3c/resources/images/green-16x16.png?f17 51w&quot; sizes=&quot;0.1dppx&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f18 50w, /w3c/resources/images/green-16x16.png?f18 51w&quot; data-foo=&quot;1px&quot; sizes=&quot;attr(data-foo, length, 1px)&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f19 50w, /w3c/resources/images/green-16x16.png?f19 51w&quot; data-foo=&quot;1&quot; sizes=&quot;attr(data-foo, px, 1px)&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f20 50w, /w3c/resources/images/green-16x16.png?f20 51w&quot; sizes=&quot;toggle(1px)&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f21 50w, /w3c/resources/images/green-16x16.png?f21 51w&quot; sizes=&quot;inherit&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f22 50w, /w3c/resources/images/green-16x16.png?f22 51w&quot; sizes=&quot;auto&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f23 50w, /w3c/resources/images/green-16x16.png?f23 51w&quot; sizes=&quot;initial&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f24 50w, /w3c/resources/images/green-16x16.png?f24 51w&quot; sizes=&quot;unset&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f25 50w, /w3c/resources/images/green-16x16.png?f25 51w&quot; sizes=&quot;default&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f26 50w, /w3c/resources/images/green-16x16.png?f26 51w&quot; sizes=&quot;1/* */px&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f27 50w, /w3c/resources/images/green-16x16.png?f27 51w&quot; sizes=&quot;1p/* */x&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f28 50w, /w3c/resources/images/green-16x16.png?f28 51w&quot; sizes=&quot;-/**/0&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f29 50w, /w3c/resources/images/green-16x16.png?f29 51w&quot; sizes=&quot;((),1px&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f30 50w, /w3c/resources/images/green-16x16.png?f30 51w&quot; sizes=&quot;x(x(),1px&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f31 50w, /w3c/resources/images/green-16x16.png?f31 51w&quot; sizes=&quot;{{},1px&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f32 50w, /w3c/resources/images/green-16x16.png?f32 51w&quot; sizes=&quot;[[],1px&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f33 50w, /w3c/resources/images/green-16x16.png?f33 51w&quot; sizes=&quot;1px !important&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f34 50w, /w3c/resources/images/green-16x16.png?f34 51w&quot; sizes=&quot;\1px&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f35 50w, /w3c/resources/images/green-16x16.png?f35 51w&quot; sizes=&quot;all 1px&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f36 50w, /w3c/resources/images/green-16x16.png?f36 51w&quot; sizes=&quot;all and (min-width:0) 1px&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f37 50w, /w3c/resources/images/green-16x16.png?f37 51w&quot; sizes=&quot;min-width:0 1px&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f38 50w, /w3c/resources/images/green-16x16.png?f38 51w&quot; sizes=&quot;100vw, 1px&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f39 50w, /w3c/resources/images/green-16x16.png?f39 51w&quot; sizes=&quot;100vw, (min-width:0) 1px&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f40 50w, /w3c/resources/images/green-16x16.png?f40 51w&quot; sizes=&quot;foo bar&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f41 50w, /w3c/resources/images/green-16x16.png?f41 51w&quot; sizes=&quot;foo-bar&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f42 50w, /w3c/resources/images/green-16x16.png?f42 51w&quot; sizes=&quot;(min-width:0) 1px foo bar&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f43 50w, /w3c/resources/images/green-16x16.png?f43 51w&quot; sizes=&quot;(min-width:0) 0.1%&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f44 50w, /w3c/resources/images/green-16x16.png?f44 51w&quot; sizes=&quot;(min-width:0) 1&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f45 50w, /w3c/resources/images/green-16x16.png?f45 51w&quot; sizes=&quot;-1e0px&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f46 50w, /w3c/resources/images/green-16x16.png?f46 51w&quot; sizes=&quot;1e1.5px&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f47 50w, /w3c/resources/images/green-16x16.png?f47 51w&quot; style=&quot;--foo: 1px&quot; sizes=&quot;var(--foo)&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f48 50w, /w3c/resources/images/green-16x16.png?f48 51w&quot; sizes=&quot;calc(1px&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f49 50w, /w3c/resources/images/green-16x16.png?f49 51w&quot; sizes=&quot;(min-width:0) calc(1px&quot;&gt; ref sizes=&quot;100vw&quot; (quirks mode) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?a2 300w, /w3c/resources/images/green-16x16.png?a2 301w&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?b2 450w, /w3c/resources/images/green-16x16.png?b2 451w&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?c2 600w, /w3c/resources/images/green-16x16.png?c2 601w&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?d2 900w, /w3c/resources/images/green-16x16.png?d2 901w&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e2 50w, /w3c/resources/images/green-16x16.png?e2 51w&quot; sizes=&quot;0&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e3 50w, /w3c/resources/images/green-16x16.png?e3 51w&quot; sizes=&quot;-0&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e4 50w, /w3c/resources/images/green-16x16.png?e4 51w&quot; sizes=&quot;+0&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e5 50w, /w3c/resources/images/green-16x16.png?e5 51w&quot; sizes=&quot;+1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e6 50w, /w3c/resources/images/green-16x16.png?e6 51w&quot; sizes=&quot;.1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e7 50w, /w3c/resources/images/green-16x16.png?e7 51w&quot; sizes=&quot;0.1em&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e8 50w, /w3c/resources/images/green-16x16.png?e8 51w&quot; sizes=&quot;0.1ex&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e9 50w, /w3c/resources/images/green-16x16.png?e9 51w&quot; sizes=&quot;0.1ch&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e10 50w, /w3c/resources/images/green-16x16.png?e10 51w&quot; sizes=&quot;0.1rem&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e11 50w, /w3c/resources/images/green-16x16.png?e11 51w&quot; sizes=&quot;0.1vw&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e12 50w, /w3c/resources/images/green-16x16.png?e12 51w&quot; sizes=&quot;0.1vh&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e13 50w, /w3c/resources/images/green-16x16.png?e13 51w&quot; sizes=&quot;0.1vmin&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e14 50w, /w3c/resources/images/green-16x16.png?e14 51w&quot; sizes=&quot;0.1vmax&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e15 50w, /w3c/resources/images/green-16x16.png?e15 51w&quot; sizes=&quot;0.1cm&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e16 50w, /w3c/resources/images/green-16x16.png?e16 51w&quot; sizes=&quot;1mm&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e17 50w, /w3c/resources/images/green-16x16.png?e17 51w&quot; sizes=&quot;1q&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e18 50w, /w3c/resources/images/green-16x16.png?e18 51w&quot; sizes=&quot;0.01in&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e19 50w, /w3c/resources/images/green-16x16.png?e19 51w&quot; sizes=&quot;0.1pc&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e20 50w, /w3c/resources/images/green-16x16.png?e20 51w&quot; sizes=&quot;0.1pt&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e21 50w, /w3c/resources/images/green-16x16.png?e21 51w&quot; sizes=&quot;/* */1px/* */&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e22 50w, /w3c/resources/images/green-16x16.png?e22 51w&quot; sizes=&quot; /**/ /**/ 1px /**/ /**/ &quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e23 50w, /w3c/resources/images/green-16x16.png?e23 51w&quot; sizes=&quot;(),1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e24 50w, /w3c/resources/images/green-16x16.png?e24 51w&quot; sizes=&quot;x(),1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e25 50w, /w3c/resources/images/green-16x16.png?e25 51w&quot; sizes=&quot;{},1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e26 50w, /w3c/resources/images/green-16x16.png?e26 51w&quot; sizes=&quot;[],1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e27 50w, /w3c/resources/images/green-16x16.png?e27 51w&quot; sizes=&quot;1px,(&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e28 50w, /w3c/resources/images/green-16x16.png?e28 51w&quot; sizes=&quot;1px,x(&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e29 50w, /w3c/resources/images/green-16x16.png?e29 51w&quot; sizes=&quot;1px,{&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e30 50w, /w3c/resources/images/green-16x16.png?e30 51w&quot; sizes=&quot;1px,[&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e31 50w, /w3c/resources/images/green-16x16.png?e31 51w&quot; sizes=&quot;\(,1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e32 50w, /w3c/resources/images/green-16x16.png?e32 51w&quot; sizes=&quot;x\(,1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e33 50w, /w3c/resources/images/green-16x16.png?e33 51w&quot; sizes=&quot;\{,1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e34 50w, /w3c/resources/images/green-16x16.png?e34 51w&quot; sizes=&quot;\[,1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e35 50w, /w3c/resources/images/green-16x16.png?e35 51w&quot; sizes=&quot;1\p\x&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e36 50w, /w3c/resources/images/green-16x16.png?e36 51w&quot; sizes=&quot;calc(1px)&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e37 50w, /w3c/resources/images/green-16x16.png?e37 51w&quot; sizes=&quot;(min-width:0) calc(1px)&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e38 50w, /w3c/resources/images/green-16x16.png?e38 51w&quot; sizes=&quot;(min-width:calc(0)) 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e39 50w, /w3c/resources/images/green-16x16.png?e39 51w&quot; sizes=&quot;(min-width:0) 1px, 100vw&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e40 50w, /w3c/resources/images/green-16x16.png?e40 51w&quot; sizes=&quot;(min-width:0) 1px, (min-width:0) 100vw, 100vw&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e41 50w, /w3c/resources/images/green-16x16.png?e41 51w&quot; sizes=&quot;(min-width:0) 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e42 50w, /w3c/resources/images/green-16x16.png?e42 51w&quot; sizes=&quot;not (min-width:0) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e43 50w, /w3c/resources/images/green-16x16.png?e43 51w&quot; sizes=&quot;(min-width:unknown-mf-value) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e44 50w, /w3c/resources/images/green-16x16.png?e44 51w&quot; sizes=&quot;not (min-width:unknown-mf-value) 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e45 50w, /w3c/resources/images/green-16x16.png?e45 51w&quot; sizes=&quot;(min-width:-1px) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e46 50w, /w3c/resources/images/green-16x16.png?e46 51w&quot; sizes=&quot;not (min-width:-1px) 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e47 50w, /w3c/resources/images/green-16x16.png?e47 51w&quot; sizes=&quot;(unknown-mf-name) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e48 50w, /w3c/resources/images/green-16x16.png?e48 51w&quot; sizes=&quot;not (unknown-mf-name) 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e49 50w, /w3c/resources/images/green-16x16.png?e49 51w&quot; sizes=&quot;(&amp;quot;unknown-general-enclosed&amp;quot;) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e50 50w, /w3c/resources/images/green-16x16.png?e50 51w&quot; sizes=&quot;not (&amp;quot;unknown-general-enclosed&amp;quot;) 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e51 50w, /w3c/resources/images/green-16x16.png?e51 51w&quot; sizes=&quot;unknown-general-enclosed(foo) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e52 50w, /w3c/resources/images/green-16x16.png?e52 51w&quot; sizes=&quot;not unknown-general-enclosed(foo) 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e53 50w, /w3c/resources/images/green-16x16.png?e53 51w&quot; sizes=&quot;print 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e54 50w, /w3c/resources/images/green-16x16.png?e54 51w&quot; sizes=&quot;not print 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e55 50w, /w3c/resources/images/green-16x16.png?e55 51w&quot; sizes=&quot;unknown-media-type 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e56 50w, /w3c/resources/images/green-16x16.png?e56 51w&quot; sizes=&quot;not unknown-media-type 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e57 50w, /w3c/resources/images/green-16x16.png?e57 51w&quot; sizes=&quot;(min-width:0) or (min-width:0) 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e58 50w, /w3c/resources/images/green-16x16.png?e58 51w&quot; sizes=&quot;(min-width:0) or (unknown-mf-name) 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e59 50w, /w3c/resources/images/green-16x16.png?e59 51w&quot; sizes=&quot;(min-width:0) or (min-width:unknown-mf-value) 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e60 50w, /w3c/resources/images/green-16x16.png?e60 51w&quot; sizes=&quot;(min-width:0) or (min-width:-1px) 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e61 50w, /w3c/resources/images/green-16x16.png?e61 51w&quot; sizes=&quot;(min-width:0) or (&amp;quot;unknown-general-enclosed&amp;quot;) 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e62 50w, /w3c/resources/images/green-16x16.png?e62 51w&quot; sizes=&quot;(min-width:0) or unknown-general-enclosed(foo) 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e63 50w, /w3c/resources/images/green-16x16.png?e63 51w&quot; sizes=&quot;(min-width:0) or (!) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e64 50w, /w3c/resources/images/green-16x16.png?e64 51w&quot; sizes=&quot;(min-width:0) or unknown-media-type 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e65 50w, /w3c/resources/images/green-16x16.png?e65 51w&quot; sizes=&quot;(123) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e66 50w, /w3c/resources/images/green-16x16.png?e66 51w&quot; sizes=&quot;not (123) 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e67 50w, /w3c/resources/images/green-16x16.png?e67 51w&quot; sizes=&quot;(!) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e68 50w, /w3c/resources/images/green-16x16.png?e68 51w&quot; sizes=&quot;not (!) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e69 50w, /w3c/resources/images/green-16x16.png?e69 51w&quot; sizes=&quot;! 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e70 50w, /w3c/resources/images/green-16x16.png?e70 51w&quot; sizes=&quot;not ! 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e71 50w, /w3c/resources/images/green-16x16.png?e71 51w&quot; sizes=&quot;(]) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e72 50w, /w3c/resources/images/green-16x16.png?e72 51w&quot; sizes=&quot;not (]) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e73 50w, /w3c/resources/images/green-16x16.png?e73 51w&quot; sizes=&quot;] 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e74 50w, /w3c/resources/images/green-16x16.png?e74 51w&quot; sizes=&quot;not ] 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e75 50w, /w3c/resources/images/green-16x16.png?e75 51w&quot; sizes=&quot;(}) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e76 50w, /w3c/resources/images/green-16x16.png?e76 51w&quot; sizes=&quot;not (}) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e77 50w, /w3c/resources/images/green-16x16.png?e77 51w&quot; sizes=&quot;} 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e78 50w, /w3c/resources/images/green-16x16.png?e78 51w&quot; sizes=&quot;not } 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e79 50w, /w3c/resources/images/green-16x16.png?e79 51w&quot; sizes=&quot;) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e80 50w, /w3c/resources/images/green-16x16.png?e80 51w&quot; sizes=&quot;not ) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e81 50w, /w3c/resources/images/green-16x16.png?e81 51w&quot; sizes=&quot;(;) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e82 50w, /w3c/resources/images/green-16x16.png?e82 51w&quot; sizes=&quot;not (;) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e83 50w, /w3c/resources/images/green-16x16.png?e83 51w&quot; sizes=&quot;(.) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e84 50w, /w3c/resources/images/green-16x16.png?e84 51w&quot; sizes=&quot;not (.) 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e85 50w, /w3c/resources/images/green-16x16.png?e85 51w&quot; sizes=&quot;; 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e86 50w, /w3c/resources/images/green-16x16.png?e86 51w&quot; sizes=&quot;not ; 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e87 50w, /w3c/resources/images/green-16x16.png?e87 51w&quot; sizes=&quot;, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e88 50w, /w3c/resources/images/green-16x16.png?e88 51w&quot; sizes=&quot;1px,&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e89 50w, /w3c/resources/images/green-16x16.png?e89 51w&quot; sizes=&quot;(min-width:0) 1px,&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e90 50w, /w3c/resources/images/green-16x16.png?e90 51w&quot; sizes=&quot;-0e-0px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e91 50w, /w3c/resources/images/green-16x16.png?e91 51w&quot; sizes=&quot;+0.11e+01px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e92 50w, /w3c/resources/images/green-16x16.png?e92 51w&quot; sizes=&quot;0.2e1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e93 50w, /w3c/resources/images/green-16x16.png?e93 51w&quot; sizes=&quot;0.3E1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e94 50w, /w3c/resources/images/green-16x16.png?e94 51w&quot; sizes=&quot;.4E1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e95 50w, /w3c/resources/images/green-16x16.png?e95 51w&quot; sizes=&quot;all 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e96 50w, /w3c/resources/images/green-16x16.png?e96 51w&quot; sizes=&quot;all and (min-width:0) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e97 50w, /w3c/resources/images/green-16x16.png?e97 51w&quot; sizes=&quot;min-width:0 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e98 50w, /w3c/resources/images/green-16x16.png?e98 51w&quot; sizes=&quot;1px, 100vw&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e99 50w, /w3c/resources/images/green-16x16.png?e99 51w&quot; sizes=&quot;1px, (min-width:0) 100vw&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e100 50w, /w3c/resources/images/green-16x16.png?e100 51w&quot; sizes=&quot;1px, foo bar&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e101 50w, /w3c/resources/images/green-16x16.png?e101 51w&quot; sizes=&quot;(min-width:0) 1px, foo bar&quot;&gt; ref sizes=&quot;1px&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f2 50w, /w3c/resources/images/green-16x16.png?f2 51w&quot; sizes=&quot;&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f3 50w, /w3c/resources/images/green-16x16.png?f3 51w&quot; sizes=&quot;,&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f4 50w, /w3c/resources/images/green-16x16.png?f4 51w&quot; sizes=&quot;-1px&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f5 50w, /w3c/resources/images/green-16x16.png?f5 51w&quot; sizes=&quot;1&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f6 50w, /w3c/resources/images/green-16x16.png?f6 51w&quot; sizes=&quot;0.1%&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f7 50w, /w3c/resources/images/green-16x16.png?f7 51w&quot; sizes=&quot;0.1deg&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f8 50w, /w3c/resources/images/green-16x16.png?f8 51w&quot; sizes=&quot;0.1grad&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f9 50w, /w3c/resources/images/green-16x16.png?f9 51w&quot; sizes=&quot;0.1rad&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f10 50w, /w3c/resources/images/green-16x16.png?f10 51w&quot; sizes=&quot;0.1turn&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f11 50w, /w3c/resources/images/green-16x16.png?f11 51w&quot; sizes=&quot;0.1s&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f12 50w, /w3c/resources/images/green-16x16.png?f12 51w&quot; sizes=&quot;0.1ms&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f13 50w, /w3c/resources/images/green-16x16.png?f13 51w&quot; sizes=&quot;0.1Hz&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f14 50w, /w3c/resources/images/green-16x16.png?f14 51w&quot; sizes=&quot;0.1kHz&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f15 50w, /w3c/resources/images/green-16x16.png?f15 51w&quot; sizes=&quot;0.1dpi&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f16 50w, /w3c/resources/images/green-16x16.png?f16 51w&quot; sizes=&quot;0.1dpcm&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f17 50w, /w3c/resources/images/green-16x16.png?f17 51w&quot; sizes=&quot;0.1dppx&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f18 50w, /w3c/resources/images/green-16x16.png?f18 51w&quot; data-foo=&quot;1px&quot; sizes=&quot;attr(data-foo, length, 1px)&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f19 50w, /w3c/resources/images/green-16x16.png?f19 51w&quot; data-foo=&quot;1&quot; sizes=&quot;attr(data-foo, px, 1px)&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f20 50w, /w3c/resources/images/green-16x16.png?f20 51w&quot; sizes=&quot;toggle(1px)&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f21 50w, /w3c/resources/images/green-16x16.png?f21 51w&quot; sizes=&quot;inherit&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f22 50w, /w3c/resources/images/green-16x16.png?f22 51w&quot; sizes=&quot;auto&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f23 50w, /w3c/resources/images/green-16x16.png?f23 51w&quot; sizes=&quot;initial&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f24 50w, /w3c/resources/images/green-16x16.png?f24 51w&quot; sizes=&quot;unset&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f25 50w, /w3c/resources/images/green-16x16.png?f25 51w&quot; sizes=&quot;default&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f26 50w, /w3c/resources/images/green-16x16.png?f26 51w&quot; sizes=&quot;1/* */px&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f27 50w, /w3c/resources/images/green-16x16.png?f27 51w&quot; sizes=&quot;1p/* */x&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f28 50w, /w3c/resources/images/green-16x16.png?f28 51w&quot; sizes=&quot;-/**/0&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f29 50w, /w3c/resources/images/green-16x16.png?f29 51w&quot; sizes=&quot;((),1px&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f30 50w, /w3c/resources/images/green-16x16.png?f30 51w&quot; sizes=&quot;x(x(),1px&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f31 50w, /w3c/resources/images/green-16x16.png?f31 51w&quot; sizes=&quot;{{},1px&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f32 50w, /w3c/resources/images/green-16x16.png?f32 51w&quot; sizes=&quot;[[],1px&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f33 50w, /w3c/resources/images/green-16x16.png?f33 51w&quot; sizes=&quot;1px !important&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f34 50w, /w3c/resources/images/green-16x16.png?f34 51w&quot; sizes=&quot;\1px&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f35 50w, /w3c/resources/images/green-16x16.png?f35 51w&quot; sizes=&quot;all 1px&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f36 50w, /w3c/resources/images/green-16x16.png?f36 51w&quot; sizes=&quot;all and (min-width:0) 1px&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f37 50w, /w3c/resources/images/green-16x16.png?f37 51w&quot; sizes=&quot;min-width:0 1px&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f38 50w, /w3c/resources/images/green-16x16.png?f38 51w&quot; sizes=&quot;100vw, 1px&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f39 50w, /w3c/resources/images/green-16x16.png?f39 51w&quot; sizes=&quot;100vw, (min-width:0) 1px&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f40 50w, /w3c/resources/images/green-16x16.png?f40 51w&quot; sizes=&quot;foo bar&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f41 50w, /w3c/resources/images/green-16x16.png?f41 51w&quot; sizes=&quot;foo-bar&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f42 50w, /w3c/resources/images/green-16x16.png?f42 51w&quot; sizes=&quot;(min-width:0) 1px foo bar&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f43 50w, /w3c/resources/images/green-16x16.png?f43 51w&quot; sizes=&quot;(min-width:0) 0.1%&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f44 50w, /w3c/resources/images/green-16x16.png?f44 51w&quot; sizes=&quot;(min-width:0) 1&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f45 50w, /w3c/resources/images/green-16x16.png?f45 51w&quot; sizes=&quot;-1e0px&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f46 50w, /w3c/resources/images/green-16x16.png?f46 51w&quot; sizes=&quot;1e1.5px&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f47 50w, /w3c/resources/images/green-16x16.png?f47 51w&quot; style=&quot;--foo: 1px&quot; sizes=&quot;var(--foo)&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f48 50w, /w3c/resources/images/green-16x16.png?f48 51w&quot; sizes=&quot;calc(1px&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f49 50w, /w3c/resources/images/green-16x16.png?f49 51w&quot; sizes=&quot;(min-width:0) calc(1px&quot;&gt; ref sizes=&quot;100vw&quot; (display:none) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?a2 300w, /w3c/resources/images/green-16x16.png?a2 301w&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?b2 450w, /w3c/resources/images/green-16x16.png?b2 451w&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?c2 600w, /w3c/resources/images/green-16x16.png?c2 601w&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?d2 900w, /w3c/resources/images/green-16x16.png?d2 901w&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e2 50w, /w3c/resources/images/green-16x16.png?e2 51w&quot; sizes=&quot;0&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e3 50w, /w3c/resources/images/green-16x16.png?e3 51w&quot; sizes=&quot;-0&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e4 50w, /w3c/resources/images/green-16x16.png?e4 51w&quot; sizes=&quot;+0&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e5 50w, /w3c/resources/images/green-16x16.png?e5 51w&quot; sizes=&quot;+1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e6 50w, /w3c/resources/images/green-16x16.png?e6 51w&quot; sizes=&quot;.1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e7 50w, /w3c/resources/images/green-16x16.png?e7 51w&quot; sizes=&quot;0.1em&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e8 50w, /w3c/resources/images/green-16x16.png?e8 51w&quot; sizes=&quot;0.1ex&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e9 50w, /w3c/resources/images/green-16x16.png?e9 51w&quot; sizes=&quot;0.1ch&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e10 50w, /w3c/resources/images/green-16x16.png?e10 51w&quot; sizes=&quot;0.1rem&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e11 50w, /w3c/resources/images/green-16x16.png?e11 51w&quot; sizes=&quot;0.1vw&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e12 50w, /w3c/resources/images/green-16x16.png?e12 51w&quot; sizes=&quot;0.1vh&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e13 50w, /w3c/resources/images/green-16x16.png?e13 51w&quot; sizes=&quot;0.1vmin&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e14 50w, /w3c/resources/images/green-16x16.png?e14 51w&quot; sizes=&quot;0.1vmax&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e15 50w, /w3c/resources/images/green-16x16.png?e15 51w&quot; sizes=&quot;0.1cm&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e16 50w, /w3c/resources/images/green-16x16.png?e16 51w&quot; sizes=&quot;1mm&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e17 50w, /w3c/resources/images/green-16x16.png?e17 51w&quot; sizes=&quot;1q&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e18 50w, /w3c/resources/images/green-16x16.png?e18 51w&quot; sizes=&quot;0.01in&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e19 50w, /w3c/resources/images/green-16x16.png?e19 51w&quot; sizes=&quot;0.1pc&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e20 50w, /w3c/resources/images/green-16x16.png?e20 51w&quot; sizes=&quot;0.1pt&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e21 50w, /w3c/resources/images/green-16x16.png?e21 51w&quot; sizes=&quot;/* */1px/* */&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e22 50w, /w3c/resources/images/green-16x16.png?e22 51w&quot; sizes=&quot; /**/ /**/ 1px /**/ /**/ &quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e23 50w, /w3c/resources/images/green-16x16.png?e23 51w&quot; sizes=&quot;(),1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e24 50w, /w3c/resources/images/green-16x16.png?e24 51w&quot; sizes=&quot;x(),1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e25 50w, /w3c/resources/images/green-16x16.png?e25 51w&quot; sizes=&quot;{},1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e26 50w, /w3c/resources/images/green-16x16.png?e26 51w&quot; sizes=&quot;[],1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e27 50w, /w3c/resources/images/green-16x16.png?e27 51w&quot; sizes=&quot;1px,(&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e28 50w, /w3c/resources/images/green-16x16.png?e28 51w&quot; sizes=&quot;1px,x(&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e29 50w, /w3c/resources/images/green-16x16.png?e29 51w&quot; sizes=&quot;1px,{&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e30 50w, /w3c/resources/images/green-16x16.png?e30 51w&quot; sizes=&quot;1px,[&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e31 50w, /w3c/resources/images/green-16x16.png?e31 51w&quot; sizes=&quot;\(,1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e32 50w, /w3c/resources/images/green-16x16.png?e32 51w&quot; sizes=&quot;x\(,1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e33 50w, /w3c/resources/images/green-16x16.png?e33 51w&quot; sizes=&quot;\{,1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e34 50w, /w3c/resources/images/green-16x16.png?e34 51w&quot; sizes=&quot;\[,1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e35 50w, /w3c/resources/images/green-16x16.png?e35 51w&quot; sizes=&quot;1\p\x&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e36 50w, /w3c/resources/images/green-16x16.png?e36 51w&quot; sizes=&quot;calc(1px)&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e37 50w, /w3c/resources/images/green-16x16.png?e37 51w&quot; sizes=&quot;(min-width:0) calc(1px)&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e38 50w, /w3c/resources/images/green-16x16.png?e38 51w&quot; sizes=&quot;(min-width:calc(0)) 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e39 50w, /w3c/resources/images/green-16x16.png?e39 51w&quot; sizes=&quot;(min-width:0) 1px, 100vw&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e40 50w, /w3c/resources/images/green-16x16.png?e40 51w&quot; sizes=&quot;(min-width:0) 1px, (min-width:0) 100vw, 100vw&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e41 50w, /w3c/resources/images/green-16x16.png?e41 51w&quot; sizes=&quot;(min-width:0) 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e42 50w, /w3c/resources/images/green-16x16.png?e42 51w&quot; sizes=&quot;not (min-width:0) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e43 50w, /w3c/resources/images/green-16x16.png?e43 51w&quot; sizes=&quot;(min-width:unknown-mf-value) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e44 50w, /w3c/resources/images/green-16x16.png?e44 51w&quot; sizes=&quot;not (min-width:unknown-mf-value) 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e45 50w, /w3c/resources/images/green-16x16.png?e45 51w&quot; sizes=&quot;(min-width:-1px) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e46 50w, /w3c/resources/images/green-16x16.png?e46 51w&quot; sizes=&quot;not (min-width:-1px) 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e47 50w, /w3c/resources/images/green-16x16.png?e47 51w&quot; sizes=&quot;(unknown-mf-name) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e48 50w, /w3c/resources/images/green-16x16.png?e48 51w&quot; sizes=&quot;not (unknown-mf-name) 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e49 50w, /w3c/resources/images/green-16x16.png?e49 51w&quot; sizes=&quot;(&amp;quot;unknown-general-enclosed&amp;quot;) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e50 50w, /w3c/resources/images/green-16x16.png?e50 51w&quot; sizes=&quot;not (&amp;quot;unknown-general-enclosed&amp;quot;) 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e51 50w, /w3c/resources/images/green-16x16.png?e51 51w&quot; sizes=&quot;unknown-general-enclosed(foo) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e52 50w, /w3c/resources/images/green-16x16.png?e52 51w&quot; sizes=&quot;not unknown-general-enclosed(foo) 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e53 50w, /w3c/resources/images/green-16x16.png?e53 51w&quot; sizes=&quot;print 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e54 50w, /w3c/resources/images/green-16x16.png?e54 51w&quot; sizes=&quot;not print 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e55 50w, /w3c/resources/images/green-16x16.png?e55 51w&quot; sizes=&quot;unknown-media-type 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e56 50w, /w3c/resources/images/green-16x16.png?e56 51w&quot; sizes=&quot;not unknown-media-type 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e57 50w, /w3c/resources/images/green-16x16.png?e57 51w&quot; sizes=&quot;(min-width:0) or (min-width:0) 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e58 50w, /w3c/resources/images/green-16x16.png?e58 51w&quot; sizes=&quot;(min-width:0) or (unknown-mf-name) 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e59 50w, /w3c/resources/images/green-16x16.png?e59 51w&quot; sizes=&quot;(min-width:0) or (min-width:unknown-mf-value) 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e60 50w, /w3c/resources/images/green-16x16.png?e60 51w&quot; sizes=&quot;(min-width:0) or (min-width:-1px) 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e61 50w, /w3c/resources/images/green-16x16.png?e61 51w&quot; sizes=&quot;(min-width:0) or (&amp;quot;unknown-general-enclosed&amp;quot;) 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e62 50w, /w3c/resources/images/green-16x16.png?e62 51w&quot; sizes=&quot;(min-width:0) or unknown-general-enclosed(foo) 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e63 50w, /w3c/resources/images/green-16x16.png?e63 51w&quot; sizes=&quot;(min-width:0) or (!) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e64 50w, /w3c/resources/images/green-16x16.png?e64 51w&quot; sizes=&quot;(min-width:0) or unknown-media-type 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e65 50w, /w3c/resources/images/green-16x16.png?e65 51w&quot; sizes=&quot;(123) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e66 50w, /w3c/resources/images/green-16x16.png?e66 51w&quot; sizes=&quot;not (123) 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e67 50w, /w3c/resources/images/green-16x16.png?e67 51w&quot; sizes=&quot;(!) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e68 50w, /w3c/resources/images/green-16x16.png?e68 51w&quot; sizes=&quot;not (!) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e69 50w, /w3c/resources/images/green-16x16.png?e69 51w&quot; sizes=&quot;! 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e70 50w, /w3c/resources/images/green-16x16.png?e70 51w&quot; sizes=&quot;not ! 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e71 50w, /w3c/resources/images/green-16x16.png?e71 51w&quot; sizes=&quot;(]) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e72 50w, /w3c/resources/images/green-16x16.png?e72 51w&quot; sizes=&quot;not (]) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e73 50w, /w3c/resources/images/green-16x16.png?e73 51w&quot; sizes=&quot;] 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e74 50w, /w3c/resources/images/green-16x16.png?e74 51w&quot; sizes=&quot;not ] 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e75 50w, /w3c/resources/images/green-16x16.png?e75 51w&quot; sizes=&quot;(}) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e76 50w, /w3c/resources/images/green-16x16.png?e76 51w&quot; sizes=&quot;not (}) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e77 50w, /w3c/resources/images/green-16x16.png?e77 51w&quot; sizes=&quot;} 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e78 50w, /w3c/resources/images/green-16x16.png?e78 51w&quot; sizes=&quot;not } 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e79 50w, /w3c/resources/images/green-16x16.png?e79 51w&quot; sizes=&quot;) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e80 50w, /w3c/resources/images/green-16x16.png?e80 51w&quot; sizes=&quot;not ) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e81 50w, /w3c/resources/images/green-16x16.png?e81 51w&quot; sizes=&quot;(;) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e82 50w, /w3c/resources/images/green-16x16.png?e82 51w&quot; sizes=&quot;not (;) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e83 50w, /w3c/resources/images/green-16x16.png?e83 51w&quot; sizes=&quot;(.) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e84 50w, /w3c/resources/images/green-16x16.png?e84 51w&quot; sizes=&quot;not (.) 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e85 50w, /w3c/resources/images/green-16x16.png?e85 51w&quot; sizes=&quot;; 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e86 50w, /w3c/resources/images/green-16x16.png?e86 51w&quot; sizes=&quot;not ; 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e87 50w, /w3c/resources/images/green-16x16.png?e87 51w&quot; sizes=&quot;, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e88 50w, /w3c/resources/images/green-16x16.png?e88 51w&quot; sizes=&quot;1px,&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e89 50w, /w3c/resources/images/green-16x16.png?e89 51w&quot; sizes=&quot;(min-width:0) 1px,&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e90 50w, /w3c/resources/images/green-16x16.png?e90 51w&quot; sizes=&quot;-0e-0px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e91 50w, /w3c/resources/images/green-16x16.png?e91 51w&quot; sizes=&quot;+0.11e+01px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e92 50w, /w3c/resources/images/green-16x16.png?e92 51w&quot; sizes=&quot;0.2e1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e93 50w, /w3c/resources/images/green-16x16.png?e93 51w&quot; sizes=&quot;0.3E1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e94 50w, /w3c/resources/images/green-16x16.png?e94 51w&quot; sizes=&quot;.4E1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e95 50w, /w3c/resources/images/green-16x16.png?e95 51w&quot; sizes=&quot;all 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e96 50w, /w3c/resources/images/green-16x16.png?e96 51w&quot; sizes=&quot;all and (min-width:0) 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e97 50w, /w3c/resources/images/green-16x16.png?e97 51w&quot; sizes=&quot;min-width:0 100vw, 1px&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e98 50w, /w3c/resources/images/green-16x16.png?e98 51w&quot; sizes=&quot;1px, 100vw&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e99 50w, /w3c/resources/images/green-16x16.png?e99 51w&quot; sizes=&quot;1px, (min-width:0) 100vw&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e100 50w, /w3c/resources/images/green-16x16.png?e100 51w&quot; sizes=&quot;1px, foo bar&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?e101 50w, /w3c/resources/images/green-16x16.png?e101 51w&quot; sizes=&quot;(min-width:0) 1px, foo bar&quot;&gt; ref sizes=&quot;1px&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f2 50w, /w3c/resources/images/green-16x16.png?f2 51w&quot; sizes=&quot;&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f3 50w, /w3c/resources/images/green-16x16.png?f3 51w&quot; sizes=&quot;,&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f4 50w, /w3c/resources/images/green-16x16.png?f4 51w&quot; sizes=&quot;-1px&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f5 50w, /w3c/resources/images/green-16x16.png?f5 51w&quot; sizes=&quot;1&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f6 50w, /w3c/resources/images/green-16x16.png?f6 51w&quot; sizes=&quot;0.1%&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f7 50w, /w3c/resources/images/green-16x16.png?f7 51w&quot; sizes=&quot;0.1deg&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f8 50w, /w3c/resources/images/green-16x16.png?f8 51w&quot; sizes=&quot;0.1grad&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f9 50w, /w3c/resources/images/green-16x16.png?f9 51w&quot; sizes=&quot;0.1rad&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f10 50w, /w3c/resources/images/green-16x16.png?f10 51w&quot; sizes=&quot;0.1turn&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f11 50w, /w3c/resources/images/green-16x16.png?f11 51w&quot; sizes=&quot;0.1s&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f12 50w, /w3c/resources/images/green-16x16.png?f12 51w&quot; sizes=&quot;0.1ms&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f13 50w, /w3c/resources/images/green-16x16.png?f13 51w&quot; sizes=&quot;0.1Hz&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f14 50w, /w3c/resources/images/green-16x16.png?f14 51w&quot; sizes=&quot;0.1kHz&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f15 50w, /w3c/resources/images/green-16x16.png?f15 51w&quot; sizes=&quot;0.1dpi&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f16 50w, /w3c/resources/images/green-16x16.png?f16 51w&quot; sizes=&quot;0.1dpcm&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f17 50w, /w3c/resources/images/green-16x16.png?f17 51w&quot; sizes=&quot;0.1dppx&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f18 50w, /w3c/resources/images/green-16x16.png?f18 51w&quot; data-foo=&quot;1px&quot; sizes=&quot;attr(data-foo, length, 1px)&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f19 50w, /w3c/resources/images/green-16x16.png?f19 51w&quot; data-foo=&quot;1&quot; sizes=&quot;attr(data-foo, px, 1px)&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f20 50w, /w3c/resources/images/green-16x16.png?f20 51w&quot; sizes=&quot;toggle(1px)&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f21 50w, /w3c/resources/images/green-16x16.png?f21 51w&quot; sizes=&quot;inherit&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f22 50w, /w3c/resources/images/green-16x16.png?f22 51w&quot; sizes=&quot;auto&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f23 50w, /w3c/resources/images/green-16x16.png?f23 51w&quot; sizes=&quot;initial&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f24 50w, /w3c/resources/images/green-16x16.png?f24 51w&quot; sizes=&quot;unset&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f25 50w, /w3c/resources/images/green-16x16.png?f25 51w&quot; sizes=&quot;default&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f26 50w, /w3c/resources/images/green-16x16.png?f26 51w&quot; sizes=&quot;1/* */px&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f27 50w, /w3c/resources/images/green-16x16.png?f27 51w&quot; sizes=&quot;1p/* */x&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f28 50w, /w3c/resources/images/green-16x16.png?f28 51w&quot; sizes=&quot;-/**/0&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f29 50w, /w3c/resources/images/green-16x16.png?f29 51w&quot; sizes=&quot;((),1px&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f30 50w, /w3c/resources/images/green-16x16.png?f30 51w&quot; sizes=&quot;x(x(),1px&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f31 50w, /w3c/resources/images/green-16x16.png?f31 51w&quot; sizes=&quot;{{},1px&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f32 50w, /w3c/resources/images/green-16x16.png?f32 51w&quot; sizes=&quot;[[],1px&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f33 50w, /w3c/resources/images/green-16x16.png?f33 51w&quot; sizes=&quot;1px !important&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f34 50w, /w3c/resources/images/green-16x16.png?f34 51w&quot; sizes=&quot;\1px&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f35 50w, /w3c/resources/images/green-16x16.png?f35 51w&quot; sizes=&quot;all 1px&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f36 50w, /w3c/resources/images/green-16x16.png?f36 51w&quot; sizes=&quot;all and (min-width:0) 1px&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f37 50w, /w3c/resources/images/green-16x16.png?f37 51w&quot; sizes=&quot;min-width:0 1px&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f38 50w, /w3c/resources/images/green-16x16.png?f38 51w&quot; sizes=&quot;100vw, 1px&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f39 50w, /w3c/resources/images/green-16x16.png?f39 51w&quot; sizes=&quot;100vw, (min-width:0) 1px&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f40 50w, /w3c/resources/images/green-16x16.png?f40 51w&quot; sizes=&quot;foo bar&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f41 50w, /w3c/resources/images/green-16x16.png?f41 51w&quot; sizes=&quot;foo-bar&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f42 50w, /w3c/resources/images/green-16x16.png?f42 51w&quot; sizes=&quot;(min-width:0) 1px foo bar&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f43 50w, /w3c/resources/images/green-16x16.png?f43 51w&quot; sizes=&quot;(min-width:0) 0.1%&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f44 50w, /w3c/resources/images/green-16x16.png?f44 51w&quot; sizes=&quot;(min-width:0) 1&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f45 50w, /w3c/resources/images/green-16x16.png?f45 51w&quot; sizes=&quot;-1e0px&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f46 50w, /w3c/resources/images/green-16x16.png?f46 51w&quot; sizes=&quot;1e1.5px&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f47 50w, /w3c/resources/images/green-16x16.png?f47 51w&quot; style=&quot;--foo: 1px&quot; sizes=&quot;var(--foo)&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f48 50w, /w3c/resources/images/green-16x16.png?f48 51w&quot; sizes=&quot;calc(1px&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+FAIL &lt;img srcset=&quot;/w3c/resources/images/green-1x1.png?f49 50w, /w3c/resources/images/green-16x16.png?f49 51w&quot; sizes=&quot;(min-width:0) calc(1px&quot;&gt; ref sizes=&quot;100vw&quot; (width:1000px) assert_unreached: ref currentSrc was undefined Reached unreachable code
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementsizesparseasizesattributehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,42 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;img parse a sizes attribute&lt;/title&gt;
+&lt;meta name=&quot;timeout&quot; content=&quot;long&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;iframe data-desc=&quot;standards mode&quot; style=&quot;width:1000px; height:1000px&quot; src=&quot;resources/sizes-iframed.sub.html?doctype=doctype%20html&amp;style=&quot;&gt;&lt;/iframe&gt;
+&lt;iframe data-desc=&quot;quirks mode&quot; style=&quot;width:1000px; height:1000px&quot; src=&quot;resources/sizes-iframed.sub.html?doctype=----&amp;style=&quot;&gt;&lt;/iframe&gt;
+&lt;iframe data-desc=&quot;display:none&quot; style=&quot;width:1000px; height:1000px&quot; src=&quot;resources/sizes-iframed.sub.html?doctype=doctype%20html&amp;style=display:none&quot;&gt;&lt;/iframe&gt;
+&lt;iframe data-desc=&quot;width:1000px&quot; style=&quot;width:1000px; height:1000px&quot; src=&quot;resources/sizes-iframed.sub.html?doctype=doctype%20html&amp;style=width:1000px%3B%20height:16px&quot;&gt;&lt;/iframe&gt;
+&lt;script&gt;
+setup({explicit_done:true});
+
+function check(p, iframe) {
+  var current = p.firstElementChild;
+  var ref_sizes = current.getAttribute('sizes');
+  var expect = p.firstElementChild.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 &quot;?&quot; in currentSrc');
+      got = got.split('?')[0];
+      assert_equals(got, expect);
+    }, current.outerHTML + ' ref sizes=' + format_value(ref_sizes) + ' (' + iframe.getAttribute('data-desc') + ')');
+  }
+}
+
+onload = function() {
+  [].forEach.call(document.querySelectorAll('iframe'), function(iframe) {
+    [].forEach.call(iframe.contentDocument.querySelectorAll('p'), function(p) {
+      check(p, iframe);
+    });
+  });
+  done();
+}
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementsizesresourcessizesiframedsubhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/sizes/resources/sizes-iframed.sub.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/sizes/resources/sizes-iframed.sub.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/sizes/resources/sizes-iframed.sub.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,170 @@
</span><ins>+&lt;!{{GET[doctype]}}&gt;
+&lt;style&gt; img { {{GET[style]}} } &lt;/style&gt;
+&lt;!-- First &lt;img&gt; in a &lt;p&gt; is the reference. The following &lt;img&gt;s should be equivalent --&gt;
+&lt;!-- default is 100vw, not 300px --&gt;
+&lt;p&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?a1 300w, /w3c/resources/images/green-16x16.png?a1 301w' sizes='100vw'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?a2 300w, /w3c/resources/images/green-16x16.png?a2 301w'&gt;
+&lt;p&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?b1 450w, /w3c/resources/images/green-16x16.png?b1 451w' sizes='100vw'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?b2 450w, /w3c/resources/images/green-16x16.png?b2 451w'&gt;
+&lt;p&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?c1 600w, /w3c/resources/images/green-16x16.png?c1 601w' sizes='100vw'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?c2 600w, /w3c/resources/images/green-16x16.png?c2 601w'&gt;
+&lt;p&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?d1 900w, /w3c/resources/images/green-16x16.png?d1 901w' sizes='100vw'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?d2 900w, /w3c/resources/images/green-16x16.png?d2 901w'&gt;
+
+&lt;p&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e1 50w, /w3c/resources/images/green-16x16.png?e1 51w' sizes='1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e2 50w, /w3c/resources/images/green-16x16.png?e2 51w' sizes='0'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e3 50w, /w3c/resources/images/green-16x16.png?e3 51w' sizes='-0'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e4 50w, /w3c/resources/images/green-16x16.png?e4 51w' sizes='+0'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e5 50w, /w3c/resources/images/green-16x16.png?e5 51w' sizes='+1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e6 50w, /w3c/resources/images/green-16x16.png?e6 51w' sizes='.1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e7 50w, /w3c/resources/images/green-16x16.png?e7 51w' sizes='0.1em'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e8 50w, /w3c/resources/images/green-16x16.png?e8 51w' sizes='0.1ex'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e9 50w, /w3c/resources/images/green-16x16.png?e9 51w' sizes='0.1ch'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e10 50w, /w3c/resources/images/green-16x16.png?e10 51w' sizes='0.1rem'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e11 50w, /w3c/resources/images/green-16x16.png?e11 51w' sizes='0.1vw'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e12 50w, /w3c/resources/images/green-16x16.png?e12 51w' sizes='0.1vh'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e13 50w, /w3c/resources/images/green-16x16.png?e13 51w' sizes='0.1vmin'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e14 50w, /w3c/resources/images/green-16x16.png?e14 51w' sizes='0.1vmax'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e15 50w, /w3c/resources/images/green-16x16.png?e15 51w' sizes='0.1cm'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e16 50w, /w3c/resources/images/green-16x16.png?e16 51w' sizes='1mm'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e17 50w, /w3c/resources/images/green-16x16.png?e17 51w' sizes='1q'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e18 50w, /w3c/resources/images/green-16x16.png?e18 51w' sizes='0.01in'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e19 50w, /w3c/resources/images/green-16x16.png?e19 51w' sizes='0.1pc'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e20 50w, /w3c/resources/images/green-16x16.png?e20 51w' sizes='0.1pt'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e21 50w, /w3c/resources/images/green-16x16.png?e21 51w' sizes='/* */1px/* */'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e22 50w, /w3c/resources/images/green-16x16.png?e22 51w' sizes=' /**/ /**/ 1px /**/ /**/ '&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e23 50w, /w3c/resources/images/green-16x16.png?e23 51w' sizes='(),1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e24 50w, /w3c/resources/images/green-16x16.png?e24 51w' sizes='x(),1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e25 50w, /w3c/resources/images/green-16x16.png?e25 51w' sizes='{},1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e26 50w, /w3c/resources/images/green-16x16.png?e26 51w' sizes='[],1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e27 50w, /w3c/resources/images/green-16x16.png?e27 51w' sizes='1px,('&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e28 50w, /w3c/resources/images/green-16x16.png?e28 51w' sizes='1px,x('&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e29 50w, /w3c/resources/images/green-16x16.png?e29 51w' sizes='1px,{'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e30 50w, /w3c/resources/images/green-16x16.png?e30 51w' sizes='1px,['&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e31 50w, /w3c/resources/images/green-16x16.png?e31 51w' sizes='\(,1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e32 50w, /w3c/resources/images/green-16x16.png?e32 51w' sizes='x\(,1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e33 50w, /w3c/resources/images/green-16x16.png?e33 51w' sizes='\{,1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e34 50w, /w3c/resources/images/green-16x16.png?e34 51w' sizes='\[,1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e35 50w, /w3c/resources/images/green-16x16.png?e35 51w' sizes='1\p\x'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e36 50w, /w3c/resources/images/green-16x16.png?e36 51w' sizes='calc(1px)'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e37 50w, /w3c/resources/images/green-16x16.png?e37 51w' sizes='(min-width:0) calc(1px)'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e38 50w, /w3c/resources/images/green-16x16.png?e38 51w' sizes='(min-width:calc(0)) 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e39 50w, /w3c/resources/images/green-16x16.png?e39 51w' sizes='(min-width:0) 1px, 100vw'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e40 50w, /w3c/resources/images/green-16x16.png?e40 51w' sizes='(min-width:0) 1px, (min-width:0) 100vw, 100vw'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e41 50w, /w3c/resources/images/green-16x16.png?e41 51w' sizes='(min-width:0) 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e42 50w, /w3c/resources/images/green-16x16.png?e42 51w' sizes='not (min-width:0) 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e43 50w, /w3c/resources/images/green-16x16.png?e43 51w' sizes='(min-width:unknown-mf-value) 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e44 50w, /w3c/resources/images/green-16x16.png?e44 51w' sizes='not (min-width:unknown-mf-value) 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e45 50w, /w3c/resources/images/green-16x16.png?e45 51w' sizes='(min-width:-1px) 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e46 50w, /w3c/resources/images/green-16x16.png?e46 51w' sizes='not (min-width:-1px) 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e47 50w, /w3c/resources/images/green-16x16.png?e47 51w' sizes='(unknown-mf-name) 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e48 50w, /w3c/resources/images/green-16x16.png?e48 51w' sizes='not (unknown-mf-name) 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e49 50w, /w3c/resources/images/green-16x16.png?e49 51w' sizes='(&quot;unknown-general-enclosed&quot;) 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e50 50w, /w3c/resources/images/green-16x16.png?e50 51w' sizes='not (&quot;unknown-general-enclosed&quot;) 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e51 50w, /w3c/resources/images/green-16x16.png?e51 51w' sizes='unknown-general-enclosed(foo) 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e52 50w, /w3c/resources/images/green-16x16.png?e52 51w' sizes='not unknown-general-enclosed(foo) 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e53 50w, /w3c/resources/images/green-16x16.png?e53 51w' sizes='print 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e54 50w, /w3c/resources/images/green-16x16.png?e54 51w' sizes='not print 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e55 50w, /w3c/resources/images/green-16x16.png?e55 51w' sizes='unknown-media-type 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e56 50w, /w3c/resources/images/green-16x16.png?e56 51w' sizes='not unknown-media-type 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e57 50w, /w3c/resources/images/green-16x16.png?e57 51w' sizes='(min-width:0) or (min-width:0) 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e58 50w, /w3c/resources/images/green-16x16.png?e58 51w' sizes='(min-width:0) or (unknown-mf-name) 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e59 50w, /w3c/resources/images/green-16x16.png?e59 51w' sizes='(min-width:0) or (min-width:unknown-mf-value) 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e60 50w, /w3c/resources/images/green-16x16.png?e60 51w' sizes='(min-width:0) or (min-width:-1px) 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e61 50w, /w3c/resources/images/green-16x16.png?e61 51w' sizes='(min-width:0) or (&quot;unknown-general-enclosed&quot;) 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e62 50w, /w3c/resources/images/green-16x16.png?e62 51w' sizes='(min-width:0) or unknown-general-enclosed(foo) 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e63 50w, /w3c/resources/images/green-16x16.png?e63 51w' sizes='(min-width:0) or (!) 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e64 50w, /w3c/resources/images/green-16x16.png?e64 51w' sizes='(min-width:0) or unknown-media-type 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e65 50w, /w3c/resources/images/green-16x16.png?e65 51w' sizes='(123) 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e66 50w, /w3c/resources/images/green-16x16.png?e66 51w' sizes='not (123) 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e67 50w, /w3c/resources/images/green-16x16.png?e67 51w' sizes='(!) 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e68 50w, /w3c/resources/images/green-16x16.png?e68 51w' sizes='not (!) 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e69 50w, /w3c/resources/images/green-16x16.png?e69 51w' sizes='! 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e70 50w, /w3c/resources/images/green-16x16.png?e70 51w' sizes='not ! 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e71 50w, /w3c/resources/images/green-16x16.png?e71 51w' sizes='(]) 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e72 50w, /w3c/resources/images/green-16x16.png?e72 51w' sizes='not (]) 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e73 50w, /w3c/resources/images/green-16x16.png?e73 51w' sizes='] 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e74 50w, /w3c/resources/images/green-16x16.png?e74 51w' sizes='not ] 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e75 50w, /w3c/resources/images/green-16x16.png?e75 51w' sizes='(}) 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e76 50w, /w3c/resources/images/green-16x16.png?e76 51w' sizes='not (}) 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e77 50w, /w3c/resources/images/green-16x16.png?e77 51w' sizes='} 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e78 50w, /w3c/resources/images/green-16x16.png?e78 51w' sizes='not } 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e79 50w, /w3c/resources/images/green-16x16.png?e79 51w' sizes=') 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e80 50w, /w3c/resources/images/green-16x16.png?e80 51w' sizes='not ) 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e81 50w, /w3c/resources/images/green-16x16.png?e81 51w' sizes='(;) 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e82 50w, /w3c/resources/images/green-16x16.png?e82 51w' sizes='not (;) 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e83 50w, /w3c/resources/images/green-16x16.png?e83 51w' sizes='(.) 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e84 50w, /w3c/resources/images/green-16x16.png?e84 51w' sizes='not (.) 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e85 50w, /w3c/resources/images/green-16x16.png?e85 51w' sizes='; 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e86 50w, /w3c/resources/images/green-16x16.png?e86 51w' sizes='not ; 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e87 50w, /w3c/resources/images/green-16x16.png?e87 51w' sizes=', 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e88 50w, /w3c/resources/images/green-16x16.png?e88 51w' sizes='1px,'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e89 50w, /w3c/resources/images/green-16x16.png?e89 51w' sizes='(min-width:0) 1px,'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e90 50w, /w3c/resources/images/green-16x16.png?e90 51w' sizes='-0e-0px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e91 50w, /w3c/resources/images/green-16x16.png?e91 51w' sizes='+0.11e+01px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e92 50w, /w3c/resources/images/green-16x16.png?e92 51w' sizes='0.2e1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e93 50w, /w3c/resources/images/green-16x16.png?e93 51w' sizes='0.3E1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e94 50w, /w3c/resources/images/green-16x16.png?e94 51w' sizes='.4E1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e95 50w, /w3c/resources/images/green-16x16.png?e95 51w' sizes='all 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e96 50w, /w3c/resources/images/green-16x16.png?e96 51w' sizes='all and (min-width:0) 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e97 50w, /w3c/resources/images/green-16x16.png?e97 51w' sizes='min-width:0 100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e98 50w, /w3c/resources/images/green-16x16.png?e98 51w' sizes='1px, 100vw'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e99 50w, /w3c/resources/images/green-16x16.png?e99 51w' sizes='1px, (min-width:0) 100vw'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e100 50w, /w3c/resources/images/green-16x16.png?e100 51w' sizes='1px, foo bar'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?e101 50w, /w3c/resources/images/green-16x16.png?e101 51w' sizes='(min-width:0) 1px, foo bar'&gt;
+
+&lt;p&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f1 50w, /w3c/resources/images/green-16x16.png?f1 51w' sizes='100vw'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f2 50w, /w3c/resources/images/green-16x16.png?f2 51w' sizes=''&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f3 50w, /w3c/resources/images/green-16x16.png?f3 51w' sizes=','&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f4 50w, /w3c/resources/images/green-16x16.png?f4 51w' sizes='-1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f5 50w, /w3c/resources/images/green-16x16.png?f5 51w' sizes='1'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f6 50w, /w3c/resources/images/green-16x16.png?f6 51w' sizes='0.1%'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f7 50w, /w3c/resources/images/green-16x16.png?f7 51w' sizes='0.1deg'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f8 50w, /w3c/resources/images/green-16x16.png?f8 51w' sizes='0.1grad'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f9 50w, /w3c/resources/images/green-16x16.png?f9 51w' sizes='0.1rad'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f10 50w, /w3c/resources/images/green-16x16.png?f10 51w' sizes='0.1turn'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f11 50w, /w3c/resources/images/green-16x16.png?f11 51w' sizes='0.1s'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f12 50w, /w3c/resources/images/green-16x16.png?f12 51w' sizes='0.1ms'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f13 50w, /w3c/resources/images/green-16x16.png?f13 51w' sizes='0.1Hz'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f14 50w, /w3c/resources/images/green-16x16.png?f14 51w' sizes='0.1kHz'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f15 50w, /w3c/resources/images/green-16x16.png?f15 51w' sizes='0.1dpi'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f16 50w, /w3c/resources/images/green-16x16.png?f16 51w' sizes='0.1dpcm'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f17 50w, /w3c/resources/images/green-16x16.png?f17 51w' sizes='0.1dppx'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f18 50w, /w3c/resources/images/green-16x16.png?f18 51w' data-foo='1px' sizes='attr(data-foo, length, 1px)'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f19 50w, /w3c/resources/images/green-16x16.png?f19 51w' data-foo='1' sizes='attr(data-foo, px, 1px)'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f20 50w, /w3c/resources/images/green-16x16.png?f20 51w' sizes='toggle(1px)'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f21 50w, /w3c/resources/images/green-16x16.png?f21 51w' sizes='inherit'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f22 50w, /w3c/resources/images/green-16x16.png?f22 51w' sizes='auto'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f23 50w, /w3c/resources/images/green-16x16.png?f23 51w' sizes='initial'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f24 50w, /w3c/resources/images/green-16x16.png?f24 51w' sizes='unset'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f25 50w, /w3c/resources/images/green-16x16.png?f25 51w' sizes='default'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f26 50w, /w3c/resources/images/green-16x16.png?f26 51w' sizes='1/* */px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f27 50w, /w3c/resources/images/green-16x16.png?f27 51w' sizes='1p/* */x'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f28 50w, /w3c/resources/images/green-16x16.png?f28 51w' sizes='-/**/0'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f29 50w, /w3c/resources/images/green-16x16.png?f29 51w' sizes='((),1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f30 50w, /w3c/resources/images/green-16x16.png?f30 51w' sizes='x(x(),1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f31 50w, /w3c/resources/images/green-16x16.png?f31 51w' sizes='{{},1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f32 50w, /w3c/resources/images/green-16x16.png?f32 51w' sizes='[[],1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f33 50w, /w3c/resources/images/green-16x16.png?f33 51w' sizes='1px !important'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f34 50w, /w3c/resources/images/green-16x16.png?f34 51w' sizes='\1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f35 50w, /w3c/resources/images/green-16x16.png?f35 51w' sizes='all 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f36 50w, /w3c/resources/images/green-16x16.png?f36 51w' sizes='all and (min-width:0) 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f37 50w, /w3c/resources/images/green-16x16.png?f37 51w' sizes='min-width:0 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f38 50w, /w3c/resources/images/green-16x16.png?f38 51w' sizes='100vw, 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f39 50w, /w3c/resources/images/green-16x16.png?f39 51w' sizes='100vw, (min-width:0) 1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f40 50w, /w3c/resources/images/green-16x16.png?f40 51w' sizes='foo bar'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f41 50w, /w3c/resources/images/green-16x16.png?f41 51w' sizes='foo-bar'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f42 50w, /w3c/resources/images/green-16x16.png?f42 51w' sizes='(min-width:0) 1px foo bar'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f43 50w, /w3c/resources/images/green-16x16.png?f43 51w' sizes='(min-width:0) 0.1%'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f44 50w, /w3c/resources/images/green-16x16.png?f44 51w' sizes='(min-width:0) 1'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f45 50w, /w3c/resources/images/green-16x16.png?f45 51w' sizes='-1e0px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f46 50w, /w3c/resources/images/green-16x16.png?f46 51w' sizes='1e1.5px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f47 50w, /w3c/resources/images/green-16x16.png?f47 51w' style='--foo: 1px' sizes='var(--foo)'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f48 50w, /w3c/resources/images/green-16x16.png?f48 51w' sizes='calc(1px'&gt;
+&lt;img srcset='/w3c/resources/images/green-1x1.png?f49 50w, /w3c/resources/images/green-16x16.png?f49 51w' sizes='(min-width:0) calc(1px'&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementsizesw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/sizes/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/sizes/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/sizes/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementsrcsetcommonjs"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/common.js (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/common.js                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/common.js        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,25 @@
</span><ins>+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();
+};
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementsrcsetparseasrcsetattributeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/parse-a-srcset-attribute-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/parse-a-srcset-attribute-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/parse-a-srcset-attribute-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,239 @@
</span><ins>+                                                                                                                                                                                                                                             
+
+FAIL &quot;&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;,&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;,,,&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;  data:,a  1x  &quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;\t\tdata:,a\t\t1x\t\t&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;\n\ndata:,a\n\n1x\n\n&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;\v\vdata:,a\v\v1x\v\v&quot; assert_equals: expected (string) &quot;data:,a%0B%0B1x&quot; but got (undefined) undefined
+FAIL &quot;\f\fdata:,a\f\f1x\f\f&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;\r\rdata:,a\r\r1x\r\r&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;\x0e\x0edata:,a\x0e\x0e1x\x0e\x0e&quot; assert_equals: expected (string) &quot;data:,a%0E%0E1x&quot; but got (undefined) undefined
+FAIL &quot;\x0f\x0fdata:,a\x0f\x0f1x\x0f\x0f&quot; assert_equals: expected (string) &quot;data:,a%0F%0F1x&quot; but got (undefined) undefined
+FAIL &quot;\x10\x10data:,a\x10\x101x\x10\x10&quot; assert_equals: expected (string) &quot;data:,a%10%101x&quot; but got (undefined) undefined
+FAIL &quot;data:,a&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a &quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a ,&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a,&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a, &quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a,,,&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a,, , &quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot; data:,a&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;,,,data:,a&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot; , ,,data:,a&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot; data:,a&quot; assert_equals: expected (string) &quot;http://127.0.0.1:8000/w3c/html/semantics/embedded-content/the-img-element/srcset/%C2%A0data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a &quot; assert_equals: expected (string) &quot;data:,a%C2%A0&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1x&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1x &quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1x,&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a ( , data:,b 1x, ), data:,c&quot; assert_equals: expected (string) &quot;data:,c&quot; but got (undefined) undefined
+FAIL &quot;data:,a ((( , data:,b 1x, ), data:,c&quot; assert_equals: expected (string) &quot;data:,c&quot; but got (undefined) undefined
+FAIL &quot;data:,a [ , data:,b 1x, ], data:,c&quot; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &quot;data:,a { , data:,b 1x, }, data:,c&quot; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &quot;data:,a \&quot; , data:,b 1x, \&quot;, data:,c&quot; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &quot;data:,a \\,data:;\,b, data:,c&quot; assert_equals: expected (string) &quot;data:;\\,b&quot; but got (undefined) undefined
+FAIL &quot;data:,a, data:,b (&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a, data:,b (  &quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a, data:,b (,&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a, data:,b (x&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a, data:,b ()&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a (, data:,b&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a /*, data:,b, data:,c */&quot; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &quot;data:,a //, data:,b&quot; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &quot;data:,a foo&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a foo foo&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a foo 1x&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a foo 1x foo&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a foo 1w&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a foo 1w foo&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1x 1x&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1w&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1x&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1x 1w&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1h&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1h 1w&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1h 1h&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1h 1x&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1h 1w 1x&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1x 1w 1h&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1h&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1h foo&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a foo 1h&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 0w&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a -1w&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w -1w&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1.0w&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1.0w&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1e0w&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1e0w&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1www&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1www&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a +1w&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w +1w&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1W&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1W&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a Infinityw&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w Infinityw&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a NaNw&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w NaNw&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 0x1w&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 0X1w&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1\x01w&quot; (trailing U+0001) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 w&quot; (trailing U+00A0) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 w&quot; (trailing U+1680) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 w&quot; (trailing U+2000) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 w&quot; (trailing U+2001) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 w&quot; (trailing U+2002) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 w&quot; (trailing U+2003) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 w&quot; (trailing U+2004) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 w&quot; (trailing U+2005) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 w&quot; (trailing U+2006) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 w&quot; (trailing U+2007) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 w&quot; (trailing U+2008) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 w&quot; (trailing U+2009) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 w&quot; (trailing U+200A) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1‌w&quot; (trailing U+200C) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1‍w&quot; (trailing U+200D) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 w&quot; (trailing U+202F) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 w&quot; (trailing U+205F) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 w&quot; (trailing U+3000) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w&quot; (trailing U+FEFF) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a \x011w&quot; (leading U+0001) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1w&quot; (leading U+00A0) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1w&quot; (leading U+1680) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1w&quot; (leading U+2000) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1w&quot; (leading U+2001) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1w&quot; (leading U+2002) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1w&quot; (leading U+2003) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1w&quot; (leading U+2004) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1w&quot; (leading U+2005) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1w&quot; (leading U+2006) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1w&quot; (leading U+2007) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1w&quot; (leading U+2008) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1w&quot; (leading U+2009) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1w&quot; (leading U+200A) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a ‌1w&quot; (leading U+200C) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a ‍1w&quot; (leading U+200D) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1w&quot; (leading U+202F) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1w&quot; (leading U+205F) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1w&quot; (leading U+3000) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w&quot; (leading U+FEFF) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 0x&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a -0x&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1x -0x&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a -1x&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1x -1x&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1e0x&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1E0x&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1e-1x&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1.5e1x&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a -x&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a .x&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a -.x&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1.x&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a .5x&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a .5e1x&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1x 1.5e1x&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1x 1e1.5x&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1.0x&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1x 1.0x&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a +1x&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1X&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a Infinityx&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a NaNx&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 0x1x&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 0X1x&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1\x01x&quot; (trailing U+0001) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 x&quot; (trailing U+00A0) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 x&quot; (trailing U+1680) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 x&quot; (trailing U+2000) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 x&quot; (trailing U+2001) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 x&quot; (trailing U+2002) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 x&quot; (trailing U+2003) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 x&quot; (trailing U+2004) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 x&quot; (trailing U+2005) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 x&quot; (trailing U+2006) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 x&quot; (trailing U+2007) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 x&quot; (trailing U+2008) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 x&quot; (trailing U+2009) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 x&quot; (trailing U+200A) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1‌x&quot; (trailing U+200C) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1‍x&quot; (trailing U+200D) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 x&quot; (trailing U+202F) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 x&quot; (trailing U+205F) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1 x&quot; (trailing U+3000) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1x&quot; (trailing U+FEFF) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a \x011x&quot; (leading U+0001) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1x&quot; (leading U+00A0) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1x&quot; (leading U+1680) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1x&quot; (leading U+2000) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1x&quot; (leading U+2001) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1x&quot; (leading U+2002) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1x&quot; (leading U+2003) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1x&quot; (leading U+2004) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1x&quot; (leading U+2005) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1x&quot; (leading U+2006) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1x&quot; (leading U+2007) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1x&quot; (leading U+2008) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1x&quot; (leading U+2009) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1x&quot; (leading U+200A) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a ‌1x&quot; (leading U+200C) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a ‍1x&quot; (leading U+200D) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1x&quot; (leading U+202F) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1x&quot; (leading U+205F) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a  1x&quot; (leading U+3000) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1x&quot; (leading U+FEFF) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 0h&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w -1h&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1.0h&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1e0h&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1hhh&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w +1h&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1H&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w Infinityh&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w NaNh&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 0x1h&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 0X1h&quot; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1\x01h&quot; (trailing U+0001) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1 h&quot; (trailing U+00A0) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1 h&quot; (trailing U+1680) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1 h&quot; (trailing U+2000) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1 h&quot; (trailing U+2001) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1 h&quot; (trailing U+2002) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1 h&quot; (trailing U+2003) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1 h&quot; (trailing U+2004) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1 h&quot; (trailing U+2005) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1 h&quot; (trailing U+2006) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1 h&quot; (trailing U+2007) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1 h&quot; (trailing U+2008) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1 h&quot; (trailing U+2009) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1 h&quot; (trailing U+200A) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1‌h&quot; (trailing U+200C) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1‍h&quot; (trailing U+200D) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1 h&quot; (trailing U+202F) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1 h&quot; (trailing U+205F) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1 h&quot; (trailing U+3000) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1h&quot; (trailing U+FEFF) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w \x011h&quot; (leading U+0001) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w  1h&quot; (leading U+00A0) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w  1h&quot; (leading U+1680) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w  1h&quot; (leading U+2000) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w  1h&quot; (leading U+2001) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w  1h&quot; (leading U+2002) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w  1h&quot; (leading U+2003) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w  1h&quot; (leading U+2004) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w  1h&quot; (leading U+2005) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w  1h&quot; (leading U+2006) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w  1h&quot; (leading U+2007) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w  1h&quot; (leading U+2008) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w  1h&quot; (leading U+2009) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w  1h&quot; (leading U+200A) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w ‌1h&quot; (leading U+200C) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w ‍1h&quot; (leading U+200D) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w  1h&quot; (leading U+202F) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w  1h&quot; (leading U+205F) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w  1h&quot; (leading U+3000) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1h&quot; (leading U+FEFF) assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementsrcsetparseasrcsetattributehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/parse-a-srcset-attribute.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/parse-a-srcset-attribute.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/parse-a-srcset-attribute.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,245 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;img parse a srcset attribute&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=common.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;!--  splitting loop  --&gt;
+&lt;img srcset='' data-expect=''&gt;
+&lt;img srcset=',' data-expect=''&gt;
+&lt;img srcset=',,,' data-expect=''&gt;
+&lt;img srcset='  data:,a  1x  ' data-expect='data:,a'&gt;
+&lt;img srcset='&amp;#x9;&amp;#x9;data:,a&amp;#x9;&amp;#x9;1x&amp;#x9;&amp;#x9;' data-expect='data:,a'&gt;
+&lt;img srcset='&amp;#xA;&amp;#xA;data:,a&amp;#xA;&amp;#xA;1x&amp;#xA;&amp;#xA;' data-expect='data:,a'&gt;
+&lt;img srcset='&amp;#xB;&amp;#xB;data:,a&amp;#xB;&amp;#xB;1x&amp;#xB;&amp;#xB;' data-expect='&amp;#xB;&amp;#xB;data:,a&amp;#xB;&amp;#xB;1x&amp;#xB;&amp;#xB;' data-resolve&gt;
+&lt;img srcset='&amp;#xC;&amp;#xC;data:,a&amp;#xC;&amp;#xC;1x&amp;#xC;&amp;#xC;' data-expect='data:,a'&gt;
+&lt;img srcset='&amp;#xD;&amp;#xD;data:,a&amp;#xD;&amp;#xD;1x&amp;#xD;&amp;#xD;' data-expect='data:,a'&gt;
+&lt;img srcset='&amp;#xE;&amp;#xE;data:,a&amp;#xE;&amp;#xE;1x&amp;#xE;&amp;#xE;' data-expect='&amp;#xE;&amp;#xE;data:,a&amp;#xE;&amp;#xE;1x&amp;#xE;&amp;#xE;' data-resolve&gt;
+&lt;img srcset='&amp;#xF;&amp;#xF;data:,a&amp;#xF;&amp;#xF;1x&amp;#xF;&amp;#xF;' data-expect='&amp;#xF;&amp;#xF;data:,a&amp;#xF;&amp;#xF;1x&amp;#xF;&amp;#xF;' data-resolve&gt;
+&lt;img srcset='&amp;#x10;&amp;#x10;data:,a&amp;#x10;&amp;#x10;1x&amp;#x10;&amp;#x10;' data-expect='&amp;#x10;&amp;#x10;data:,a&amp;#x10;&amp;#x10;1x&amp;#x10;&amp;#x10;' data-resolve&gt;
+&lt;img srcset='data:,a' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a ' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a ,' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a,' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a, ' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a,,,' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a,, , ' data-expect='data:,a'&gt;
+&lt;img srcset=' data:,a' data-expect='data:,a'&gt;
+&lt;img srcset=',,,data:,a' data-expect='data:,a'&gt;
+&lt;img srcset=' , ,,data:,a' data-expect='data:,a'&gt;
+&lt;img srcset='&amp;nbsp;data:,a' data-expect='&amp;nbsp;data:,a' data-resolve&gt;
+&lt;img srcset='data:,a&amp;nbsp;' data-expect='data:,a&amp;nbsp;' data-resolve&gt;
+&lt;!--  descriptor tokenizer  --&gt;
+&lt;img srcset='data:,a 1x' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a 1x ' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a 1x,' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a ( , data:,b 1x, ), data:,c' data-expect='data:,c'&gt;
+&lt;img srcset='data:,a ((( , data:,b 1x, ), data:,c' data-expect='data:,c'&gt;
+&lt;img srcset='data:,a [ , data:,b 1x, ], data:,c' data-expect='data:,b'&gt;
+&lt;img srcset='data:,a { , data:,b 1x, }, data:,c' data-expect='data:,b'&gt;
+&lt;img srcset='data:,a &quot; , data:,b 1x, &quot;, data:,c' data-expect='data:,b'&gt;
+&lt;img srcset='data:,a \,data:;\,b, data:,c' data-expect='data:;\,b'&gt;
+&lt;img srcset='data:,a, data:,b (' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a, data:,b (  ' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a, data:,b (,' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a, data:,b (x' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a, data:,b ()' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a (, data:,b' data-expect=''&gt;
+&lt;img srcset='data:,a /*, data:,b, data:,c */' data-expect='data:,b'&gt;
+&lt;img srcset='data:,a //, data:,b' data-expect='data:,b'&gt;
+&lt;!--  descriptor parser  --&gt;
+&lt;img srcset='data:,a foo' data-expect=''&gt;
+&lt;img srcset='data:,a foo foo' data-expect=''&gt;
+&lt;img srcset='data:,a foo 1x' data-expect=''&gt;
+&lt;img srcset='data:,a foo 1x foo' data-expect=''&gt;
+&lt;img srcset='data:,a foo 1w' data-expect=''&gt;
+&lt;img srcset='data:,a foo 1w foo' data-expect=''&gt;
+&lt;img srcset='data:,a 1x 1x' data-expect=''&gt;
+&lt;img srcset='data:,a 1w 1w' data-expect=''&gt;
+&lt;img srcset='data:,a 1w 1x' data-expect=''&gt;
+&lt;img srcset='data:,a 1x 1w' data-expect=''&gt;
+&lt;img srcset='data:,a 1w 1h' data-expect='data:,a'&gt;&lt;!--  should fail for x-only impl  --&gt;
+&lt;img srcset='data:,a 1h 1w' data-expect='data:,a'&gt;&lt;!--  should fail for x-only impl  --&gt;
+&lt;img srcset='data:,a 1h 1h' data-expect=''&gt;
+&lt;img srcset='data:,a 1h 1x' data-expect=''&gt;
+&lt;img srcset='data:,a 1h 1w 1x' data-expect=''&gt;
+&lt;img srcset='data:,a 1x 1w 1h' data-expect=''&gt;
+&lt;img srcset='data:,a 1w' data-expect='data:,a'&gt;&lt;!--  should fail for x-only impl  --&gt;
+&lt;img srcset='data:,a 1h' data-expect=''&gt;
+&lt;img srcset='data:,a 1h foo' data-expect=''&gt;
+&lt;img srcset='data:,a foo 1h' data-expect=''&gt;
+&lt;img srcset='data:,a 0w' data-expect=''&gt;
+&lt;img srcset='data:,a -1w' data-expect=''&gt;
+&lt;img srcset='data:,a 1w -1w' data-expect=''&gt;
+&lt;img srcset='data:,a 1.0w' data-expect=''&gt;
+&lt;img srcset='data:,a 1w 1.0w' data-expect=''&gt;
+&lt;img srcset='data:,a 1e0w' data-expect=''&gt;
+&lt;img srcset='data:,a 1w 1e0w' data-expect=''&gt;
+&lt;img srcset='data:,a 1www' data-expect=''&gt;
+&lt;img srcset='data:,a 1w 1www' data-expect=''&gt;
+&lt;img srcset='data:,a +1w' data-expect=''&gt;
+&lt;img srcset='data:,a 1w +1w' data-expect=''&gt;
+&lt;img srcset='data:,a 1W' data-expect=''&gt;
+&lt;img srcset='data:,a 1w 1W' data-expect=''&gt;
+&lt;img srcset='data:,a Infinityw' data-expect=''&gt;
+&lt;img srcset='data:,a 1w Infinityw' data-expect=''&gt;
+&lt;img srcset='data:,a NaNw' data-expect=''&gt;
+&lt;img srcset='data:,a 1w NaNw' data-expect=''&gt;
+&lt;img srcset='data:,a 0x1w' data-expect=''&gt;
+&lt;img srcset='data:,a 0X1w' data-expect=''&gt;
+&lt;img srcset='data:,a 1&amp;#x1;w' data-expect='' data-desc='trailing U+0001'&gt;
+&lt;img srcset='data:,a 1&amp;nbsp;w' data-expect='' data-desc='trailing U+00A0'&gt;
+&lt;img srcset='data:,a 1&amp;#x1680;w' data-expect='' data-desc='trailing U+1680'&gt;
+&lt;img srcset='data:,a 1&amp;#x2000;w' data-expect='' data-desc='trailing U+2000'&gt;
+&lt;img srcset='data:,a 1&amp;#x2001;w' data-expect='' data-desc='trailing U+2001'&gt;
+&lt;img srcset='data:,a 1&amp;#x2002;w' data-expect='' data-desc='trailing U+2002'&gt;
+&lt;img srcset='data:,a 1&amp;#x2003;w' data-expect='' data-desc='trailing U+2003'&gt;
+&lt;img srcset='data:,a 1&amp;#x2004;w' data-expect='' data-desc='trailing U+2004'&gt;
+&lt;img srcset='data:,a 1&amp;#x2005;w' data-expect='' data-desc='trailing U+2005'&gt;
+&lt;img srcset='data:,a 1&amp;#x2006;w' data-expect='' data-desc='trailing U+2006'&gt;
+&lt;img srcset='data:,a 1&amp;#x2007;w' data-expect='' data-desc='trailing U+2007'&gt;
+&lt;img srcset='data:,a 1&amp;#x2008;w' data-expect='' data-desc='trailing U+2008'&gt;
+&lt;img srcset='data:,a 1&amp;#x2009;w' data-expect='' data-desc='trailing U+2009'&gt;
+&lt;img srcset='data:,a 1&amp;#x200A;w' data-expect='' data-desc='trailing U+200A'&gt;
+&lt;img srcset='data:,a 1&amp;#x200C;w' data-expect='' data-desc='trailing U+200C'&gt;
+&lt;img srcset='data:,a 1&amp;#x200D;w' data-expect='' data-desc='trailing U+200D'&gt;
+&lt;img srcset='data:,a 1&amp;#x202F;w' data-expect='' data-desc='trailing U+202F'&gt;
+&lt;img srcset='data:,a 1&amp;#x205F;w' data-expect='' data-desc='trailing U+205F'&gt;
+&lt;img srcset='data:,a 1&amp;#x3000;w' data-expect='' data-desc='trailing U+3000'&gt;
+&lt;img srcset='data:,a 1&amp;#xFEFF;w' data-expect='' data-desc='trailing U+FEFF'&gt;
+&lt;img srcset='data:,a &amp;#x1;1w' data-expect='' data-desc='leading U+0001'&gt;
+&lt;img srcset='data:,a &amp;nbsp;1w' data-expect='' data-desc='leading U+00A0'&gt;
+&lt;img srcset='data:,a &amp;#x1680;1w' data-expect='' data-desc='leading U+1680'&gt;
+&lt;img srcset='data:,a &amp;#x2000;1w' data-expect='' data-desc='leading U+2000'&gt;
+&lt;img srcset='data:,a &amp;#x2001;1w' data-expect='' data-desc='leading U+2001'&gt;
+&lt;img srcset='data:,a &amp;#x2002;1w' data-expect='' data-desc='leading U+2002'&gt;
+&lt;img srcset='data:,a &amp;#x2003;1w' data-expect='' data-desc='leading U+2003'&gt;
+&lt;img srcset='data:,a &amp;#x2004;1w' data-expect='' data-desc='leading U+2004'&gt;
+&lt;img srcset='data:,a &amp;#x2005;1w' data-expect='' data-desc='leading U+2005'&gt;
+&lt;img srcset='data:,a &amp;#x2006;1w' data-expect='' data-desc='leading U+2006'&gt;
+&lt;img srcset='data:,a &amp;#x2007;1w' data-expect='' data-desc='leading U+2007'&gt;
+&lt;img srcset='data:,a &amp;#x2008;1w' data-expect='' data-desc='leading U+2008'&gt;
+&lt;img srcset='data:,a &amp;#x2009;1w' data-expect='' data-desc='leading U+2009'&gt;
+&lt;img srcset='data:,a &amp;#x200A;1w' data-expect='' data-desc='leading U+200A'&gt;
+&lt;img srcset='data:,a &amp;#x200C;1w' data-expect='' data-desc='leading U+200C'&gt;
+&lt;img srcset='data:,a &amp;#x200D;1w' data-expect='' data-desc='leading U+200D'&gt;
+&lt;img srcset='data:,a &amp;#x202F;1w' data-expect='' data-desc='leading U+202F'&gt;
+&lt;img srcset='data:,a &amp;#x205F;1w' data-expect='' data-desc='leading U+205F'&gt;
+&lt;img srcset='data:,a &amp;#x3000;1w' data-expect='' data-desc='leading U+3000'&gt;
+&lt;img srcset='data:,a &amp;#xFEFF;1w' data-expect='' data-desc='leading U+FEFF'&gt;
+&lt;img srcset='data:,a 0x' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a -0x' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a 1x -0x' data-expect=''&gt;
+&lt;img srcset='data:,a -1x' data-expect=''&gt;
+&lt;img srcset='data:,a 1x -1x' data-expect=''&gt;
+&lt;img srcset='data:,a 1e0x' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a 1E0x' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a 1e-1x' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a 1.5e1x' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a -x' data-expect=''&gt;
+&lt;img srcset='data:,a .x' data-expect=''&gt;
+&lt;img srcset='data:,a -.x' data-expect=''&gt;
+&lt;img srcset='data:,a 1.x' data-expect=''&gt;
+&lt;img srcset='data:,a .5x' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a .5e1x' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a 1x 1.5e1x' data-expect=''&gt;
+&lt;img srcset='data:,a 1x 1e1.5x' data-expect=''&gt;
+&lt;img srcset='data:,a 1.0x' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a 1x 1.0x' data-expect=''&gt;
+&lt;img srcset='data:,a +1x' data-expect=''&gt;
+&lt;img srcset='data:,a 1X' data-expect=''&gt;
+&lt;img srcset='data:,a Infinityx' data-expect=''&gt;
+&lt;img srcset='data:,a NaNx' data-expect=''&gt;
+&lt;img srcset='data:,a 0x1x' data-expect=''&gt;
+&lt;img srcset='data:,a 0X1x' data-expect=''&gt;
+&lt;img srcset='data:,a 1&amp;#x1;x' data-expect='' data-desc='trailing U+0001'&gt;
+&lt;img srcset='data:,a 1&amp;nbsp;x' data-expect='' data-desc='trailing U+00A0'&gt;
+&lt;img srcset='data:,a 1&amp;#x1680;x' data-expect='' data-desc='trailing U+1680'&gt;
+&lt;img srcset='data:,a 1&amp;#x2000;x' data-expect='' data-desc='trailing U+2000'&gt;
+&lt;img srcset='data:,a 1&amp;#x2001;x' data-expect='' data-desc='trailing U+2001'&gt;
+&lt;img srcset='data:,a 1&amp;#x2002;x' data-expect='' data-desc='trailing U+2002'&gt;
+&lt;img srcset='data:,a 1&amp;#x2003;x' data-expect='' data-desc='trailing U+2003'&gt;
+&lt;img srcset='data:,a 1&amp;#x2004;x' data-expect='' data-desc='trailing U+2004'&gt;
+&lt;img srcset='data:,a 1&amp;#x2005;x' data-expect='' data-desc='trailing U+2005'&gt;
+&lt;img srcset='data:,a 1&amp;#x2006;x' data-expect='' data-desc='trailing U+2006'&gt;
+&lt;img srcset='data:,a 1&amp;#x2007;x' data-expect='' data-desc='trailing U+2007'&gt;
+&lt;img srcset='data:,a 1&amp;#x2008;x' data-expect='' data-desc='trailing U+2008'&gt;
+&lt;img srcset='data:,a 1&amp;#x2009;x' data-expect='' data-desc='trailing U+2009'&gt;
+&lt;img srcset='data:,a 1&amp;#x200A;x' data-expect='' data-desc='trailing U+200A'&gt;
+&lt;img srcset='data:,a 1&amp;#x200C;x' data-expect='' data-desc='trailing U+200C'&gt;
+&lt;img srcset='data:,a 1&amp;#x200D;x' data-expect='' data-desc='trailing U+200D'&gt;
+&lt;img srcset='data:,a 1&amp;#x202F;x' data-expect='' data-desc='trailing U+202F'&gt;
+&lt;img srcset='data:,a 1&amp;#x205F;x' data-expect='' data-desc='trailing U+205F'&gt;
+&lt;img srcset='data:,a 1&amp;#x3000;x' data-expect='' data-desc='trailing U+3000'&gt;
+&lt;img srcset='data:,a 1&amp;#xFEFF;x' data-expect='' data-desc='trailing U+FEFF'&gt;
+&lt;img srcset='data:,a &amp;#x1;1x' data-expect='' data-desc='leading U+0001'&gt;
+&lt;img srcset='data:,a &amp;nbsp;1x' data-expect='' data-desc='leading U+00A0'&gt;
+&lt;img srcset='data:,a &amp;#x1680;1x' data-expect='' data-desc='leading U+1680'&gt;
+&lt;img srcset='data:,a &amp;#x2000;1x' data-expect='' data-desc='leading U+2000'&gt;
+&lt;img srcset='data:,a &amp;#x2001;1x' data-expect='' data-desc='leading U+2001'&gt;
+&lt;img srcset='data:,a &amp;#x2002;1x' data-expect='' data-desc='leading U+2002'&gt;
+&lt;img srcset='data:,a &amp;#x2003;1x' data-expect='' data-desc='leading U+2003'&gt;
+&lt;img srcset='data:,a &amp;#x2004;1x' data-expect='' data-desc='leading U+2004'&gt;
+&lt;img srcset='data:,a &amp;#x2005;1x' data-expect='' data-desc='leading U+2005'&gt;
+&lt;img srcset='data:,a &amp;#x2006;1x' data-expect='' data-desc='leading U+2006'&gt;
+&lt;img srcset='data:,a &amp;#x2007;1x' data-expect='' data-desc='leading U+2007'&gt;
+&lt;img srcset='data:,a &amp;#x2008;1x' data-expect='' data-desc='leading U+2008'&gt;
+&lt;img srcset='data:,a &amp;#x2009;1x' data-expect='' data-desc='leading U+2009'&gt;
+&lt;img srcset='data:,a &amp;#x200A;1x' data-expect='' data-desc='leading U+200A'&gt;
+&lt;img srcset='data:,a &amp;#x200C;1x' data-expect='' data-desc='leading U+200C'&gt;
+&lt;img srcset='data:,a &amp;#x200D;1x' data-expect='' data-desc='leading U+200D'&gt;
+&lt;img srcset='data:,a &amp;#x202F;1x' data-expect='' data-desc='leading U+202F'&gt;
+&lt;img srcset='data:,a &amp;#x205F;1x' data-expect='' data-desc='leading U+205F'&gt;
+&lt;img srcset='data:,a &amp;#x3000;1x' data-expect='' data-desc='leading U+3000'&gt;
+&lt;img srcset='data:,a &amp;#xFEFF;1x' data-expect='' data-desc='leading U+FEFF'&gt;
+&lt;img srcset='data:,a 1w 0h' data-expect=''&gt;
+&lt;img srcset='data:,a 1w -1h' data-expect=''&gt;
+&lt;img srcset='data:,a 1w 1.0h' data-expect=''&gt;
+&lt;img srcset='data:,a 1w 1e0h' data-expect=''&gt;
+&lt;img srcset='data:,a 1w 1hhh' data-expect=''&gt;
+&lt;img srcset='data:,a 1w +1h' data-expect=''&gt;
+&lt;img srcset='data:,a 1w 1H' data-expect=''&gt;
+&lt;img srcset='data:,a 1w Infinityh' data-expect=''&gt;
+&lt;img srcset='data:,a 1w NaNh' data-expect=''&gt;
+&lt;img srcset='data:,a 0x1h' data-expect=''&gt;
+&lt;img srcset='data:,a 0X1h' data-expect=''&gt;
+&lt;img srcset='data:,a 1w 1&amp;#x1;h' data-expect='' data-desc='trailing U+0001'&gt;
+&lt;img srcset='data:,a 1w 1&amp;nbsp;h' data-expect='' data-desc='trailing U+00A0'&gt;
+&lt;img srcset='data:,a 1w 1&amp;#x1680;h' data-expect='' data-desc='trailing U+1680'&gt;
+&lt;img srcset='data:,a 1w 1&amp;#x2000;h' data-expect='' data-desc='trailing U+2000'&gt;
+&lt;img srcset='data:,a 1w 1&amp;#x2001;h' data-expect='' data-desc='trailing U+2001'&gt;
+&lt;img srcset='data:,a 1w 1&amp;#x2002;h' data-expect='' data-desc='trailing U+2002'&gt;
+&lt;img srcset='data:,a 1w 1&amp;#x2003;h' data-expect='' data-desc='trailing U+2003'&gt;
+&lt;img srcset='data:,a 1w 1&amp;#x2004;h' data-expect='' data-desc='trailing U+2004'&gt;
+&lt;img srcset='data:,a 1w 1&amp;#x2005;h' data-expect='' data-desc='trailing U+2005'&gt;
+&lt;img srcset='data:,a 1w 1&amp;#x2006;h' data-expect='' data-desc='trailing U+2006'&gt;
+&lt;img srcset='data:,a 1w 1&amp;#x2007;h' data-expect='' data-desc='trailing U+2007'&gt;
+&lt;img srcset='data:,a 1w 1&amp;#x2008;h' data-expect='' data-desc='trailing U+2008'&gt;
+&lt;img srcset='data:,a 1w 1&amp;#x2009;h' data-expect='' data-desc='trailing U+2009'&gt;
+&lt;img srcset='data:,a 1w 1&amp;#x200A;h' data-expect='' data-desc='trailing U+200A'&gt;
+&lt;img srcset='data:,a 1w 1&amp;#x200C;h' data-expect='' data-desc='trailing U+200C'&gt;
+&lt;img srcset='data:,a 1w 1&amp;#x200D;h' data-expect='' data-desc='trailing U+200D'&gt;
+&lt;img srcset='data:,a 1w 1&amp;#x202F;h' data-expect='' data-desc='trailing U+202F'&gt;
+&lt;img srcset='data:,a 1w 1&amp;#x205F;h' data-expect='' data-desc='trailing U+205F'&gt;
+&lt;img srcset='data:,a 1w 1&amp;#x3000;h' data-expect='' data-desc='trailing U+3000'&gt;
+&lt;img srcset='data:,a 1w 1&amp;#xFEFF;h' data-expect='' data-desc='trailing U+FEFF'&gt;
+&lt;img srcset='data:,a 1w &amp;#x1;1h' data-expect='' data-desc='leading U+0001'&gt;
+&lt;img srcset='data:,a 1w &amp;nbsp;1h' data-expect='' data-desc='leading U+00A0'&gt;
+&lt;img srcset='data:,a 1w &amp;#x1680;1h' data-expect='' data-desc='leading U+1680'&gt;
+&lt;img srcset='data:,a 1w &amp;#x2000;1h' data-expect='' data-desc='leading U+2000'&gt;
+&lt;img srcset='data:,a 1w &amp;#x2001;1h' data-expect='' data-desc='leading U+2001'&gt;
+&lt;img srcset='data:,a 1w &amp;#x2002;1h' data-expect='' data-desc='leading U+2002'&gt;
+&lt;img srcset='data:,a 1w &amp;#x2003;1h' data-expect='' data-desc='leading U+2003'&gt;
+&lt;img srcset='data:,a 1w &amp;#x2004;1h' data-expect='' data-desc='leading U+2004'&gt;
+&lt;img srcset='data:,a 1w &amp;#x2005;1h' data-expect='' data-desc='leading U+2005'&gt;
+&lt;img srcset='data:,a 1w &amp;#x2006;1h' data-expect='' data-desc='leading U+2006'&gt;
+&lt;img srcset='data:,a 1w &amp;#x2007;1h' data-expect='' data-desc='leading U+2007'&gt;
+&lt;img srcset='data:,a 1w &amp;#x2008;1h' data-expect='' data-desc='leading U+2008'&gt;
+&lt;img srcset='data:,a 1w &amp;#x2009;1h' data-expect='' data-desc='leading U+2009'&gt;
+&lt;img srcset='data:,a 1w &amp;#x200A;1h' data-expect='' data-desc='leading U+200A'&gt;
+&lt;img srcset='data:,a 1w &amp;#x200C;1h' data-expect='' data-desc='leading U+200C'&gt;
+&lt;img srcset='data:,a 1w &amp;#x200D;1h' data-expect='' data-desc='leading U+200D'&gt;
+&lt;img srcset='data:,a 1w &amp;#x202F;1h' data-expect='' data-desc='leading U+202F'&gt;
+&lt;img srcset='data:,a 1w &amp;#x205F;1h' data-expect='' data-desc='leading U+205F'&gt;
+&lt;img srcset='data:,a 1w &amp;#x3000;1h' data-expect='' data-desc='leading U+3000'&gt;
+&lt;img srcset='data:,a 1w &amp;#xFEFF;1h' data-expect='' data-desc='leading U+FEFF'&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementsrcsetselectanimagesourceexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/select-an-image-source-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/select-an-image-source-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/select-an-image-source-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,16 @@
</span><ins>+            
+
+FAIL &quot;data:,a 1x, data:,b 1x&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a , data:,b 1x&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1x, data:,b&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w, data:,b 1w&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1h, data:,b 1w&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w, data:,b 1w 1h&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 1h, data:,b 1w 2h&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w 2h, data:,b 1w 1h&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a , data:,b&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w, data:,b 1x&quot; sizes=&quot;1px&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1x, data:,b 1w&quot; sizes=&quot;1px&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a 1w, data:,b 2x&quot; sizes=&quot;0.5px&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &quot;data:,a 2x, data:,b 1w&quot; sizes=&quot;0.5px&quot; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementsrcsetselectanimagesourcehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/select-an-image-source.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/select-an-image-source.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/select-an-image-source.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,20 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;img select an image source&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=common.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;!--  dup entries  --&gt;
+&lt;img srcset='data:,a 1x, data:,b 1x' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a , data:,b 1x' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a 1x, data:,b' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a 1w, data:,b 1w' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a 1w 1h, data:,b 1w' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a 1w, data:,b 1w 1h' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a 1w 1h, data:,b 1w 2h' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a 1w 2h, data:,b 1w 1h' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a , data:,b' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a 1w, data:,b 1x' sizes='1px' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a 1x, data:,b 1w' sizes='1px' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a 1w, data:,b 2x' sizes='0.5px' data-expect='data:,a'&gt;
+&lt;img srcset='data:,a 2x, data:,b 1w' sizes='0.5px' data-expect='data:,a'&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementsrcsetw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,20 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/common.js
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/parse-a-srcset-attribute.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/srcset/select-an-image-source.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementupdatethesourcesetexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/update-the-source-set-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/update-the-source-set-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/update-the-source-set-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,181 @@
</span><ins>+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+foo
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+foo
+
+
+
+
+
+
+
+
+
+
+
+FAIL &lt;img data-expect=&quot;&quot;&gt; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &lt;img src=&quot;&quot; data-expect=&quot;&quot;&gt; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;img srcset=&quot;&quot; src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;img srcset=&quot;data:,b&quot; src=&quot;data:,a&quot; data-expect=&quot;data:,b&quot;&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;img src=&quot;data:,a&quot; srcset=&quot;data:,b&quot; data-expect=&quot;data:,b&quot;&gt;&lt;!--  srcset after src  --&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;img src=&quot;data:,a&quot; srcset=&quot;data:,b 1x&quot; data-expect=&quot;data:,b&quot;&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;img src=&quot;data:,a&quot; srcset=&quot;data:,b 1.0x&quot; data-expect=&quot;data:,b&quot;&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;img src=&quot;data:,a&quot; srcset=&quot;data:,b 1e0x&quot; data-expect=&quot;data:,b&quot;&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;img src=&quot;data:,a&quot; srcset=&quot;data:,b 10000w&quot; sizes=&quot;1px&quot; data-expect=&quot;data:,b&quot;&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;img src=&quot;data:,a&quot; srcset=&quot;data:,b 10000w, data:,c 10000x&quot; sizes=&quot;1px&quot; data-expect=&quot;data:,b&quot;&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;img src=&quot;data:,a&quot; srcset=&quot;data:,b 10000x, data:,c 10000w&quot; sizes=&quot;1px&quot; data-expect=&quot;data:,b&quot;&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;img src=&quot;data:,a&quot; srcset=&quot;data:,b 1w&quot; sizes=&quot;10000px&quot; data-expect=&quot;data:,b&quot;&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;img src=&quot;data:,a&quot; srcset=&quot;data:,b 1w, data:,c 0.0001x&quot; sizes=&quot;10000px&quot; data-expect=&quot;data:,b&quot;&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;img src=&quot;data:,a&quot; srcset=&quot;data:,b 0.0001x, data:,c 1w&quot; sizes=&quot;10000px&quot; data-expect=&quot;data:,b&quot;&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;img srcset=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;foo&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;!-- foo --&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;br&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;p&gt;&lt;/p&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;video&gt;&lt;source srcset=&quot;data:,b&quot;&gt;&lt;/video&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;span&gt;&lt;source srcset=&quot;data:,b&quot;&gt;&lt;/span&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;svg&gt;&lt;source srcset=&quot;data:,b&quot;&gt;&lt;/source&gt;&lt;/svg&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;svg&gt;&lt;/svg&gt;&lt;source srcset=&quot;data:,b&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;svg&gt;&lt;font&gt;&lt;/font&gt;&lt;source srcset=&quot;data:,b&quot;&gt;&lt;/source&gt;&lt;/svg&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;svg&gt;&lt;!-- &lt;font face&gt; tag breaks out of svg --&gt;&lt;/svg&gt;&lt;font face=&quot;&quot;&gt;&lt;/font&gt;&lt;source srcset=&quot;data:,b&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;img src=&quot;data:,a&quot;&gt;&lt;img src=&quot;data:,b&quot; data-expect=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source src=&quot;data:,b&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;, ,&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b 1x 1x&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; media=&quot;&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; media=&quot;all&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; media=&quot;all and (min-width:0)&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; media=&quot;all and !&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; media=&quot;all and (!)&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; media=&quot;not all&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; media=&quot;not all and (min-width:0)&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; media=&quot;not all and (max-width:0)&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; media=&quot;not all and !&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; media=&quot;not all and (!)&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; media=&quot;all, !&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; media=&quot;,&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; media=&quot;, all&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot; &quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;image/gif&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot; image/gif&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;image/gif &quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;image/gif;&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;image/gif;encodings&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;image/gif;encodings=&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;image/gif;encodings=foobar&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;image/png&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;image/jpeg&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;image/svg+xml&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;image/x-icon&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;text/xml&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;text/html&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;text/plain&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;text/css&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;video/mp4&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;video/ogg&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;video/webm&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;unknown/unknown&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;application/octet-stream&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;application/x-shockwave-flash&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;image\gif&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;gif&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;.gif&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;*&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;*/*&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;image/*&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;,&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;image/gif, image/png&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;image/gif image/png&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot; type=&quot;image/foobarbaz&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;foo&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;br&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;!-- foo --&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;img src=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;img data-expect=&quot;&quot;&gt;&lt;img src=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;source srcset=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;img data-expect=&quot;&quot;&gt;&lt;source srcset=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;span&gt;&lt;source srcset=&quot;data:,b&quot;&gt;&lt;img data-expect=&quot;&quot;&gt;&lt;/span&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;span&gt;&lt;source srcset=&quot;data:,b&quot;&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/span&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot;&gt;&lt;span&gt;&lt;img src=&quot;data:,a&quot; data-expect=&quot;data:,a&quot;&gt;&lt;/span&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,a&quot; but got (undefined) undefined
+FAIL &lt;picture&gt;&lt;source srcset=&quot;data:,b&quot;&gt;&lt;img data-expect=&quot;data:,b&quot;&gt;&lt;/picture&gt; assert_equals: expected (string) &quot;data:,b&quot; but got (undefined) undefined
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementupdatethesourcesethtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/update-the-source-set.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/update-the-source-set.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/update-the-source-set.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,140 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;title&gt;img update the source set&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script&gt;
+setup({explicit_done:true});
+
+function check(p) {
+  var img = p.querySelector('[data-expect]');
+  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);
+  }, p.innerHTML);
+}
+
+onload = function() {
+  [].forEach.call(document.querySelectorAll('div:not([id])'), check);
+  done();
+};
+
+&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;div&gt;&lt;img data-expect=''&gt;&lt;/div&gt;
+&lt;div&gt;&lt;img src data-expect=''&gt;&lt;/div&gt;
+&lt;div&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/div&gt;
+&lt;div&gt;&lt;img srcset src='data:,a' data-expect='data:,a'&gt;&lt;/div&gt;
+&lt;div&gt;&lt;img srcset='data:,b' src='data:,a' data-expect='data:,b'&gt;&lt;/div&gt;
+&lt;div&gt;&lt;img src='data:,a' srcset='data:,b' data-expect='data:,b'&gt;&lt;!--  srcset after src  --&gt;&lt;/div&gt;
+&lt;div&gt;&lt;img src='data:,a' srcset='data:,b 1x' data-expect='data:,b'&gt;&lt;/div&gt;
+&lt;div&gt;&lt;img src='data:,a' srcset='data:,b 1.0x' data-expect='data:,b'&gt;&lt;/div&gt;
+&lt;div&gt;&lt;img src='data:,a' srcset='data:,b 1e0x' data-expect='data:,b'&gt;&lt;/div&gt;
+&lt;div&gt;&lt;img src='data:,a' srcset='data:,b 10000w' sizes='1px' data-expect='data:,b'&gt;&lt;/div&gt;
+&lt;div&gt;&lt;img src='data:,a' srcset='data:,b 10000w, data:,c 10000x' sizes='1px' data-expect='data:,b'&gt;&lt;/div&gt;
+&lt;div&gt;&lt;img src='data:,a' srcset='data:,b 10000x, data:,c 10000w' sizes='1px' data-expect='data:,b'&gt;&lt;/div&gt;
+&lt;div&gt;&lt;img src='data:,a' srcset='data:,b 1w' sizes='10000px' data-expect='data:,b'&gt;&lt;/div&gt;
+&lt;div&gt;&lt;img src='data:,a' srcset='data:,b 1w, data:,c 0.0001x' sizes='10000px' data-expect='data:,b'&gt;&lt;/div&gt;
+&lt;div&gt;&lt;img src='data:,a' srcset='data:,b 0.0001x, data:,c 1w' sizes='10000px' data-expect='data:,b'&gt;&lt;/div&gt;
+&lt;div&gt;&lt;img srcset='data:,a' data-expect='data:,a'&gt;&lt;/div&gt;
+
+&lt;!--  child is not a &lt;source&gt;  --&gt;
+
+&lt;div&gt;&lt;picture&gt;foo&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;!-- foo --&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;br&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;p&gt;&lt;/p&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;video&gt;&lt;source srcset='data:,b'&gt;&lt;/video&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;span&gt;&lt;source srcset='data:,b'&gt;&lt;/span&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;svg&gt;&lt;source srcset='data:,b'/&gt;&lt;/svg&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;svg/&gt;&lt;source srcset='data:,b'/&gt;&lt;img src='data:,a' data-expect='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;svg&gt;&lt;font/&gt;&lt;source srcset='data:,b'/&gt;&lt;/svg&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;svg&gt;&lt;!-- &lt;font face&gt; tag breaks out of svg --&gt;&lt;font face&gt;&lt;/font&gt;&lt;source srcset='data:,b'/&gt;&lt;/svg&gt;&lt;img src='data:,a' data-expect='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;img src='data:,a'&gt;&lt;img src='data:,b' data-expect='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+
+&lt;!--  &lt;source&gt; has no srcset  --&gt;
+
+&lt;div&gt;&lt;picture&gt;&lt;source&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source src='data:,b'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+
+&lt;!--  &lt;source srcset&gt; has zero candidates  --&gt;
+
+&lt;div&gt;&lt;picture&gt;&lt;source srcset&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset=', ,'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b 1x 1x'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+
+&lt;!--  &lt;source media&gt;  --&gt;
+
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' media&gt;&lt;img src='data:,a' data-expect='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' media='all'&gt;&lt;img src='data:,a' data-expect='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' media='all and (min-width:0)'&gt;&lt;img src='data:,a' data-expect='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' media='all and !'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' media='all and (!)'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' media='not all'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' media='not all and (min-width:0)'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' media='not all and (max-width:0)'&gt;&lt;img src='data:,a' data-expect='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' media='not all and !'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' media='not all and (!)'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' media='all, !'&gt;&lt;img src='data:,a' data-expect='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' media=','&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' media=', all'&gt;&lt;img src='data:,a' data-expect='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+
+&lt;!--  &lt;source type&gt; assume support for gif, png, jpg, svg, ico  --&gt;
+
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type&gt;&lt;img src='data:,a' data-expect='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type=' '&gt;&lt;img src='data:,a' data-expect='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='image/gif'&gt;&lt;img src='data:,a' data-expect='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type=' image/gif'&gt;&lt;img src='data:,a' data-expect='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='image/gif '&gt;&lt;img src='data:,a' data-expect='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='image/gif;'&gt;&lt;img src='data:,a' data-expect='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='image/gif;encodings'&gt;&lt;img src='data:,a' data-expect='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='image/gif;encodings='&gt;&lt;img src='data:,a' data-expect='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='image/gif;encodings=foobar'&gt;&lt;img src='data:,a' data-expect='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='image/png'&gt;&lt;img src='data:,a' data-expect='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='image/jpeg'&gt;&lt;img src='data:,a' data-expect='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='image/svg+xml'&gt;&lt;img src='data:,a' data-expect='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='image/x-icon'&gt;&lt;img src='data:,a' data-expect='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='text/xml'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='text/html'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='text/plain'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='text/css'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='video/mp4'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='video/ogg'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='video/webm'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='unknown/unknown'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='application/octet-stream'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='application/x-shockwave-flash'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='image\gif'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='gif'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='.gif'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='*'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='*/*'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='image/*'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type=','&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='image/gif, image/png'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='image/gif image/png'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b' type='image/foobarbaz'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/picture&gt;&lt;/div&gt;
+
+&lt;!--  trailing garbage  --&gt;
+
+&lt;div&gt;&lt;picture&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;foo&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;br&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;!-- foo --&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;img src='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;img data-expect=''&gt;&lt;img src='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;source srcset='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;img data-expect=''&gt;&lt;source srcset='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
+
+&lt;!--  parent not picture  --&gt;
+
+&lt;div&gt;&lt;picture&gt;&lt;span&gt;&lt;source srcset='data:,b'&gt;&lt;img data-expect=''&gt;&lt;/span&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;span&gt;&lt;source srcset='data:,b'&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/span&gt;&lt;/picture&gt;&lt;/div&gt;
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b'&gt;&lt;span&gt;&lt;img src='data:,a' data-expect='data:,a'&gt;&lt;/span&gt;&lt;/picture&gt;&lt;/div&gt;
+
+&lt;!--  no src  --&gt;
+
+&lt;div&gt;&lt;picture&gt;&lt;source srcset='data:,b'&gt;&lt;img data-expect='data:,b'&gt;&lt;/picture&gt;&lt;/div&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheimgelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,25 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/3.jpg
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/Image-constructor.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/brokenimg.jpg
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/contains.json
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/image-1.jpg
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/img.complete.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/relevant-mutations.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-img-element/update-the-source-set.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheobjectelementobjectattributesexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-attributes-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-attributes-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-attributes-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+ 
+
+FAIL object.contentWindow undefined is not an object (evaluating 'obj1.contentWindow.name')
+FAIL object.width assert_equals: The width should be 100px. expected &quot;100px&quot; but got &quot;auto&quot;
+FAIL object.height assert_equals: The height should be 50px. expected &quot;50px&quot; but got &quot;auto&quot;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheobjectelementobjectattributeshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-attributes.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-attributes.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-attributes.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,50 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;HTML Test: object - attributes&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;body onload=&quot;on_load()&quot;&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;form&gt;
+  &lt;object id=&quot;obj1&quot; data=&quot;blue.html&quot; name=&quot;o&quot; height=&quot;50&quot; width=&quot;100&quot;&gt;&lt;/object&gt;
+  &lt;object id=&quot;obj2&quot; name=&quot;p&quot; type=&quot;image/png&quot;&gt;&lt;/object&gt;
+&lt;/form&gt;
+&lt;script&gt;
+  var obj1;
+  var obj2;
+  var t1 = async_test(&quot;object.contentWindow&quot;);
+  var t3 = async_test(&quot;object.width&quot;);
+  var t4 = async_test(&quot;object.height&quot;);
+
+  setup(function() {
+    obj1 = document.getElementById(&quot;obj1&quot;);
+    obj2 = document.getElementById(&quot;obj2&quot;);
+  });
+
+  function on_load () {
+    t1.step(function() {
+      assert_equals(obj1.contentWindow.name, &quot;o&quot;, &quot;The contentWindow's name of the object element should be 'o'.&quot;);
+      assert_equals(obj2.contentWindow, null, &quot;The contentWindow of the object element should be null when it type attribute starts with 'image/'.&quot;);
+      obj1.setAttribute(&quot;name&quot;, &quot;o1&quot;);
+      assert_equals(obj1.name, &quot;o1&quot;, &quot;The name of the object element should be 'o1'.&quot;);
+      assert_equals(obj1.contentWindow.name, &quot;o1&quot;, &quot;The contentWindow's name of the object element should be 'o1'.&quot;);
+      obj1.removeAttribute(&quot;name&quot;);
+      assert_equals(obj1.name, &quot;&quot;, &quot;The name of the object element should be empty string.&quot;);
+      assert_equals(obj1.contentWindow.name, &quot;&quot;, &quot;The contentWindow's name of the object element should be empty string.&quot;);
+    });
+    t1.done()
+
+    t3.step(function() {
+      assert_equals(getComputedStyle(obj1, null)[&quot;width&quot;], &quot;100px&quot;, &quot;The width should be 100px.&quot;);
+    });
+    t3.done();
+
+    t4.step(function() {
+      assert_equals(getComputedStyle(obj1, null)[&quot;height&quot;], &quot;50px&quot;, &quot;The height should be 50px.&quot;);
+    });
+    t4.done();
+  }
+&lt;/script&gt;
+
+&lt;/body&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheobjectelementobjectfallbackexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-fallback-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-fallback-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-fallback-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+
+
+FAIL the typemustmatch attribute is specified assert_true: typeMustMatch is not supported. expected true got false
+PASS the typemustmatch attribute is not specified 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheobjectelementobjectfallbackhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-fallback.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-fallback.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-fallback.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,41 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;HTML Test: display fallback content&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script&gt;
+
+var t1 = async_test(&quot;the typemustmatch attribute is specified&quot;);
+var t2 = async_test(&quot;the typemustmatch attribute is not specified&quot;);
+
+&lt;/script&gt;
+&lt;body onload=&quot;t1.done(); t2.done()&quot;&gt;
+&lt;object id=&quot;obj&quot;&gt;&lt;/object&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+
+t1.step(function() {
+  var obj1 = document.createElement(&quot;object&quot;);
+  obj1.setAttribute(&quot;data&quot;, &quot;/w3c/resources/images/blue.png&quot;);
+  obj1.setAttribute(&quot;type&quot;, &quot;text/plain&quot;);
+  obj1.setAttribute(&quot;typemustmatch&quot;, &quot;&quot;);
+  obj1.onload = t1.step_func(function () {
+    assert_true(&quot;typeMustMatch&quot; in obj1, &quot;typeMustMatch is not supported.&quot;);
+    assert_unreached(&quot;The image of the first object should not be loaded.&quot;);
+  });
+  document.getElementById(&quot;obj&quot;).appendChild(obj1);
+});
+
+t2.step(function () {
+  var obj2 = document.createElement(&quot;object&quot;);
+  obj2.setAttribute(&quot;data&quot;, &quot;resources/test2.html&quot;);
+  obj2.setAttribute(&quot;type&quot;, &quot;text/plain&quot;);
+  obj2.onload = t2.step_func( function () {
+    assert_not_equals(obj2.contentDocument, null, &quot;The test2.html should be loaded.&quot;);
+  });
+  document.getElementById(&quot;obj&quot;).appendChild(obj2);
+});
+
+&lt;/script&gt;
+&lt;/body&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheobjectelementobjecthandlerexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-handler-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-handler-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-handler-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+
+
+PASS The nested browsing context must be navigated to the resource specified by the data attribute. 
+PASS The object.data must not be updated if the browsing context gets further navigated. 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheobjectelementobjecthandlerhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-handler.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-handler.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-handler.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,33 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;HTML Test: object - handler&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com&quot; /&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;object id=&quot;test&quot; name=&quot;obj&quot; data=&quot;resources/test0.html&quot; type=&quot;text/html&quot;&gt;&lt;/object&gt;
+&lt;script&gt;
+
+var t1 = async_test(&quot;The nested browsing context must be navigated to the resource specified by the data attribute.&quot;);
+var t2 = async_test(&quot;The object.data must not be updated if the browsing context gets further navigated.&quot;);
+
+function callback(data) {
+  if (data == &quot;test0&quot;) {
+    t1.step(function() {
+      var testEle = document.getElementById(&quot;test&quot;);
+      assert_true(testEle.contentDocument.location.href.indexOf(&quot;test0.html&quot;) != -1, &quot;The nested browsing context should be navigated to test0.html.&quot;);
+      window[&quot;obj&quot;].history.replaceState({state:&quot;ok&quot;}, &quot;mytitle &quot;, &quot;object-fallback.html&quot;);
+      assert_not_equals(testEle.contentDocument.location.href.indexOf(&quot;object-fallback.html&quot;), -1, &quot;The nested browsing context should be replacement enabled.&quot;);
+    });
+    t1.done();
+  } else if (data == &quot;test1&quot;) {
+    t2.step(function() {
+      var testEle = document.getElementById(&quot;test&quot;);
+      assert_true(testEle.contentDocument.location.href.indexOf(&quot;test1.html&quot;) != -1, &quot;The browsing context should be navigated to test1.html.&quot;);
+      assert_true(testEle.data.indexOf(&quot;test0.html&quot;) != -1, &quot;The value of attribute data should not be updated.&quot;);
+    });
+    t2.done();
+  }
+}
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheobjectelementresourcestest0html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/resources/test0.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/resources/test0.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/resources/test0.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;HTML Test&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com&quot;&gt;
+&lt;script&gt;
+
+parent.callback(&quot;test0&quot;);
+document.location.href = &quot;test1.html&quot;;
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheobjectelementresourcestest1html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/resources/test1.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/resources/test1.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/resources/test1.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;HTML Test&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com&quot;&gt;
+&lt;script&gt;
+
+parent.callback(&quot;test1&quot;);
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheobjectelementresourcestest2html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/resources/test2.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/resources/test2.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/resources/test2.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;HTML Test: object - fallback&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com&quot;&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontenttheobjectelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,21 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-attributes.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-events.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-fallback.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-object-element/object-handler.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementvideotabindexexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video-tabindex-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video-tabindex-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video-tabindex-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+
+PASS Attributes shouldn't magically appear 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementvideotabindexhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video-tabindex.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video-tabindex.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video-tabindex.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;tabindex on video elements&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#video&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;div id=&quot;test&quot;&gt;
+&lt;video&gt;&lt;/video&gt;
+&lt;/div&gt;
+&lt;script&gt;
+var t = async_test(&quot;Attributes shouldn't magically appear&quot;);
+on_event(window, &quot;load&quot;, t.step_func(function() {
+  var el = document.getElementById(&quot;test&quot;).getElementsByTagName(&quot;video&quot;)[0];
+  assert_equals(el.hasAttribute(&quot;tabindex&quot;), false);
+  t.done()
+}))
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementvideo_content_imageexpectedhtm"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_content_image-expected.htm (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_content_image-expected.htm                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_content_image-expected.htm        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,12 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;title&gt;HTML5 Media Elements: Content inside the 'video' element is not shown to the user.&lt;/title&gt;
+    &lt;meta content=&quot;text/html; charset=UTF-8&quot; http-equiv=&quot;Content-Type&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Microsoft&quot; href=&quot;http://www.microsoft.com/&quot; /&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+  &lt;div id='testcontent'&gt;
+  &lt;/div&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementvideo_content_imagehtm"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_content_image.htm (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_content_image.htm                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_content_image.htm        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,16 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;title&gt;HTML5 Media Elements: Content inside the 'video' element is not shown to the user.&lt;/title&gt;
+    &lt;meta content=&quot;text/html; charset=UTF-8&quot; http-equiv=&quot;Content-Type&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Microsoft&quot; href=&quot;http://www.microsoft.com/&quot; /&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#video&quot; /&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;video_content-ref.htm&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;Content inside the 'video' element is not shown to the user (image).&quot; /&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+  &lt;div id='testcontent'&gt;
+    &lt;video&gt;&lt;img src=&quot;../../../../w3c/resources/images/fail.gif&quot; /&gt;&lt;/video&gt;
+  &lt;/div&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementvideo_content_textexpectedhtm"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_content_text-expected.htm (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_content_text-expected.htm                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_content_text-expected.htm        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,12 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;title&gt;HTML5 Media Elements: Content inside the 'video' element is not shown to the user.&lt;/title&gt;
+    &lt;meta content=&quot;text/html; charset=UTF-8&quot; http-equiv=&quot;Content-Type&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Microsoft&quot; href=&quot;http://www.microsoft.com/&quot; /&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+  &lt;div id='testcontent'&gt;
+  &lt;/div&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementvideo_content_texthtm"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_content_text.htm (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_content_text.htm                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_content_text.htm        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,16 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;title&gt;HTML5 Media Elements: Content inside the 'video' element is not shown to the user.&lt;/title&gt;
+    &lt;meta content=&quot;text/html; charset=UTF-8&quot; http-equiv=&quot;Content-Type&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Microsoft&quot; href=&quot;http://www.microsoft.com/&quot; /&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#video&quot; /&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;video_content-ref.htm&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;Content inside the 'video' element is not shown to the user.&quot; /&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+  &lt;div id='testcontent'&gt;
+    &lt;video&gt;&lt;p style=&quot;color: red;&quot;&gt;FAIL&lt;/p&gt;&lt;/video&gt;
+  &lt;/div&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementvideo_dynamic_poster_absoluteexpectedhtm"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_dynamic_poster_absolute-expected.htm (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_dynamic_poster_absolute-expected.htm                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_dynamic_poster_absolute-expected.htm        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;meta charset=UTF-8&gt;
+&lt;title&gt;Reference for poster tests&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Microsoft&quot; href=&quot;http://www.microsoft.com/&quot;&gt;
+&lt;img src=&quot;/w3c/resources/media/poster.png&quot;&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementvideo_dynamic_poster_absolutehtm"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_dynamic_poster_absolute.htm (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_dynamic_poster_absolute.htm                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_dynamic_poster_absolute.htm        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,12 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;meta charset=UTF-8&gt;
+&lt;title&gt;The 'HTMLVideoElement' interface supports setting 'poster' to an absolute URL&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Microsoft&quot; href=&quot;http://www.microsoft.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-video-poster&quot;&gt;
+&lt;link rel=&quot;match&quot; href=&quot;video_dynamic_poster-ref.htm&quot;&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;The 'HTMLVideoElement' interface supports setting 'poster' to an absolute URL&quot;&gt;
+&lt;video id=&quot;video0&quot;&gt;Your browser does not support video.&lt;/video&gt;
+&lt;script&gt;
+var testElem = document.getElementById(&quot;video0&quot;);
+testElem.poster = &quot;/w3c/resources/media/poster.png&quot;;
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementvideo_dynamic_poster_relativeexpectedhtm"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_dynamic_poster_relative-expected.htm (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_dynamic_poster_relative-expected.htm                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_dynamic_poster_relative-expected.htm        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;meta charset=UTF-8&gt;
+&lt;title&gt;Reference for poster tests&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Microsoft&quot; href=&quot;http://www.microsoft.com/&quot;&gt;
+&lt;img src=&quot;/w3c/resources/media/poster.png&quot;&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementvideo_dynamic_poster_relativehtm"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_dynamic_poster_relative.htm (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_dynamic_poster_relative.htm                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_dynamic_poster_relative.htm        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,12 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;meta charset=UTF-8&gt;
+&lt;title&gt;The 'HTMLVideoElement' interface supports setting 'poster' to a relative URL&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Microsoft&quot; href=&quot;http://www.microsoft.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-video-poster&quot;&gt;
+&lt;link rel=&quot;match&quot; href=&quot;video_dynamic_poster-ref.htm&quot;&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;The 'HTMLVideoElement' interface supports setting 'poster' to a relative URL&quot;&gt;
+&lt;video id=&quot;video0&quot;&gt;Your browser does not support video.&lt;/video&gt;
+&lt;script&gt;
+var testElem = document.getElementById(&quot;video0&quot;);
+testElem.poster = &quot;../../../../resources/media/poster.png&quot;;
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementvideo_initially_pausedexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_initially_paused-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_initially_paused-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_initially_paused-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;meta charset=UTF-8&gt;
+&lt;title&gt;Video elements should initially be paused&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Microsoft&quot; href=&quot;http://www.microsoft.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-media-paused&quot;&gt;
+&lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+&lt;p&gt;The following video element should be paused. (All clocks at zero).&lt;/p&gt;
+&lt;img src='/w3c/resources/images/movie_300_frame_0.png'&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementvideo_initially_pausedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_initially_paused.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_initially_paused.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_initially_paused.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,21 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;meta charset=UTF-8&gt;
+&lt;title&gt;Video elements should initially be paused&lt;/title&gt;
+&lt;link rel=&quot;match&quot; href=&quot;video_initially_paused-ref.html&quot;&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Microsoft&quot; href=&quot;http://www.microsoft.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-media-paused&quot;&gt;
+&lt;script src=&quot;/w3c/resources/media.js&quot;&gt;&lt;/script&gt;
+&lt;style&gt;
+div#video {
+  padding: 6px 3px;
+}
+&lt;/style&gt;
+&lt;p&gt;The following video element should be paused. (All clocks at zero).&lt;/p&gt;
+&lt;div id=video&gt;
+&lt;script&gt;
+document.write(
+  &quot;&lt;video src='&quot;+ getVideoURI('/w3c/resources/media/movie_300') + &quot;' &gt;&quot; +
+  &quot;Your browser does not support the video element.&quot; +
+  &quot;&lt;\/video&gt;&quot;);
+&lt;/script&gt;
+&lt;/div&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsembeddedcontentthevideoelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video-tabindex.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_content_image-expected.htm
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_content_image.htm
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_content_text-expected.htm
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_content_text.htm
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_dynamic_poster_absolute-expected.htm
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_dynamic_poster_absolute.htm
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_dynamic_poster_relative-expected.htm
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_dynamic_poster_relative.htm
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_initially_paused-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/embedded-content/the-video-element/video_initially_paused.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsattributescommontoformcontrolscontainsjson"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/contains.json (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/contains.json                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/contains.json        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,34 @@
</span><ins>+[
+    {
+        &quot;id&quot;: &quot;naming-form-controls-the-name-attribute&quot;,
+        &quot;original_id&quot;: &quot;naming-form-controls:-the-name-attribute&quot;
+    },
+    {
+        &quot;id&quot;: &quot;submitting-element-directionality-the-dirname-attribute&quot;,
+        &quot;original_id&quot;: &quot;submitting-element-directionality:-the-dirname-attribute&quot;
+    },
+    {
+        &quot;id&quot;: &quot;limiting-user-input-length-the-maxlength-attribute&quot;,
+        &quot;original_id&quot;: &quot;limiting-user-input-length:-the-maxlength-attribute&quot;
+    },
+    {
+        &quot;id&quot;: &quot;enabling-and-disabling-form-controls-the-disabled-attribute&quot;,
+        &quot;original_id&quot;: &quot;enabling-and-disabling-form-controls:-the-disabled-attribute&quot;
+    },
+    {
+        &quot;id&quot;: &quot;form-submission&quot;,
+        &quot;original_id&quot;: &quot;form-submission&quot;
+    },
+    {
+        &quot;id&quot;: &quot;autofocusing-a-form-control-the-autofocus-attribute&quot;,
+        &quot;original_id&quot;: &quot;autofocusing-a-form-control:-the-autofocus-attribute&quot;
+    },
+    {
+        &quot;id&quot;: &quot;input-modalities-the-inputmode-attribute&quot;,
+        &quot;original_id&quot;: &quot;input-modalities:-the-inputmode-attribute&quot;
+    },
+    {
+        &quot;id&quot;: &quot;autofilling-form-controls-the-autocomplete-attribute&quot;,
+        &quot;original_id&quot;: &quot;autofilling-form-controls:-the-autocomplete-attribute&quot;
+    }
+]
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsattributescommontoformcontrolsdirnameltrexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/dirname-ltr-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/dirname-ltr-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/dirname-ltr-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+Comment: 
+
+Post Comment
+
+
+
+PASS submit element directionality 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsattributescommontoformcontrolsdirnameltrhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/dirname-ltr.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/dirname-ltr.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/dirname-ltr.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,29 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Submitting element directionality: the dirname attribute&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#submitting-element-directionality:-the-dirname-attribute&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;form action=&quot;dirname-ltr-iframe.html&quot; method=get target=&quot;iframe&quot;&gt;
+  &lt;p&gt;&lt;label&gt;Comment: &lt;input type=text name=&quot;comment&quot; dirname=&quot;comment.dir&quot; required&gt;&lt;/label&gt;&lt;/p&gt;
+  &lt;p&gt;&lt;button type=submit&gt;Post Comment&lt;/button&gt;&lt;/p&gt;
+&lt;/form&gt;
+&lt;iframe name=&quot;iframe&quot;&gt;&lt;/iframe&gt;
+&lt;script&gt;
+  function getParameterByName(name) {
+    name = name.replace(/[\[]/, &quot;\\[&quot;).replace(/[\]]/, &quot;\\]&quot;);
+    var regex = new RegExp(&quot;[\\?&amp;]&quot; + name + &quot;=([^&amp;#]*)&quot;),
+    results = regex.exec(document.querySelector(&quot;iframe&quot;).contentWindow.location.search);
+    return results == null ? &quot;&quot; : decodeURIComponent(results[1].replace(/\+/g, &quot; &quot;));
+  }
+
+  var t = async_test(&quot;submit element directionality&quot;);
+  document.querySelector(&quot;input&quot;).value=&quot;foobar&quot;;
+  document.querySelector(&quot;button&quot;).click();
+
+  document.querySelector(&quot;iframe&quot;).onload = t.step_func_done(function() {
+    assert_equals(getParameterByName(&quot;comment.dir&quot;), &quot;ltr&quot;);
+  });
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsattributescommontoformcontrolsdisabledelements01expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/disabled-elements-01-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/disabled-elements-01-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/disabled-elements-01-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+
+PASS Test [button]: default behaviour is NOT disabled 
+PASS Test [button]: verify disabled acts as boolean attribute 
+PASS Test [button]: synthetic click events should be dispatched 
+PASS Test [button]: click() should not dispatch a click event 
+PASS Test [input]: default behaviour is NOT disabled 
+PASS Test [input]: verify disabled acts as boolean attribute 
+PASS Test [input]: synthetic click events should be dispatched 
+PASS Test [input]: click() should not dispatch a click event 
+PASS Test [select]: default behaviour is NOT disabled 
+PASS Test [select]: verify disabled acts as boolean attribute 
+PASS Test [select]: synthetic click events should be dispatched 
+PASS Test [select]: click() should not dispatch a click event 
+PASS Test [textarea]: default behaviour is NOT disabled 
+PASS Test [textarea]: verify disabled acts as boolean attribute 
+PASS Test [textarea]: synthetic click events should be dispatched 
+PASS Test [textarea]: click() should not dispatch a click event 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsattributescommontoformcontrolsdisabledelements01html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/disabled-elements-01.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/disabled-elements-01.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/disabled-elements-01.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,84 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;HTMLFormElement: the disabled attribute&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Eric Casler&quot; href=&quot;mailto:ericorange@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#enabling-and-disabling-form-controls:-the-disabled-attribute&quot;&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;div id=&quot;root&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+// Elements tested for in this file
+var types = [&quot;button&quot;, &quot;input&quot;, &quot;select&quot;, &quot;textarea&quot;];
+// no tests for: optgroup, option, fieldset
+
+var root = document.getElementById(&quot;root&quot;);
+for (var element_type = 0; element_type &lt; types.length; element_type++) {
+  test(function() {
+    root.innerHTML = &quot;&lt;&quot;+types[element_type]+&quot; + id='elem'&gt;&lt;/&quot;+types[element_type]+&quot;&gt;&quot;;
+
+    var elem = document.getElementById(&quot;elem&quot;);
+    assert_false(elem.disabled);
+  },
+  &quot;Test [&quot;+types[element_type]+&quot;]: default behaviour is NOT disabled&quot;);
+
+  test(function() {
+    var formats = [&quot;disabled&quot;,
+      &quot;disabled=disabled&quot;, &quot;disabled='disabled'&quot;,
+      &quot;disabled='true'&quot;, &quot;disabled=true&quot;,
+      &quot;disabled='false'&quot;, &quot;disabled=false&quot;];
+
+    for (var f = 0; f &lt; formats.length; f++) {
+      root.innerHTML = &quot;&lt;&quot;+types[element_type]+&quot; id='elem' &quot; + formats[f] + &quot;&gt;&lt;/&quot;+types[element_type]+&quot;&gt;&quot;;
+
+      var elem = document.getElementById(&quot;elem&quot;);
+      assert_true(elem.disabled);
+    }
+  },
+  &quot;Test [&quot;+types[element_type]+&quot;]: verify disabled acts as boolean attribute&quot;);
+
+  test(function() {
+    root.innerHTML = &quot;&lt;&quot;+types[element_type]+&quot; id='elem'&gt;&lt;/&quot;+types[element_type]+&quot;&gt;&lt;input id='other' value='no event dispatched'&gt;&lt;/input&gt;&quot;;
+    var elem = document.getElementById(&quot;elem&quot;),
+      other = document.getElementById(&quot;other&quot;);
+
+    assert_equals(other.value, &quot;no event dispatched&quot;);
+
+    elem.disabled = true;
+    assert_true(elem.disabled);
+
+    elem.onclick = function () {
+      // change value of other element, to avoid *.value returning &quot;&quot; for disabled elements
+      document.getElementById(&quot;other&quot;).value = &quot;event dispatched&quot;;
+    };
+
+    // Check if dispatched event executes
+    var evObj = document.createEvent('Events');
+    evObj.initEvent(&quot;click&quot;, true, false);
+    elem.dispatchEvent(evObj);
+    assert_equals(other.value, &quot;event dispatched&quot;);
+  },
+  &quot;Test [&quot;+types[element_type]+&quot;]: synthetic click events should be dispatched&quot;);
+
+  test(function() {
+    root.innerHTML = &quot;&lt;&quot;+types[element_type]+&quot; id='elem'&gt;&lt;/&quot;+types[element_type]+&quot;&gt;&lt;input id='other' value='no event dispatched'&gt;&lt;/input&gt;&quot;;
+    var elem = document.getElementById(&quot;elem&quot;),
+      other = document.getElementById(&quot;other&quot;);
+
+    assert_equals(other.value, &quot;no event dispatched&quot;);
+
+    elem.disabled = true;
+    assert_true(elem.disabled);
+
+    elem.onclick = function () {
+      // change value of other element, to avoid *.value returning &quot;&quot; for disabled elements
+      document.getElementById(&quot;other&quot;).value = &quot;event dispatched&quot;;
+    };
+
+    // Check that click() on a disabled element doesn't dispatch a click event.
+    elem.click();
+    assert_equals(other.value, &quot;no event dispatched&quot;);
+  },
+  &quot;Test [&quot;+types[element_type]+&quot;]: click() should not dispatch a click event&quot;);
+}
+root.innerHTML = &quot;&quot;;
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsattributescommontoformcontrolsformAction_document_addressexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/formAction_document_address-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/formAction_document_address-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/formAction_document_address-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+
+FAIL Check if button.formAction is the document's address when formaction content attribute is missing assert_equals: expected &quot;http://127.0.0.1:8000/w3c/html/semantics/forms/attributes-common-to-form-controls/formAction_document_address.html&quot; but got &quot;&quot;
+FAIL Check if input.formAction is the document's address when formaction content attribute is missing assert_equals: expected &quot;http://127.0.0.1:8000/w3c/html/semantics/forms/attributes-common-to-form-controls/formAction_document_address.html&quot; but got &quot;&quot;
+PASS Check if button.formAction is the document's address when formaction content attribute value is empty string 
+PASS Check if input.formAction is the document's address when formaction content attribute value is empty string 
+PASS Check if button.formAction is the document's address when formaction content attribute value is not assigned 
+PASS Check if input.formAction is the document's address when formaction content attribute value is not assigned 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsattributescommontoformcontrolsformAction_document_addresshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/formAction_document_address.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/formAction_document_address.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/formAction_document_address.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,74 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;HTML Test: formAction_document_address&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-fs-formaction&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-document's-address&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-button-element&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-input-element&quot;&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;On getting the formAction IDL attribute, when the content attribute is missing or its value is the empty string, the document's address must be returned instead.&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+
+    &lt;div id=&quot;missing&quot; style=&quot;display:none&quot;&gt;
+      &lt;button type=&quot;submit&quot;&gt;Submit&lt;/button&gt;
+      &lt;input type=&quot;submit&quot;&gt;
+    &lt;/div&gt;
+
+    &lt;div id=&quot;empty_string&quot; style=&quot;display:none&quot;&gt;
+      &lt;button type=&quot;submit&quot; formaction=&quot;&quot;&gt;Submit&lt;/button&gt;
+      &lt;input type=&quot;submit&quot; formaction=&quot;&quot;&gt;
+    &lt;/div&gt;
+
+    &lt;div id=&quot;no_assigned_value&quot; style=&quot;display:none&quot;&gt;
+      &lt;button type=&quot;submit&quot; formaction&gt;Submit&lt;/button&gt;
+      &lt;input type=&quot;submit&quot; formaction&gt;
+    &lt;/div&gt;
+
+    &lt;script&gt;
+      // formaction content attribute is missing
+      test(function() {
+        var formAction = document.querySelector('#missing button').formAction;
+        var address = document.location.href;
+        assert_equals(formAction, address);
+      }, &quot;Check if button.formAction is the document's address when formaction content attribute is missing&quot;);
+
+      test(function() {
+        var formAction = document.querySelector('#missing input').formAction;
+        var address = document.location.href;
+        assert_equals(formAction, address);
+      }, &quot;Check if input.formAction is the document's address when formaction content attribute is missing&quot;);
+
+      // formaction content attribute value is empty string
+      test(function() {
+        var formAction = document.querySelector('#empty_string button').formAction;
+        var address = document.location.href;
+        assert_equals(formAction, address);
+      }, &quot;Check if button.formAction is the document's address when formaction content attribute value is empty string&quot;);
+
+      test(function() {
+        var formAction = document.querySelector('#empty_string input').formAction;
+        var address = document.location.href;
+        assert_equals(formAction, address);
+      }, &quot;Check if input.formAction is the document's address when formaction content attribute value is empty string&quot;);
+
+      // formaction content attribute value is not assigned, just for comparison with empty string above
+      test(function() {
+        var formAction = document.querySelector('#no_assigned_value button').formAction;
+        var address = document.location.href;
+        assert_equals(formAction, address);
+      }, &quot;Check if button.formAction is the document's address when formaction content attribute value is not assigned&quot;);
+
+      test(function() {
+        var formAction = document.querySelector('#no_assigned_value input').formAction;
+        var address = document.location.href;
+        assert_equals(formAction, address);
+      }, &quot;Check if input.formAction is the document's address when formaction content attribute value is not assigned&quot;);
+    &lt;/script&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsattributescommontoformcontrolsformactionexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/formaction-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/formaction-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/formaction-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+
+PASS formAction on button support 
+PASS formAction on input support 
+PASS formaction absolute URL value on input reflects correct value after being updated by the DOM 
+PASS formAction absolute URL value is correct using getAttribute 
+PASS formAction relative URL value on input reflects correct value after being updated by the DOM 
+PASS formAction relative URL value is correct using getAttribute 
+FAIL On getting, when formaction is missing, the document's address must be returned assert_equals: expected &quot;http://127.0.0.1:8000/w3c/html/semantics/forms/attributes-common-to-form-controls/formaction.html&quot; but got &quot;&quot;
+PASS On getting, when formaction value is the empty string, the document's address must be returned 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsattributescommontoformcontrolsformactionhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/formaction.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/formaction.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/formaction.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,42 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;&lt;head&gt;
+        &lt;title&gt;formaction on button element&lt;/title&gt;
+        &lt;meta content=&quot;text/html; charset=UTF-8&quot; http-equiv=&quot;content-type&quot;&gt;
+        &lt;meta content=&quot;formaction on button element&quot; name=&quot;description&quot;&gt;
+    &lt;link href=&quot;https://html.spec.whatwg.org/multipage/#dom-fs-formaction&quot; rel=&quot;help&quot;&gt;
+&lt;/head&gt;
+    &lt;body&gt;
+        &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+        &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+
+        &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+        &lt;button formaction=&quot;http://www.example.com/&quot; style=&quot;display: none&quot; type=&quot;submit&quot;&gt;Submit&lt;/button&gt;
+        &lt;input formaction=&quot;http://www.example.com/&quot; style=&quot;display: none&quot; type=&quot;submit&quot; value=&quot;submit&quot;&gt;
+        &lt;input style=&quot;display: none&quot; type=&quot;submit&quot; value=&quot;submit&quot;&gt;
+        &lt;input formaction=&quot;&quot; style=&quot;display: none&quot; type=&quot;submit&quot; value=&quot;submit&quot;&gt;
+
+        &lt;script type=&quot;text/javascript&quot;&gt;
+        function relativeToAbsolute(relativeURL) {
+          var a = document.createElement('a');
+          a.href = relativeURL;
+          return a.href;
+        }
+        test(function() {assert_equals(document.getElementsByTagName(&quot;button&quot;)[0].formAction, &quot;http://www.example.com/&quot;)}, &quot;formAction on button support&quot;);
+        test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[0].formAction, &quot;http://www.example.com/&quot;)}, &quot;formAction on input support&quot;);
+
+        var testElem = document.getElementsByTagName(&quot;input&quot;)[0];
+        testElem.formAction = &quot;http://www.example.com/page2.html&quot;;
+
+        test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[0].formAction, &quot;http://www.example.com/page2.html&quot;)}, &quot;formaction absolute URL value on input reflects correct value after being updated by the DOM&quot;);
+        test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[0].getAttribute(&quot;formaction&quot;), &quot;http://www.example.com/page2.html&quot;)}, &quot;formAction absolute URL value is correct using getAttribute&quot;);
+
+        var testElem = document.getElementsByTagName(&quot;input&quot;)[0];
+        testElem.formAction = &quot;../page3.html&quot;;
+
+        test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[0].formAction, relativeToAbsolute('../page3.html'))}, &quot;formAction relative URL value on input reflects correct value after being updated by the DOM&quot;);
+        test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[0].getAttribute(&quot;formaction&quot;), &quot;../page3.html&quot;)}, &quot;formAction relative URL value is correct using getAttribute&quot;);
+
+        test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[1].formAction, document.URL)}, &quot;On getting, when formaction is missing, the document's address must be returned&quot;);
+        test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[2].formAction, document.URL)}, &quot;On getting, when formaction value is the empty string, the document's address must be returned&quot;);
+        &lt;/script&gt;
+&lt;/body&gt;&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsattributescommontoformcontrolsw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,22 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/contains.json
+/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/dirname-ltr.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/disabled-elements-01.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/formAction_document_address.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/attributes-common-to-form-controls/formaction.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintscontainsjson"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/contains.json (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/contains.json                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/contains.json        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+[
+    {
+        &quot;id&quot;: &quot;definitions&quot;,
+        &quot;original_id&quot;: &quot;definitions&quot;
+    },
+    {
+        &quot;id&quot;: &quot;constraint-validation&quot;,
+        &quot;original_id&quot;: &quot;constraint-validation&quot;
+    },
+    {
+        &quot;id&quot;: &quot;the-constraint-validation-api&quot;,
+        &quot;original_id&quot;: &quot;the-constraint-validation-api&quot;
+    },
+    {
+        &quot;id&quot;: &quot;security-forms&quot;,
+        &quot;original_id&quot;: &quot;security-forms&quot;
+    }
+]
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationcheckValidityexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-checkValidity-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-checkValidity-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-checkValidity-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,88 @@
</span><ins>+
+
+PASS [INPUT in TEXT status] no constraint 
+PASS [INPUT in TEXT status] no constraint (in a form) 
+PASS [INPUT in TEXT status] suffering from being too long 
+PASS [INPUT in TEXT status] suffering from being too long (in a form) 
+PASS [INPUT in TEXT status] suffering from a pattern mismatch 
+PASS [INPUT in TEXT status] suffering from a pattern mismatch (in a form) 
+PASS [INPUT in TEXT status] suffering from being missing 
+PASS [INPUT in TEXT status] suffering from being missing (in a form) 
+PASS [INPUT in SEARCH status] no constraint 
+PASS [INPUT in SEARCH status] no constraint (in a form) 
+PASS [INPUT in SEARCH status] suffering from being too long 
+PASS [INPUT in SEARCH status] suffering from being too long (in a form) 
+PASS [INPUT in SEARCH status] suffering from a pattern mismatch 
+PASS [INPUT in SEARCH status] suffering from a pattern mismatch (in a form) 
+PASS [INPUT in SEARCH status] suffering from being missing 
+PASS [INPUT in SEARCH status] suffering from being missing (in a form) 
+PASS [INPUT in TEL status] no constraint 
+PASS [INPUT in TEL status] no constraint (in a form) 
+PASS [INPUT in TEL status] suffering from being too long 
+PASS [INPUT in TEL status] suffering from being too long (in a form) 
+PASS [INPUT in TEL status] suffering from a pattern mismatch 
+PASS [INPUT in TEL status] suffering from a pattern mismatch (in a form) 
+PASS [INPUT in TEL status] suffering from being missing 
+PASS [INPUT in TEL status] suffering from being missing (in a form) 
+PASS [INPUT in PASSWORD status] no constraint 
+PASS [INPUT in PASSWORD status] no constraint (in a form) 
+PASS [INPUT in PASSWORD status] suffering from being too long 
+PASS [INPUT in PASSWORD status] suffering from being too long (in a form) 
+PASS [INPUT in PASSWORD status] suffering from a pattern mismatch 
+PASS [INPUT in PASSWORD status] suffering from a pattern mismatch (in a form) 
+PASS [INPUT in PASSWORD status] suffering from being missing 
+PASS [INPUT in PASSWORD status] suffering from being missing (in a form) 
+PASS [INPUT in URL status] no constraint 
+PASS [INPUT in URL status] no constraint (in a form) 
+PASS [INPUT in URL status] suffering from being too long 
+PASS [INPUT in URL status] suffering from being too long (in a form) 
+PASS [INPUT in URL status] suffering from a pattern mismatch 
+PASS [INPUT in URL status] suffering from a pattern mismatch (in a form) 
+PASS [INPUT in URL status] suffering from a type mismatch 
+PASS [INPUT in URL status] suffering from a type mismatch (in a form) 
+PASS [INPUT in URL status] suffering from being missing 
+PASS [INPUT in URL status] suffering from being missing (in a form) 
+PASS [INPUT in EMAIL status] no constraint 
+PASS [INPUT in EMAIL status] no constraint (in a form) 
+PASS [INPUT in EMAIL status] suffering from being too long 
+PASS [INPUT in EMAIL status] suffering from being too long (in a form) 
+PASS [INPUT in EMAIL status] suffering from a pattern mismatch 
+PASS [INPUT in EMAIL status] suffering from a pattern mismatch (in a form) 
+PASS [INPUT in EMAIL status] suffering from a type mismatch 
+PASS [INPUT in EMAIL status] suffering from a type mismatch (in a form) 
+PASS [INPUT in EMAIL status] suffering from being missing 
+PASS [INPUT in EMAIL status] suffering from being missing (in a form) 
+FAIL [INPUT in DATETIME status] The datetime type must be supported. assert_equals: The datetime type should be supported. expected &quot;datetime&quot; but got &quot;text&quot;
+FAIL [INPUT in DATE status] The date type must be supported. assert_equals: The date type should be supported. expected &quot;date&quot; but got &quot;text&quot;
+FAIL [INPUT in MONTH status] The month type must be supported. assert_equals: The month type should be supported. expected &quot;month&quot; but got &quot;text&quot;
+FAIL [INPUT in WEEK status] The week type must be supported. assert_equals: The week type should be supported. expected &quot;week&quot; but got &quot;text&quot;
+FAIL [INPUT in TIME status] The time type must be supported. assert_equals: The time type should be supported. expected &quot;time&quot; but got &quot;text&quot;
+PASS [INPUT in NUMBER status] suffering from an overflow 
+PASS [INPUT in NUMBER status] suffering from an overflow (in a form) 
+PASS [INPUT in NUMBER status] suffering from an underflow 
+PASS [INPUT in NUMBER status] suffering from an underflow (in a form) 
+PASS [INPUT in NUMBER status] suffering from a step mismatch 
+PASS [INPUT in NUMBER status] suffering from a step mismatch (in a form) 
+PASS [INPUT in NUMBER status] suffering from being missing 
+PASS [INPUT in NUMBER status] suffering from being missing (in a form) 
+PASS [INPUT in CHECKBOX status] no constraint 
+PASS [INPUT in CHECKBOX status] no constraint (in a form) 
+PASS [INPUT in CHECKBOX status] suffering from being missing 
+PASS [INPUT in CHECKBOX status] suffering from being missing (in a form) 
+PASS [INPUT in RADIO status] no constraint 
+PASS [INPUT in RADIO status] no constraint (in a form) 
+PASS [INPUT in RADIO status] suffering from being missing 
+PASS [INPUT in RADIO status] suffering from being missing (in a form) 
+PASS [INPUT in FILE status] no constraint 
+PASS [INPUT in FILE status] no constraint (in a form) 
+PASS [INPUT in FILE status] suffering from being missing 
+PASS [INPUT in FILE status] suffering from being missing (in a form) 
+PASS [select]  no constraint 
+PASS [select]  no constraint (in a form) 
+PASS [select]  suffering from being missing 
+PASS [select]  suffering from being missing (in a form) 
+PASS [textarea]  no constraint 
+PASS [textarea]  no constraint (in a form) 
+PASS [textarea]  suffering from being missing 
+PASS [textarea]  suffering from being missing (in a form) 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationcheckValidityhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-checkValidity.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-checkValidity.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-checkValidity.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,145 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;The constraint validation API Test: element.checkValidity()&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-cva-checkvalidity&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-constraint-validation-api&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;support/validator.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  var testElements = [
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;text&quot;, &quot;search&quot;, &quot;tel&quot;, &quot;password&quot;],
+      testData: [
+        {conditions: {}, expected: true, name: &quot;[target] no constraint&quot;},
+        {conditions: {maxLength: &quot;4&quot;, value: &quot;abcdef&quot;}, expected: false, name: &quot;[target] suffering from being too long&quot;, dirty: true},
+        {conditions: {pattern: &quot;[A-Z]&quot;, value: &quot;abc&quot;}, expected: false, name: &quot;[target] suffering from a pattern mismatch&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;url&quot;],
+      testData: [
+        {conditions: {}, expected: true, name: &quot;[target] no constraint&quot;},
+        {conditions: {maxLength: &quot;20&quot;, value: &quot;http://www.example.com&quot;}, expected: false, name: &quot;[target] suffering from being too long&quot;, dirty: true},
+        {conditions: {pattern: &quot;http://www.example.com&quot;, value: &quot;http://www.example.net&quot;}, expected: false, name: &quot;[target] suffering from a pattern mismatch&quot;},
+        {conditions: {value: &quot;abc&quot;}, expected: false, name: &quot;[target] suffering from a type mismatch&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;email&quot;],
+      testData: [
+        {conditions: {}, expected: true, name: &quot;[target] no constraint&quot;},
+        {conditions: {maxLength: &quot;10&quot;, value: &quot;test@example.com&quot;}, expected: false, name: &quot;[target] suffering from being too long&quot;, dirty: true},
+        {conditions: {pattern: &quot;test@example.com&quot;, value: &quot;test@example.net&quot;}, expected: false, name: &quot;[target] suffering from a pattern mismatch&quot;},
+        {conditions: {value: &quot;abc&quot;}, expected: false, name: &quot;[target] suffering from a type mismatch&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;datetime&quot;],
+      testData: [
+        {conditions: {}, expected: true, name: &quot;[target] no constraint&quot;},
+        {conditions: {max: &quot;2000-01-01T12:00:00Z&quot;, value: &quot;2001-01-01T12:00:00Z&quot;}, expected: false, name: &quot;[target] suffering from an overflow&quot;},
+        {conditions: {min: &quot;2001-01-01T12:00:00Z&quot;, value: &quot;2000-01-01T12:00:00Z&quot;}, expected: false, name: &quot;[target] suffering from an underflow&quot;},
+        {conditions: {step: 2 * 60 * 1000, value: &quot;2001-01-01T12:03:00Z&quot;}, expected: false, name: &quot;[target] suffering from a step mismatch&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;date&quot;],
+      testData: [
+        {conditions: {}, expected: true, name: &quot;[target] no constraint&quot;},
+        {conditions: {max: &quot;2000-01-01&quot;, value: &quot;2001-01-01&quot;}, expected: false, name: &quot;[target] suffering from an overflow&quot;},
+        {conditions: {min: &quot;2001-01-01&quot;, value: &quot;2000-01-01&quot;}, expected: false, name: &quot;[target] suffering from an underflow&quot;},
+        {conditions: {step: 2 * 1 * 86400000, value: &quot;2001-01-03&quot;}, expected: false, name: &quot;[target] suffering from a step mismatch&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;month&quot;],
+      testData: [
+        {conditions: {}, expected: true, name: &quot;[target] no constraint&quot;},
+        {conditions: {max: &quot;2000-01&quot;, value: &quot;2001-01&quot;}, expected: false, name: &quot;[target] suffering from an overflow&quot;},
+        {conditions: {min: &quot;2001-01&quot;, value: &quot;2000-01&quot;}, expected: false, name: &quot;[target] suffering from an underflow&quot;},
+        {conditions: {step: 2 * 1 * 1, value: &quot;2001-03&quot;}, expected: false, name: &quot;[target] suffering from a step mismatch&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;week&quot;],
+      testData: [
+        {conditions: {}, expected: true, name: &quot;[target] no constraint&quot;},
+        {conditions: {max: &quot;2000-W01&quot;, value: &quot;2001-W01&quot;}, expected: false, name: &quot;[target] suffering from an overflow&quot;},
+        {conditions: {min: &quot;2001-W01&quot;, value: &quot;2000-W01&quot;}, expected: false, name: &quot;[target] suffering from an underflow&quot;},
+        {conditions: {step: 2 * 1 * 604800000, value: &quot;2001-W03&quot;}, expected: false, name: &quot;[target] suffering from a step mismatch&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;time&quot;],
+      testData: [
+        {conditions: {}, expected: true, name: &quot;[target] no constraint&quot;},
+        {conditions: {max: &quot;12:00:00&quot;, value: &quot;13:00:00&quot;}, expected: false, name: &quot;[target] suffering from an overflow&quot;},
+        {conditions: {min: &quot;12:00:00&quot;, value: &quot;11:00:00&quot;}, expected: false, name: &quot;[target] suffering from an underflow&quot;},
+        {conditions: {step: 2 * 60 * 1000, value: &quot;12:03:00&quot;}, expected: false, name: &quot;[target] suffering from a step mismatch&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;number&quot;],
+      testData: [
+        {conditions: {max: &quot;5&quot;, value: &quot;6&quot;}, expected: false, name: &quot;[target] suffering from an overflow&quot;},
+        {conditions: {min: &quot;5&quot;, value: &quot;4&quot;}, expected: false, name: &quot;[target] suffering from an underflow&quot;},
+        {conditions: {step: 2 * 1 * 1, value: &quot;3&quot;}, expected: false, name: &quot;[target] suffering from a step mismatch&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;checkbox&quot;, &quot;radio&quot;],
+      testData: [
+        {conditions: {}, expected: true, name: &quot;[target] no constraint&quot;},
+        {conditions: {required: true, checked: false, name: &quot;test1&quot;}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;file&quot;],
+      testData: [
+        {conditions: {}, expected: true, name: &quot;[target] no constraint&quot;},
+        {conditions: {required: true, files: null}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    },
+    {
+      tag: &quot;select&quot;,
+      types: [],
+      testData: [
+        {conditions: {}, expected: true, name: &quot;[target] no constraint&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    },
+    {
+      tag: &quot;textarea&quot;,
+      types: [],
+      testData: [
+        {conditions: {}, expected: true, name: &quot;[target] no constraint&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    }
+  ];
+
+  validator.run_test(testElements, &quot;checkValidity&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationreportValidityexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-reportValidity-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-reportValidity-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-reportValidity-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,88 @@
</span><ins>+
+
+FAIL [INPUT in TEXT status] no constraint assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in TEXT status] no constraint (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in TEXT status] suffering from being too long assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in TEXT status] suffering from being too long (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in TEXT status] suffering from a pattern mismatch assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in TEXT status] suffering from a pattern mismatch (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in TEXT status] suffering from being missing assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in TEXT status] suffering from being missing (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in SEARCH status] no constraint assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in SEARCH status] no constraint (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in SEARCH status] suffering from being too long assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in SEARCH status] suffering from being too long (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in SEARCH status] suffering from a pattern mismatch assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in SEARCH status] suffering from a pattern mismatch (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in SEARCH status] suffering from being missing assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in SEARCH status] suffering from being missing (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in TEL status] no constraint assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in TEL status] no constraint (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in TEL status] suffering from being too long assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in TEL status] suffering from being too long (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in TEL status] suffering from a pattern mismatch assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in TEL status] suffering from a pattern mismatch (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in TEL status] suffering from being missing assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in TEL status] suffering from being missing (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in PASSWORD status] no constraint assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in PASSWORD status] no constraint (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in PASSWORD status] suffering from being too long assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in PASSWORD status] suffering from being too long (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in PASSWORD status] suffering from a pattern mismatch assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in PASSWORD status] suffering from a pattern mismatch (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in PASSWORD status] suffering from being missing assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in PASSWORD status] suffering from being missing (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in URL status] no constraint assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in URL status] no constraint (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in URL status] suffering from being too long assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in URL status] suffering from being too long (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in URL status] suffering from a pattern mismatch assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in URL status] suffering from a pattern mismatch (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in URL status] suffering from a type mismatch assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in URL status] suffering from a type mismatch (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in URL status] suffering from being missing assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in URL status] suffering from being missing (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in EMAIL status] no constraint assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in EMAIL status] no constraint (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in EMAIL status] suffering from being too long assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in EMAIL status] suffering from being too long (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in EMAIL status] suffering from a pattern mismatch assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in EMAIL status] suffering from a pattern mismatch (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in EMAIL status] suffering from a type mismatch assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in EMAIL status] suffering from a type mismatch (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in EMAIL status] suffering from being missing assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in EMAIL status] suffering from being missing (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in DATETIME status] The datetime type must be supported. assert_equals: The datetime type should be supported. expected &quot;datetime&quot; but got &quot;text&quot;
+FAIL [INPUT in DATE status] The date type must be supported. assert_equals: The date type should be supported. expected &quot;date&quot; but got &quot;text&quot;
+FAIL [INPUT in MONTH status] The month type must be supported. assert_equals: The month type should be supported. expected &quot;month&quot; but got &quot;text&quot;
+FAIL [INPUT in WEEK status] The week type must be supported. assert_equals: The week type should be supported. expected &quot;week&quot; but got &quot;text&quot;
+FAIL [INPUT in TIME status] The time type must be supported. assert_equals: The time type should be supported. expected &quot;time&quot; but got &quot;text&quot;
+FAIL [INPUT in NUMBER status] suffering from an overflow assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in NUMBER status] suffering from an overflow (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in NUMBER status] suffering from an underflow assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in NUMBER status] suffering from an underflow (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in NUMBER status] suffering from a step mismatch assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in NUMBER status] suffering from a step mismatch (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in NUMBER status] suffering from being missing assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in NUMBER status] suffering from being missing (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in CHECKBOX status] no constraint assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in CHECKBOX status] no constraint (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in CHECKBOX status] suffering from being missing assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in CHECKBOX status] suffering from being missing (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in RADIO status] no constraint assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in RADIO status] no constraint (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in RADIO status] suffering from being missing assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in RADIO status] suffering from being missing (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in FILE status] no constraint assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in FILE status] no constraint (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in FILE status] suffering from being missing assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [INPUT in FILE status] suffering from being missing (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [select]  no constraint assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [select]  no constraint (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [select]  suffering from being missing assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [select]  suffering from being missing (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [textarea]  no constraint assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [textarea]  no constraint (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [textarea]  suffering from being missing assert_true: The reportValidity method doesn't exist. expected true got false
+FAIL [textarea]  suffering from being missing (in a form) assert_true: The reportValidity method doesn't exist. expected true got false
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationreportValidityhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-reportValidity.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-reportValidity.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-reportValidity.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,145 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;The constraint validation API Test: element.reportValidity()&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-cva-reportvalidity&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-constraint-validation-api&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;support/validator.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  var testElements = [
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;text&quot;, &quot;search&quot;, &quot;tel&quot;, &quot;password&quot;],
+      testData: [
+        {conditions: {}, expected: true, name: &quot;[target] no constraint&quot;},
+        {conditions: {maxLength: &quot;4&quot;, value: &quot;abcdef&quot;}, expected: false, name: &quot;[target] suffering from being too long&quot;, dirty: true},
+        {conditions: {pattern: &quot;[A-Z]&quot;, value: &quot;abc&quot;}, expected: false, name: &quot;[target] suffering from a pattern mismatch&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;url&quot;],
+      testData: [
+        {conditions: {}, expected: true, name: &quot;[target] no constraint&quot;},
+        {conditions: {maxLength: &quot;20&quot;, value: &quot;http://www.example.com&quot;}, expected: false, name: &quot;[target] suffering from being too long&quot;, dirty: true},
+        {conditions: {pattern: &quot;http://www.example.com&quot;, value: &quot;http://www.example.net&quot;}, expected: false, name: &quot;[target] suffering from a pattern mismatch&quot;},
+        {conditions: {value: &quot;abc&quot;}, expected: false, name: &quot;[target] suffering from a type mismatch&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;email&quot;],
+      testData: [
+        {conditions: {}, expected: true, name: &quot;[target] no constraint&quot;},
+        {conditions: {maxLength: &quot;10&quot;, value: &quot;test@example.com&quot;}, expected: false, name: &quot;[target] suffering from being too long&quot;, dirty: true},
+        {conditions: {pattern: &quot;test@example.com&quot;, value: &quot;test@example.net&quot;}, expected: false, name: &quot;[target] suffering from a pattern mismatch&quot;},
+        {conditions: {value: &quot;abc&quot;}, expected: false, name: &quot;[target] suffering from a type mismatch&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;datetime&quot;],
+      testData: [
+        {conditions: {}, expected: true, name: &quot;[target] no constraint&quot;},
+        {conditions: {max: &quot;2000-01-01T12:00:00Z&quot;, value: &quot;2001-01-01T12:00:00Z&quot;}, expected: false, name: &quot;[target] suffering from an overflow&quot;},
+        {conditions: {min: &quot;2001-01-01T12:00:00Z&quot;, value: &quot;2000-01-01T12:00:00Z&quot;}, expected: false, name: &quot;[target] suffering from an underflow&quot;},
+        {conditions: {step: 2 * 60 * 1000, value: &quot;2001-01-01T12:03:00Z&quot;}, expected: false, name: &quot;[target] suffering from a step mismatch&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;date&quot;],
+      testData: [
+        {conditions: {}, expected: true, name: &quot;[target] no constraint&quot;},
+        {conditions: {max: &quot;2000-01-01&quot;, value: &quot;2001-01-01&quot;}, expected: false, name: &quot;[target] suffering from an overflow&quot;},
+        {conditions: {min: &quot;2001-01-01&quot;, value: &quot;2000-01-01&quot;}, expected: false, name: &quot;[target] suffering from an underflow&quot;},
+        {conditions: {step: 2 * 1 * 86400000, value: &quot;2001-01-03&quot;}, expected: false, name: &quot;[target] suffering from a step mismatch&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;month&quot;],
+      testData: [
+        {conditions: {}, expected: true, name: &quot;[target] no constraint&quot;},
+        {conditions: {max: &quot;2000-01&quot;, value: &quot;2001-01&quot;}, expected: false, name: &quot;[target] suffering from an overflow&quot;},
+        {conditions: {min: &quot;2001-01&quot;, value: &quot;2000-01&quot;}, expected: false, name: &quot;[target] suffering from an underflow&quot;},
+        {conditions: {step: 2 * 1 * 1, value: &quot;2001-03&quot;}, expected: false, name: &quot;[target] suffering from a step mismatch&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;week&quot;],
+      testData: [
+        {conditions: {}, expected: true, name: &quot;[target] no constraint&quot;},
+        {conditions: {max: &quot;2000-W01&quot;, value: &quot;2001-W01&quot;}, expected: false, name: &quot;[target] suffering from an overflow&quot;},
+        {conditions: {min: &quot;2001-W01&quot;, value: &quot;2000-W01&quot;}, expected: false, name: &quot;[target] suffering from an underflow&quot;},
+        {conditions: {step: 2 * 1 * 604800000, value: &quot;2001-W03&quot;}, expected: false, name: &quot;[target] suffering from a step mismatch&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;time&quot;],
+      testData: [
+        {conditions: {}, expected: true, name: &quot;[target] no constraint&quot;},
+        {conditions: {max: &quot;12:00:00&quot;, value: &quot;13:00:00&quot;}, expected: false, name: &quot;[target] suffering from an overflow&quot;},
+        {conditions: {min: &quot;12:00:00&quot;, value: &quot;11:00:00&quot;}, expected: false, name: &quot;[target] suffering from an underflow&quot;},
+        {conditions: {step: 2 * 60 * 1000, value: &quot;12:03:00&quot;}, expected: false, name: &quot;[target] suffering from a step mismatch&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;number&quot;],
+      testData: [
+        {conditions: {max: &quot;5&quot;, value: &quot;6&quot;}, expected: false, name: &quot;[target] suffering from an overflow&quot;},
+        {conditions: {min: &quot;5&quot;, value: &quot;4&quot;}, expected: false, name: &quot;[target] suffering from an underflow&quot;},
+        {conditions: {step: 2 * 1 * 1, value: &quot;3&quot;}, expected: false, name: &quot;[target] suffering from a step mismatch&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;checkbox&quot;, &quot;radio&quot;],
+      testData: [
+        {conditions: {}, expected: true, name: &quot;[target] no constraint&quot;},
+        {conditions: {required: true, checked: false, name: &quot;test1&quot;}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;file&quot;],
+      testData: [
+        {conditions: {}, expected: true, name: &quot;[target] no constraint&quot;},
+        {conditions: {required: true, files: null}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    },
+    {
+      tag: &quot;select&quot;,
+      types: [],
+      testData: [
+        {conditions: {}, expected: true, name: &quot;[target] no constraint&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    },
+    {
+      tag: &quot;textarea&quot;,
+      types: [],
+      testData: [
+        {conditions: {}, expected: true, name: &quot;[target] no constraint&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] suffering from being missing&quot;}
+      ]
+    }
+  ];
+
+  validator.run_test(testElements, &quot;reportValidity&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvalidateexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validate-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validate-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validate-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+
+PASS If there is any invalid submittable element whose form owner is the form, the form.checkValidity must be false 
+FAIL If there is any invalid submittable element whose form owner is the form, the form.reportValidity must be false assert_true: The reportValidity method is not supported expected true got false
+PASS If all of the submittable elements whose form owner is the form are valid, the form.checkValidity must be true 
+FAIL If all of the submittable elements whose form owner is the form are valid, the form.reportValidity must be true assert_true: The reportValidity method is not supported. expected true got false
+PASS Check the checkValidity method of the form element when it has a fieldset child 
+FAIL Check the reportValidity method of the form element when it has a fieldset child assert_true: The reportValidity method is not supported. expected true got false
+FAIL The invalid event must be fired at the invalid controls assert_equals: The invalid event will be fired if the checkValidity or reportValidity method are called. expected 4 but got 2
+PASS The invalid event must not be fired at the invalid controls 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvalidatehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validate.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validate.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validate.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,122 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;Constraint validation&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#constraint-validation&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;form id=&quot;fm1&quot; style=&quot;display:none&quot;&gt;
+  &lt;fieldset id=&quot;test0&quot;&gt;
+    &lt;input type=&quot;text&quot; required value=&quot;&quot; id=&quot;test1&quot;&gt;
+  &lt;/fieldset&gt;
+  &lt;input type=&quot;email&quot; value=&quot;abc&quot; id=&quot;test2&quot;&gt;
+  &lt;button id=&quot;test3&quot;&gt;TEST&lt;/button&gt;
+  &lt;select id=&quot;test4&quot;&gt;&lt;/select&gt;
+  &lt;textarea id=&quot;test5&quot;&gt;&lt;/textarea&gt;
+  &lt;output id=&quot;test6&quot;&gt;&lt;/output&gt;
+&lt;/form&gt;
+&lt;form id=&quot;fm2&quot; style=&quot;display:none&quot;&gt;
+  &lt;fieldset&gt;
+    &lt;input type=&quot;text&quot; required value=&quot;abc&quot;&gt;
+  &lt;/fieldset&gt;
+  &lt;input type=&quot;email&quot; value=&quot;test@example.com&quot;&gt;
+  &lt;button&gt;TEST&lt;/button&gt;
+  &lt;select&gt;&lt;/select&gt;
+  &lt;textarea&gt;&lt;/textarea&gt;
+  &lt;output&gt;&lt;/output&gt;
+&lt;/form&gt;
+&lt;form id=&quot;fm3&quot;  style=&quot;display:none&quot;&gt;
+  &lt;fieldset id=&quot;fs&quot;&gt;
+    &lt;legend&gt;&lt;input type=&quot;text&quot; id=&quot;inp1&quot;&gt;&lt;/legend&gt;
+    &lt;input type=&quot;text&quot; required value=&quot;&quot; id=&quot;inp2&quot;&gt;
+  &lt;/fieldset&gt;
+&lt;/form&gt;
+
+&lt;script&gt;
+  var cancelable = true,
+      times1 = 0,
+      times2 = 0,
+      invalidList1 = [],
+      invalidList2 = [],
+      test1,
+      test2,
+      fm1,
+      fm2,
+      fm3;
+
+  setup(function () {
+    fm1 = document.getElementById(&quot;fm1&quot;);
+    fm2 = document.getElementById(&quot;fm2&quot;);
+    fm3 = document.getElementById(&quot;fm3&quot;);
+    test1 = document.getElementById(&quot;test1&quot;);
+    test2 = document.getElementById(&quot;test2&quot;);
+    for (var index = 0; index &lt; fm1.elements.length; index++) {
+      var ele = fm1.elements.item(index);
+      ele.addEventListener(&quot;invalid&quot;, function (e) {
+        times1++;
+        invalidList1.push(e.target);
+        if (!e.cancelable)
+          cancelable = e.cancelable;
+      }, false);
+    }
+
+    for (var index = 0; index &lt; fm1.elements.length; index++) {
+      var ele = fm2.elements.item(index);
+      ele.addEventListener(&quot;invalid&quot;, function (e) {
+        times2++;
+        invalidList2.push(ele);
+      }, false);
+    }
+  });
+
+  test(function(){
+    assert_false(fm1.checkValidity(), &quot;The checkValidity method should be false.&quot;);
+  }, &quot;If there is any invalid submittable element whose form owner is the form, the form.checkValidity must be false&quot;);
+
+  test(function(){
+    assert_true(&quot;reportValidity&quot; in fm1, &quot;The reportValidity method is not supported&quot;);
+    assert_false(fm1.reportValidity(), &quot;The reportValidity method should be false.&quot;);
+  }, &quot;If there is any invalid submittable element whose form owner is the form, the form.reportValidity must be false&quot;);
+
+  test(function(){
+    assert_true(fm2.checkValidity(), &quot;The checkValidity method should be true.&quot;);
+  }, &quot;If all of the submittable elements whose form owner is the form are valid, the form.checkValidity must be true&quot;);
+
+  test(function(){
+    assert_true(&quot;reportValidity&quot; in fm2, &quot;The reportValidity method is not supported.&quot;);
+    assert_true(fm2.reportValidity(), &quot;The reportValidity method should be true.&quot;);
+  }, &quot;If all of the submittable elements whose form owner is the form are valid, the form.reportValidity must be true&quot;);
+
+  test(function(){
+    assert_false(fm3.checkValidity(), &quot;The checkValidity method should be false.&quot;);
+    document.getElementById(&quot;fs&quot;).disabled = true;
+    assert_true(fm3.checkValidity(), &quot;The checkValidity method should be true.&quot;);
+
+    document.getElementById(&quot;inp1&quot;).value = &quot;aaa&quot;;
+    document.getElementById(&quot;inp1&quot;).type = &quot;url&quot;;
+    assert_false(fm3.checkValidity(), &quot;The checkValidity method should be false.&quot;);
+  }, &quot;Check the checkValidity method of the form element when it has a fieldset child&quot;);
+
+  test(function(){
+    assert_true(&quot;reportValidity&quot; in fm3, &quot;The reportValidity method is not supported.&quot;);
+    assert_false(fm3.reportValidity(), &quot;The reportValidity method should be false.&quot;);
+    document.getElementById(&quot;fs&quot;).disabled = true;
+    assert_true(fm3.reportValidity(), &quot;The reportValidity method should be true.&quot;);
+
+    document.getElementById(&quot;inp1&quot;).value = &quot;aaa&quot;;
+    document.getElementById(&quot;inp1&quot;).type = &quot;url&quot;;
+    assert_false(fm3.reportValidity(), &quot;The reportValidity method should be false.&quot;);
+  }, &quot;Check the reportValidity method of the form element when it has a fieldset child&quot;);
+
+  test(function () {
+    assert_equals(times1, 4, &quot;The invalid event will be fired if the checkValidity or reportValidity method are called.&quot;);
+    assert_array_equals(invalidList1, [test1, test2, test1, test2], &quot;The invalid event must be fired at the invalid control&quot;);
+    assert_true(cancelable, &quot;The invalid event is cancelable.&quot;);
+  }, &quot;The invalid event must be fired at the invalid controls&quot;);
+
+  test(function () {
+    assert_equals(times2, 0,  &quot;The invalid event should not be fired, times should be 0.&quot;);
+    assert_array_equals(invalidList2, [], &quot;The invalid event should not be fired, invalid list should be empty&quot;);
+  }, &quot;The invalid event must not be fired at the invalid controls&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditybadInputexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-badInput-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-badInput-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-badInput-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,12 @@
</span><ins>+
+
+PASS [INPUT in EMAIL status] The multiple attribute is false and the value attribute is empty 
+PASS [INPUT in EMAIL status] The multiple attribute is false and the value attribute is a valid e-mail address 
+PASS [INPUT in EMAIL status] The multiple attribute is true and the value contains valid e-mail addresses 
+PASS [INPUT in EMAIL status] The multiple attribute is true and the value attribute contains a ',' 
+FAIL [INPUT in DATETIME status] The datetime type must be supported. assert_equals: The datetime type should be supported. expected &quot;datetime&quot; but got &quot;text&quot;
+FAIL [INPUT in COLOR status] The value attribute is empty assert_true: The validity.badInput should be true. expected true got false
+PASS [INPUT in COLOR status] The value attribute is a valid sample color 
+PASS [INPUT in COLOR status] The value attribute is not a valid lowercase sample color 
+FAIL [INPUT in COLOR status] The value attribute cannot convert to a valid sample color assert_true: The validity.badInput should be true. expected true got false
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditybadInputhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-badInput.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-badInput.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-badInput.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,46 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;The constraint validation API Test: element.validity.badInput&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/multipage/association-of-controls-and-forms.html#suffering-from-bad-input&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/multipage/the-button-element.html#the-constraint-validation-api&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;support/validator.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+var testElements = [
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;email&quot;],
+      testData: [
+        {conditions: {multiple: false, value: &quot;&quot;}, expected: false, name: &quot;[target] The multiple attribute is false and the value attribute is empty&quot;},
+        {conditions: {multiple: false, value: &quot;test1@example.com&quot;}, expected: false, name: &quot;[target] The multiple attribute is false and the value attribute is a valid e-mail address&quot;},
+        {conditions: {multiple: true, value: &quot;test1@example.com,test2@eample.com&quot;}, expected: false, name: &quot;[target] The multiple attribute is true and the value contains valid e-mail addresses&quot;},
+        {conditions: {multiple: true, value: &quot;test,1@example.com&quot;}, expected: false, name: &quot;[target] The multiple attribute is true and the value attribute contains a ','&quot;}
+        //TODO, the value contains characters that cannot be converted to punycode.
+        //Can not find a character that cannot be converted to punycode.
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;datetime&quot;],
+      testData: [
+        {conditions: {value: &quot;&quot;}, expected: false, name: &quot;[target] The value attribute is empty&quot;},
+        {conditions: {value: &quot;2000-01-01T12:00:00Z&quot;}, expected: false, name: &quot;[target] The value attribute is a valid date and time string&quot;},
+        {conditions: {value: &quot;abc&quot;}, expected: true, name: &quot;[target] The value attribute cannot convert to a valid normalized forced-UTC global date and time string&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;color&quot;],
+      testData: [
+        {conditions: {value: &quot;&quot;}, expected: true, name: &quot;[target] The value attribute is empty&quot;},
+        {conditions: {value: &quot;#000000&quot;}, expected: false, name: &quot;[target] The value attribute is a valid sample color&quot;},
+        {conditions: {value: &quot;#FFFFFF&quot;}, expected: false, name: &quot;[target] The value attribute is not a valid lowercase sample color&quot;},
+        {conditions: {value: &quot;abc&quot;}, expected: true, name: &quot;[target] The value attribute cannot convert to a valid sample color&quot;}
+      ]
+    },
+  ];
+  validator.run_test (testElements, &quot;badInput&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditycustomErrorexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-customError-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-customError-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-customError-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,11 @@
</span><ins>+
+
+PASS [input]  The validity.customError must be true if the custom validity error message is not empty 
+PASS [input]  The validity.customError must be false if the custom validity error message is empty 
+PASS [button]  The validity.customError must be true if the custom validity error message is not empty 
+PASS [button]  The validity.customError must be false if the custom validity error message is empty 
+PASS [select]  The validity.customError must be true if the custom validity error message is not empty 
+PASS [select]  The validity.customError must be false i the custom validity error message is empty 
+PASS [textarea]  The validity.customError must be true if the custom validity error message is not empty 
+PASS [textarea]  The validity.customError must be false if the custom validity error message is empty 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditycustomErrorhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-customError.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-customError.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-customError.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,48 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;The constraint validation API Test: element.validity.customError&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-validitystate-customerror&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-constraint-validation-api&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;support/validator.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+var testElements = [
+    {
+      tag: &quot;input&quot;,
+      types: [],
+      testData: [
+        {conditions: {message: &quot;My custom error&quot;}, expected: true, name: &quot;[target] The validity.customError must be true if the custom validity error message is not empty&quot;},
+        {conditions: {message: &quot;&quot;}, expected: false, name: &quot;[target] The validity.customError must be false if the custom validity error message is empty&quot;}
+      ]
+    },
+    {
+      tag: &quot;button&quot;,
+      types: [],
+      testData: [
+        {conditions: {message: &quot;My custom error&quot;}, expected: true, name: &quot;[target] The validity.customError must be true if the custom validity error message is not empty&quot;},
+        {conditions: {message: &quot;&quot;}, expected: false, name: &quot;[target] The validity.customError must be false if the custom validity error message is empty&quot;}
+      ]
+    },
+    {
+      tag: &quot;select&quot;,
+      types: [],
+      testData: [
+        {conditions: {message: &quot;My custom error&quot;}, expected: true, name: &quot;[target] The validity.customError must be true if the custom validity error message is not empty&quot;},
+        {conditions: {message: &quot;&quot;}, expected: false, name: &quot;[target] The validity.customError must be false i the custom validity error message is empty&quot;}
+      ]
+    },
+    {
+      tag: &quot;textarea&quot;,
+      types: [],
+      testData: [
+        {conditions: {message: &quot;My custom error&quot;}, expected: true, name: &quot;[target] The validity.customError must be true if the custom validity error message is not empty&quot;},
+        {conditions: {message: &quot;&quot;}, expected: false, name: &quot;[target] The validity.customError must be false if the custom validity error message is empty&quot;}
+      ]
+    }
+  ]
+
+  validator.run_test(testElements, &quot;customError&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditypatternMismatchexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-patternMismatch-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-patternMismatch-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-patternMismatch-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,33 @@
</span><ins>+
+
+PASS [INPUT in TEXT status] The pattern attribute is not set 
+PASS [INPUT in TEXT status] The value attibute is empty string 
+PASS [INPUT in TEXT status] The value attribute matches the pattern attribute 
+PASS [INPUT in TEXT status] The value(ABC) in unicode attribute matches the pattern attribute 
+PASS [INPUT in TEXT status] The value attribute mismatches the pattern attribute 
+PASS [INPUT in SEARCH status] The pattern attribute is not set 
+PASS [INPUT in SEARCH status] The value attibute is empty string 
+PASS [INPUT in SEARCH status] The value attribute matches the pattern attribute 
+PASS [INPUT in SEARCH status] The value(ABC) in unicode attribute matches the pattern attribute 
+PASS [INPUT in SEARCH status] The value attribute mismatches the pattern attribute 
+PASS [INPUT in TEL status] The pattern attribute is not set 
+PASS [INPUT in TEL status] The value attibute is empty string 
+PASS [INPUT in TEL status] The value attribute matches the pattern attribute 
+PASS [INPUT in TEL status] The value(ABC) in unicode attribute matches the pattern attribute 
+PASS [INPUT in TEL status] The value attribute mismatches the pattern attribute 
+PASS [INPUT in URL status] The pattern attribute is not set 
+PASS [INPUT in URL status] The value attibute is empty string 
+PASS [INPUT in URL status] The value attribute matches the pattern attribute 
+PASS [INPUT in URL status] The value(ABC) in unicode attribute matches the pattern attribute 
+PASS [INPUT in URL status] The value attribute mismatches the pattern attribute 
+PASS [INPUT in EMAIL status] The pattern attribute is not set 
+PASS [INPUT in EMAIL status] The value attibute is empty string 
+PASS [INPUT in EMAIL status] The value attribute matches the pattern attribute 
+PASS [INPUT in EMAIL status] The value(ABC) in unicode attribute matches the pattern attribute 
+PASS [INPUT in EMAIL status] The value attribute mismatches the pattern attribute 
+PASS [INPUT in PASSWORD status] The pattern attribute is not set 
+PASS [INPUT in PASSWORD status] The value attibute is empty string 
+PASS [INPUT in PASSWORD status] The value attribute matches the pattern attribute 
+PASS [INPUT in PASSWORD status] The value(ABC) in unicode attribute matches the pattern attribute 
+PASS [INPUT in PASSWORD status] The value attribute mismatches the pattern attribute 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditypatternMismatchhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-patternMismatch.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-patternMismatch.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-patternMismatch.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,27 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;The constraint validation API Test: element.validity.patternMismatch&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-validitystate-patternmismatch&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-constraint-validation-api&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;support/validator.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  var testElements = [
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;text&quot;, &quot;search&quot;, &quot;tel&quot;, &quot;url&quot;, &quot;email&quot;, &quot;password&quot;],
+      testData: [
+        {conditions: {pattern: null, value: &quot;abc&quot;}, expected: false, name: &quot;[target] The pattern attribute is not set&quot;},
+        {conditions: {pattern: &quot;[A-Z]+&quot;, value: &quot;&quot;}, expected: false, name: &quot;[target] The value attibute is empty string&quot;},
+        {conditions: {pattern: &quot;[A-Z]{1}&quot;, value: &quot;A&quot;}, expected: false, name: &quot;[target] The value attribute matches the pattern attribute&quot;},
+        {conditions: {pattern: &quot;[A-Z]+&quot;, value: &quot;\u0041\u0042\u0043&quot;}, expected: false, name: &quot;[target] The value(ABC) in unicode attribute matches the pattern attribute&quot;},
+        {conditions: {pattern: &quot;[a-z]{3,}&quot;, value: &quot;ABCD&quot;}, expected: true, name: &quot;[target] The value attribute mismatches the pattern attribute&quot;}
+      ]
+    }
+  ];
+
+  validator.run_test (testElements, &quot;patternMismatch&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvalidityrangeOverflowexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-rangeOverflow-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-rangeOverflow-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-rangeOverflow-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,17 @@
</span><ins>+
+
+FAIL [INPUT in DATETIME status] The datetime type must be supported. assert_equals: The datetime type should be supported. expected &quot;datetime&quot; but got &quot;text&quot;
+FAIL [INPUT in DATE status] The date type must be supported. assert_equals: The date type should be supported. expected &quot;date&quot; but got &quot;text&quot;
+FAIL [INPUT in MONTH status] The month type must be supported. assert_equals: The month type should be supported. expected &quot;month&quot; but got &quot;text&quot;
+FAIL [INPUT in WEEK status] The week type must be supported. assert_equals: The week type should be supported. expected &quot;week&quot; but got &quot;text&quot;
+FAIL [INPUT in TIME status] The time type must be supported. assert_equals: The time type should be supported. expected &quot;time&quot; but got &quot;text&quot;
+PASS [INPUT in NUMBER status] The max attribute is not set 
+PASS [INPUT in NUMBER status] Value is empty string 
+PASS [INPUT in NUMBER status] The max is greater than value(integer) 
+PASS [INPUT in NUMBER status] The max is greater than value(floating number) 
+PASS [INPUT in NUMBER status] The max equals to value 
+PASS [INPUT in NUMBER status] The value is not a number 
+PASS [INPUT in NUMBER status] The value is greater than max(integer) 
+PASS [INPUT in NUMBER status] The value is greater than max(floating number) 
+PASS [INPUT in NUMBER status] The value is greater than max(scientific notation) 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvalidityrangeOverflowhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-rangeOverflow.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-rangeOverflow.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-rangeOverflow.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,116 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;The constraint validation API Test: element.validity.rangeOverflow&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-validitystate-rangeoverflow&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-constraint-validation-api&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;support/validator.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  var testElements = [
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;datetime&quot;],
+      testData: [
+        {conditions: {max: &quot;&quot;, value: &quot;2000-01-01T12:00:00Z&quot;}, expected: false, name: &quot;[target] The max attribute is not set&quot;},
+        {conditions: {max: &quot;2000-01-01T12:00:00Z&quot;, value: &quot;&quot;}, expected: false, name: &quot;[target] Value is empty string&quot;},
+        {conditions: {max: &quot;2000-01-01  12:00:00Z&quot;, value: &quot;2001-01-01T12:00:00Z&quot;}, expected: false, name: &quot;[target] The max attribute is an invalid global date time string&quot;},
+        {conditions: {max: &quot;2000-01-01T12:00:00Z&quot;, value: &quot;2000-01-01T11:00:00Z&quot;}, expected: false, name: &quot;[target] The max attribute is greater than the value attribute&quot;},
+        {conditions: {max: &quot;2000-01-01T23:59:59Z&quot;, value: &quot;2001-01-01T24:00:00Z&quot;}, expected: false, name: &quot;[target] The value is an invalid datetime string(hour is greater than 23)&quot;},
+        {conditions: {max: &quot;1970-01-01T12:00Z&quot;, value: &quot;80-01-01T12:00Z&quot;}, expected: false, name: &quot;[target] The value if an invalid date time string(year is two digits)&quot;},
+        {conditions: {max: &quot;2000-01-01T12:00:00Z&quot;, value: &quot;2001-01-01T13:00:00Z&quot;}, expected: true, name: &quot;[target] The value is greater than max&quot;},
+        {conditions: {max: &quot;2000-01-01T12:00:00.1Z&quot;, value: &quot;2000-01-01T12:00:00.2Z&quot;}, expected: true, name: &quot;[target] The value is greater than max(with millisecond in 1 digit)&quot;},
+        {conditions: {max: &quot;2000-01-01T12:00:00.01Z&quot;, value: &quot;2000-01-01T12:00:00.02Z&quot;}, expected: true, name: &quot;[target] The value is greater than max(with millisecond in 2 digits)&quot;},
+        {conditions: {max: &quot;2000-01-01T12:00:00.001Z&quot;, value: &quot;2000-01-01T12:00:00.002Z&quot;}, expected: true, name: &quot;[target] The value is greater than max(with millisecond in 3 digits)&quot;},
+        {conditions: {max: &quot;2000-01-01T12:00:00&quot;, value: &quot;10000-01-01T12:00:00&quot;}, expected: true, name: &quot;[target] The value is greater than max(Year is 10000 should be valid)&quot;},
+        {conditions: {max: &quot;8592-01-01T02:09+02:09&quot;, value: &quot;8593-01-01T02:09+02:09&quot;}, expected: true, name: &quot;[target] The value is greater than max(with timezone)&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;date&quot;],
+      testData: [
+        {conditions: {max: &quot;&quot;, value: &quot;2000-01-01&quot;}, expected: false, name: &quot;[target] The max attribute is not set&quot;},
+        {conditions: {max: &quot;2000-01-01&quot;, value: &quot;&quot;}, expected: false, name: &quot;[target] Value is empty string&quot;},
+        {conditions: {max: &quot;2000/01/01&quot;, value: &quot;2002-01-01&quot;}, expected: false, name: &quot;[target] The max attribute is an invalid date&quot;},
+        {conditions: {max: &quot;2000-01-01&quot;, value: &quot;2000-2-2&quot;}, expected: false, name: &quot;[target] The value attribute is an invalid date&quot;},
+        {conditions: {max: &quot;987-01-01&quot;, value: &quot;988-01-01&quot;}, expected: false, name: &quot;[target] The value is an invalid date(year is three digits)&quot;},
+        {conditions: {max: &quot;2000-01-01&quot;, value: &quot;2000-13-01&quot;}, expected: false, name: &quot;[target] The value is an invalid date(month is greater than 12)&quot;},
+        {conditions: {max: &quot;2000-01-01&quot;, value: &quot;2000-02-30&quot;}, expected: false, name: &quot;[target] The value is an invalid date(date is greater than 29 for Feb)&quot;},
+        {conditions: {max: &quot;2000-12-01&quot;, value: &quot;2000-01-01&quot;}, expected: false, name: &quot;[target] The max attribute is greater than value attribute&quot;},
+        {conditions: {max: &quot;2000-12-01&quot;, value: &quot;2001-01-01&quot;}, expected: true, name: &quot;[target] The value attribute is greater than max attribute&quot;},
+        {conditions: {max: &quot;9999-01-01&quot;, value: &quot;10000-01-01&quot;}, expected: true, name: &quot;[target] The value attribute is greater than max attribute(Year is 10000 should be valid)&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;month&quot;],
+      testData: [
+        {conditions: {max: &quot;&quot;, value: &quot;2000-01&quot;}, expected: false, name: &quot;[target] The max attribute is not set&quot;},
+        {conditions: {max: &quot;2000-01&quot;, value: &quot;&quot;}, expected: false, name: &quot;[target] Value is empty string&quot;},
+        {conditions: {max: &quot;2000/01&quot;, value: &quot;2001-02&quot;}, expected: false, name: &quot;[target] The max attribute is an invalid month string&quot;},
+        {conditions: {max: &quot;2000-01&quot;, value: &quot;2000-1&quot;}, expected: false, name: &quot;[target] The value attribute is an invalid month string&quot;},
+        {conditions: {max: &quot;987-01&quot;, value: &quot;988-01&quot;}, expected: false, name: &quot;[target] The value is an invalid month string(year is three digits)&quot;},
+        {conditions: {max: &quot;2000-01&quot;, value: &quot;2000-13&quot;}, expected: false, name: &quot;[target] The value is an invalid month string(month is greater than 12)&quot;},
+        {conditions: {max: &quot;2000-12&quot;, value: &quot;2000-01&quot;}, expected: false, name: &quot;[target] The max attribute is greater than value attribute&quot;},
+        {conditions: {max: &quot;2000-01&quot;, value: &quot;2000-12&quot;}, expected: true, name: &quot;[target] The value attribute is greater than max attribute&quot;},
+        {conditions: {max: &quot;9999-01&quot;, value: &quot;10000-01&quot;}, expected: true, name: &quot;[target] The value attribute is greater than max attribute(Year is 10000 should be valid)&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;week&quot;],
+      testData: [
+        {conditions: {max: &quot;&quot;, value: &quot;2000-W01&quot;}, expected: false, name: &quot;[target] The max attribute is not set&quot;},
+        {conditions: {max: &quot;2000-W01&quot;, value: &quot;&quot;}, expected: false, name: &quot;[target] Value is empty string&quot;},
+        {conditions: {max: &quot;2000/W01&quot;, value: &quot;2001-W02&quot;}, expected: false, name: &quot;[target] The max attribute is an invalid week string&quot;},
+        {conditions: {max: &quot;2000-W01&quot;, value: &quot;2000-W2&quot;}, expected: false, name: &quot;[target] The value attribute is an invalid week string&quot;},
+        {conditions: {max: &quot;2000-W01&quot;, value: &quot;2000-w02&quot;}, expected: false, name: &quot;[target] The value attribute is an invalid week string(w is in lowercase)&quot;},
+        {conditions: {max: &quot;987-W01&quot;, value: &quot;988-W01&quot;}, expected: false, name: &quot;[target] The value is an invalid week string(year is three digits)&quot;},
+        {conditions: {max: &quot;2000-W01&quot;, value: &quot;2000-W57&quot;}, expected: false, name: &quot;[target] The value is an invalid week string(week is too greater)&quot;},
+        {conditions: {max: &quot;2000-W12&quot;, value: &quot;2000-W01&quot;}, expected: false, name: &quot;[target] The max attribute is greater than value attribute&quot;},
+        {conditions: {max: &quot;2000-W01&quot;, value: &quot;2000-W12&quot;}, expected: true, name: &quot;[target] The value attribute is greater than max attribute&quot;},
+        {conditions: {max: &quot;9999-W01&quot;, value: &quot;10000-W01&quot;}, expected: true, name: &quot;[target] The value attribute is greater than max attribute(Year is 10000 should be valid)&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;time&quot;],
+      testData: [
+        {conditions: {max: &quot;&quot;, value: &quot;12:00:00&quot;}, expected: false, name: &quot;[target] The max attribute is not set&quot;},
+        {conditions: {max: &quot;12:00:00&quot;, value: &quot;&quot;}, expected: false, name: &quot;[target] Value is empty string&quot;},
+        {conditions: {max: &quot;12.00.00&quot;, value: &quot;12:00:01&quot;}, expected: false, name: &quot;[target] The max attribute is an invalid time string&quot;},
+        {conditions: {max: &quot;12:00:00&quot;, value: &quot;12.00.01&quot;}, expected: false, name: &quot;[target] The value attribute is an invalid time string&quot;},
+        {conditions: {max: &quot;23:59:59&quot;, value: &quot;24:00:00&quot;}, expected: false, name: &quot;[target] The value attribute is an invalid time string(hour is greater than 23)&quot;},
+        {conditions: {max: &quot;23:59:59&quot;, value: &quot;23:60:00&quot;}, expected: false, name: &quot;[target] The value attribute is an invalid time string(minute is greater than 59)&quot;},
+        {conditions: {max: &quot;23:59:59&quot;, value: &quot;23:59:60&quot;}, expected: false, name: &quot;[target] The value attribute is an invalid time string(second is greater than 59)&quot;},
+        {conditions: {max: &quot;13:00:00&quot;, value: &quot;12:00:00&quot;}, expected: false, name: &quot;[target] The max attribute is greater than value attribute&quot;},
+        {conditions: {max: &quot;12:00:00&quot;, value: &quot;13&quot;}, expected: false, name: &quot;[target] The time missing second and minute parts is invalid&quot;},
+        {conditions: {max: &quot;12:00:00&quot;, value: &quot;12:00:02&quot;}, expected: true, name: &quot;[target] The value attribute is greater than max attribute&quot;},
+        {conditions: {max: &quot;12:00:00.1&quot;, value: &quot;12:00:00.2&quot;}, expected: true, name: &quot;[target] The value is greater than max(with millisecond in 1 digit)&quot;},
+        {conditions: {max: &quot;12:00:00.01&quot;, value: &quot;12:00:00.02&quot;}, expected: true, name: &quot;[target] The value is greater than max(with millisecond in 2 digit)&quot;},
+        {conditions: {max: &quot;12:00:00.001&quot;, value: &quot;12:00:00.002&quot;}, expected: true, name: &quot;[target] The value is greater than max(with millisecond in 3 digit)&quot;},
+        {conditions: {max: &quot;12:00:00&quot;, value: &quot;12:01&quot;}, expected: true, name: &quot;[target] The time missing second part is valid&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;number&quot;],
+      testData: [
+        {conditions: {max: &quot;&quot;, value: &quot;10&quot;}, expected: false, name: &quot;[target] The max attribute is not set&quot;},
+        {conditions: {max: &quot;5&quot;, value: &quot;&quot;}, expected: false, name: &quot;[target] Value is empty string&quot;},
+        {conditions: {max: &quot;5&quot;, value: &quot;4&quot;}, expected: false, name: &quot;[target] The max is greater than value(integer)&quot;},
+        {conditions: {max: &quot;-5.5&quot;, value: &quot;-5.6&quot;}, expected: false, name: &quot;[target] The max is greater than value(floating number)&quot;},
+        {conditions: {max: &quot;-0&quot;, value: &quot;0&quot;}, expected: false, name: &quot;[target] The max equals to value&quot;},
+        {conditions: {max: &quot;5&quot;, value: &quot;1abc&quot;}, expected: false, name: &quot;[target] The value is not a number&quot;},
+        {conditions: {max: &quot;5&quot;, value: &quot;6&quot;}, expected: true, name: &quot;[target] The value is greater than max(integer)&quot;},
+        {conditions: {max: &quot;-5.5&quot;, value: &quot;-5.4&quot;}, expected: true, name: &quot;[target] The value is greater than max(floating number)&quot;},
+        {conditions: {max: &quot;-5e-1&quot;, value: &quot;5e+2&quot;}, expected: true, name: &quot;[target] The value is greater than max(scientific notation)&quot;}
+      ]
+    }
+   ];
+
+  validator.run_test(testElements, &quot;rangeOverflow&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvalidityrangeUnderflowexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-rangeUnderflow-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-rangeUnderflow-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-rangeUnderflow-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,17 @@
</span><ins>+
+
+FAIL [INPUT in DATETIME status] The datetime type must be supported. assert_equals: The datetime type should be supported. expected &quot;datetime&quot; but got &quot;text&quot;
+FAIL [INPUT in DATE status] The date type must be supported. assert_equals: The date type should be supported. expected &quot;date&quot; but got &quot;text&quot;
+FAIL [INPUT in MONTH status] The month type must be supported. assert_equals: The month type should be supported. expected &quot;month&quot; but got &quot;text&quot;
+FAIL [INPUT in WEEK status] The week type must be supported. assert_equals: The week type should be supported. expected &quot;week&quot; but got &quot;text&quot;
+FAIL [INPUT in TIME status] The time type must be supported. assert_equals: The time type should be supported. expected &quot;time&quot; but got &quot;text&quot;
+PASS [INPUT in NUMBER status] The min attribute is not set 
+PASS [INPUT in NUMBER status] Value is empty string 
+PASS [INPUT in NUMBER status] The min is less than value(integer) 
+PASS [INPUT in NUMBER status] The min is less than value(floating number) 
+PASS [INPUT in NUMBER status] The min equals to value 
+PASS [INPUT in NUMBER status] The value is not a number 
+PASS [INPUT in NUMBER status] The value is less than min(integer) 
+PASS [INPUT in NUMBER status] The value is less than min(floating number) 
+PASS [INPUT in NUMBER status] The value is less than min(scientific notation) 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvalidityrangeUnderflowhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-rangeUnderflow.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-rangeUnderflow.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-rangeUnderflow.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,113 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;The constraint validation API Test: element.validity.rangeUnderflow&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-validitystate-rangeunderflow&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-constraint-validation-api&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;support/validator.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  var testElements = [
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;datetime&quot;],
+      testData: [
+        {conditions: {min: &quot;&quot;, value: &quot;2000-01-01T12:00:00Z&quot;}, expected: false, name: &quot;[target] The min attribute is not set&quot;},
+        {conditions: {min: &quot;2000-01-01T12:00:00Z&quot;, value: &quot;&quot;}, expected: false, name: &quot;[target] Value is empty string&quot;},
+        {conditions: {min: &quot;2001-01-01  12:00:00Z&quot;, value: &quot;2000-01-01T12:00:00Z&quot;}, expected: false, name: &quot;[target] The min attribute is an invalid global date time string&quot;},
+        {conditions: {min: &quot;2000-01-01T11:00:00Z&quot;, value: &quot;2000-01-01T12:00:00Z&quot;}, expected: false, name: &quot;[target] The min attribute is less than the value attribute&quot;},
+        {conditions: {min: &quot;2001-01-01T23:59:59Z&quot;, value: &quot;2000-01-01T24:00:00Z&quot;}, expected: false, name: &quot;[target] The value is an invalid datetime string(hour is greater than 23)&quot;},
+        {conditions: {min: &quot;1980-01-01T12:00Z&quot;, value: &quot;79-01-01T12:00Z&quot;}, expected: false, name: &quot;[target] The value is an invalid date time string(year is two digits)&quot;},
+        {conditions: {min: &quot;2000-01-01T13:00:00Z&quot;, value: &quot;2000-01-01T12:00:00Z&quot;}, expected: true, name: &quot;[target] The value is less than min&quot;},
+        {conditions: {min: &quot;2000-01-01T12:00:00.2Z&quot;, value: &quot;2000-01-01T12:00:00.1Z&quot;}, expected: true, name: &quot;[target] The value is less than min(with millisecond in 1 digit)&quot;},
+        {conditions: {min: &quot;2000-01-01T12:00:00.02Z&quot;, value: &quot;2000-01-01T12:00:00.01Z&quot;}, expected: true, name: &quot;[target] The value is less than min(with millisecond in 2 digits)&quot;},
+        {conditions: {min: &quot;2000-01-01T12:00:00.002Z&quot;, value: &quot;2000-01-01T12:00:00.001Z&quot;}, expected: true, name: &quot;[target] The value is less than min(with millisecond in 3 digits)&quot;},
+        {conditions: {min: &quot;10000-01-01T12:00:00Z&quot;, value: &quot;2000-01-01T12:00:00Z&quot;}, expected: true, name: &quot;[target] The value is less than min(Year is 10000 should be valid)&quot;},
+        {conditions: {min: &quot;8593-01-01T02:09+02:09&quot;, value: &quot;8592-01-01T02:09+02:09&quot;}, expected: true, name: &quot;[target] The value is greater than max(with timezone)&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;date&quot;],
+      testData: [
+        {conditions: {min: &quot;&quot;, value: &quot;2000-01-01&quot;}, expected: false, name: &quot;[target] The min attribute is not set&quot;},
+        {conditions: {min: &quot;2000-01-01&quot;, value: &quot;&quot;}, expected: false, name: &quot;[target] Value is empty string&quot;},
+        {conditions: {min: &quot;2001/01/01&quot;, value: &quot;2000-01-01&quot;}, expected: false, name: &quot;[target] The min attribute is an invalid date&quot;},
+        {conditions: {min: &quot;2000-02-02&quot;, value: &quot;2000-1-1&quot;}, expected: false, name: &quot;[target] The value attribute is an invalid date&quot;},
+        {conditions: {min: &quot;988-01-01&quot;, value: &quot;987-01-01&quot;}, expected: false, name: &quot;[target] The value is an invalid date(year is three digits)&quot;},
+        {conditions: {min: &quot;2001-01-01&quot;, value: &quot;2000-13-01&quot;}, expected: false, name: &quot;[target] The value is an invalid date(month is less than 12)&quot;},
+        {conditions: {min: &quot;2001-01-01&quot;, value: &quot;2000-02-30&quot;}, expected: false, name: &quot;[target] The value is an invalid date(date is less than 29 for Feb)&quot;},
+        {conditions: {min: &quot;2000-01-01&quot;, value: &quot;2000-12-01&quot;}, expected: false, name: &quot;[target] The min attribute is less than value attribute&quot;},
+        {conditions: {min: &quot;2000-12-01&quot;, value: &quot;2000-01-01&quot;}, expected: true, name: &quot;[target] The value attribute is less than min attribute&quot;},
+        {conditions: {min: &quot;10000-01-01&quot;, value: &quot;9999-01-01&quot;}, expected: true, name: &quot;[target] The value attribute is less than min attribute(Year is 10000 should be valid)&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;month&quot;],
+      testData: [
+        {conditions: {min: &quot;&quot;, value: &quot;2000-01&quot;}, expected: false, name: &quot;[target] The min attribute is not set&quot;},
+        {conditions: {min: &quot;2000-01&quot;, value: &quot;&quot;}, expected: false, name: &quot;[target] Value is empty string&quot;},
+        {conditions: {min: &quot;2001/01&quot;, value: &quot;2000-02&quot;}, expected: false, name: &quot;[target] The min attribute is an invalid month string&quot;},
+        {conditions: {min: &quot;2000-02&quot;, value: &quot;2000-1&quot;}, expected: false, name: &quot;[target] The value attribute is an invalid month string&quot;},
+        {conditions: {min: &quot;988-01&quot;, value: &quot;987-01&quot;}, expected: false, name: &quot;[target] The value is an invalid month string(year is three digits)&quot;},
+        {conditions: {min: &quot;2001-01&quot;, value: &quot;2000-13&quot;}, expected: false, name: &quot;[target] The value is an invalid month string(month is less than 12)&quot;},
+        {conditions: {min: &quot;2000-01&quot;, value: &quot;2000-12&quot;}, expected: false, name: &quot;[target] The min attribute is less than value attribute&quot;},
+        {conditions: {min: &quot;2001-01&quot;, value: &quot;2000-12&quot;}, expected: true, name: &quot;[target] The value attribute is less than min attribute&quot;},
+        {conditions: {min: &quot;10000-01&quot;, value: &quot;2000-01&quot;}, expected: true, name: &quot;[target] The value attribute is less than min attribute(Year is 10000 should be valid)&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;week&quot;],
+      testData: [
+        {conditions: {min: &quot;&quot;, value: &quot;2000-W01&quot;}, expected: false, name: &quot;[target] The min attribute is not set&quot;},
+        {conditions: {min: &quot;2000-W01&quot;, value: &quot;&quot;}, expected: false, name: &quot;[target] Value is empty string&quot;},
+        {conditions: {min: &quot;2001/W02&quot;, value: &quot;2000-W01&quot;}, expected: false, name: &quot;[target] The min attribute is an invalid week string&quot;},
+        {conditions: {min: &quot;2001-W02&quot;, value: &quot;2000-W1&quot;}, expected: false, name: &quot;[target] The value attribute is an invalid week string&quot;},
+        {conditions: {min: &quot;2001-W02&quot;, value: &quot;2000-w01&quot;}, expected: false, name: &quot;[target] The value attribute is an invalid week string(w is in lowercase)&quot;},
+        {conditions: {min: &quot;988-W01&quot;, value: &quot;987-W01&quot;}, expected: false, name: &quot;[target] The value is an invalid week string(year is three digits)&quot;},
+        {conditions: {min: &quot;2001-W01&quot;, value: &quot;2000-W57&quot;}, expected: false, name: &quot;[target] The value is an invalid week string(week is too greater)&quot;},
+        {conditions: {min: &quot;2000-W01&quot;, value: &quot;2000-W12&quot;}, expected: false, name: &quot;[target] The min attribute is less than value attribute&quot;},
+        {conditions: {min: &quot;2000-W12&quot;, value: &quot;2000-W01&quot;}, expected: true, name: &quot;[target] The value attribute is less than min attribute&quot;},
+        {conditions: {min: &quot;10000-W01&quot;, value: &quot;2000-W01&quot;}, expected: true, name: &quot;[target] The value attribute is less than min attribute(Year is 10000 should be valid)&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;time&quot;],
+      testData: [
+        {conditions: {min: &quot;&quot;, value: &quot;12:00:00&quot;}, expected: false, name: &quot;[target] The min attribute is not set&quot;},
+        {conditions: {min: &quot;12:00:00&quot;, value: &quot;&quot;}, expected: false, name: &quot;[target] Value is empty string&quot;},
+        {conditions: {min: &quot;12.00.01&quot;, value: &quot;12:00:00&quot;}, expected: false, name: &quot;[target] The min attribute is an invalid time string&quot;},
+        {conditions: {min: &quot;12:00:01&quot;, value: &quot;12.00.00&quot;}, expected: false, name: &quot;[target] The value attribute is an invalid time string&quot;},
+        {conditions: {min: &quot;12:00:00&quot;, value: &quot;13:00:00&quot;}, expected: false, name: &quot;[target] The min attribute is less than value attribute&quot;},
+        {conditions: {min: &quot;13:00:00&quot;, value: &quot;12&quot;}, expected: false, name: &quot;[target] The time missing second and minute parts is invalid&quot;},
+        {conditions: {min: &quot;12:00:02&quot;, value: &quot;12:00:00&quot;}, expected: true, name: &quot;[target] The value attribute is less than min attribute&quot;},
+        {conditions: {min: &quot;12:00:00.2&quot;, value: &quot;12:00:00.1&quot;}, expected: true, name: &quot;[target] The value is less than min(with millisecond in 1 digit)&quot;},
+        {conditions: {min: &quot;12:00:00.02&quot;, value: &quot;12:00:00.01&quot;}, expected: true, name: &quot;[target] The value is less than min(with millisecond in 2 digit)&quot;},
+        {conditions: {min: &quot;12:00:00.002&quot;, value: &quot;12:00:00.001&quot;}, expected: true, name: &quot;[target] The value is less than min(with millisecond in 3 digit)&quot;},
+        {conditions: {min: &quot;12:00:00&quot;, value: &quot;11:59&quot;}, expected: true, name: &quot;[target] The time missing second part is valid&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;number&quot;],
+      testData: [
+        {conditions: {min: &quot;&quot;, value: &quot;10&quot;}, expected: false, name: &quot;[target] The min attribute is not set&quot;},
+        {conditions: {min: &quot;5&quot;, value: &quot;&quot;}, expected: false, name: &quot;[target] Value is empty string&quot;},
+        {conditions: {min: &quot;4&quot;, value: &quot;5&quot;}, expected: false, name: &quot;[target] The min is less than value(integer)&quot;},
+        {conditions: {min: &quot;-5.6&quot;, value: &quot;-5.5&quot;}, expected: false, name: &quot;[target] The min is less than value(floating number)&quot;},
+        {conditions: {min: &quot;0&quot;, value: &quot;-0&quot;}, expected: false, name: &quot;[target] The min equals to value&quot;},
+        {conditions: {min: &quot;5&quot;, value: &quot;6abc&quot;}, expected: false, name: &quot;[target] The value is not a number&quot;},
+        {conditions: {min: &quot;6&quot;, value: &quot;5&quot;}, expected: true, name: &quot;[target] The value is less than min(integer)&quot;},
+        {conditions: {min: &quot;-5.4&quot;, value: &quot;-5.5&quot;}, expected: true, name: &quot;[target] The value is less than min(floating number)&quot;},
+        {conditions: {min: &quot;5e+2&quot;, value: &quot;-5e-1&quot;}, expected: true, name: &quot;[target] The value is less than min(scientific notation)&quot;}
+      ]
+    }
+  ];
+
+  validator.run_test(testElements, &quot;rangeUnderflow&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditystepMismatchexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-stepMismatch-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-stepMismatch-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-stepMismatch-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,13 @@
</span><ins>+
+
+FAIL [INPUT in DATETIME status] The datetime type must be supported. assert_equals: The datetime type should be supported. expected &quot;datetime&quot; but got &quot;text&quot;
+FAIL [INPUT in DATE status] The date type must be supported. assert_equals: The date type should be supported. expected &quot;date&quot; but got &quot;text&quot;
+FAIL [INPUT in MONTH status] The month type must be supported. assert_equals: The month type should be supported. expected &quot;month&quot; but got &quot;text&quot;
+FAIL [INPUT in WEEK status] The week type must be supported. assert_equals: The week type should be supported. expected &quot;week&quot; but got &quot;text&quot;
+FAIL [INPUT in TIME status] The time type must be supported. assert_equals: The time type should be supported. expected &quot;time&quot; but got &quot;text&quot;
+FAIL [INPUT in DATETIME-LOCAL status] The datetime-local type must be supported. assert_equals: The datetime-local type should be supported. expected &quot;datetime-local&quot; but got &quot;text&quot;
+PASS [INPUT in NUMBER status] The step attribute is not set 
+PASS [INPUT in NUMBER status] The value attibute is empty string 
+PASS [INPUT in NUMBER status] The value must match the step 
+PASS [INPUT in NUMBER status] The value must mismatch the step 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditystepMismatchhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-stepMismatch.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-stepMismatch.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-stepMismatch.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,87 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;The constraint validation API Test: element.validity.stepMismatch&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-validitystate-stepmismatch&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-constraint-validation-api&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;support/validator.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  //set step = 2 * default step * factor
+  var testElements = [
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;datetime&quot;],
+      testData: [
+        {conditions: {step: &quot;&quot;, value: &quot;2000-01-01T12:00:00Z&quot;}, expected: false, name: &quot;[target] The step attribute is not set&quot;},
+        {conditions: {step: 2 * 60 * 1000, value: &quot;&quot;}, expected: false, name: &quot;[target] The value attibute is empty string&quot;},
+        {conditions: {step: 2 * 60 * 1000, value: &quot;2000-01-01T12:58Z&quot;}, expected: false, name: &quot;[target] The value must match the step&quot;},
+        {conditions: {step: 2 * 60 * 1000, value: &quot;2000-01-01T12:59Z&quot;}, expected: true, name: &quot;[target] The value must mismatch the step&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;date&quot;],
+      testData: [
+        {conditions: {step: &quot;&quot;, value: &quot;2000-01-01&quot;}, expected: false, name: &quot;[target] The step attribute is not set&quot;},
+        {conditions: {step: 2 * 1 * 86400000, value: &quot;&quot;}, expected: false, name: &quot;[target] The value attibute is empty string&quot;},
+        {conditions: {step: 2 * 1 * 86400000, value: &quot;1970-01-02&quot;}, expected: false, name: &quot;[target] The value must match the step&quot;},
+        {conditions: {step: 2 * 1 * 86400000, value: &quot;1970-01-03&quot;}, expected: true, name: &quot;[target] The value must mismatch the step&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;month&quot;],
+      testData: [
+        {conditions: {step: &quot;&quot;, value: &quot;2000-01&quot;}, expected: false, name: &quot;[target] The step attribute is not set&quot;},
+        {conditions: {step: 2 * 1 * 1, value: &quot;&quot;}, expected: false, name: &quot;[target] The value attibute is empty string&quot;},
+        {conditions: {step: 2 * 1 * 1, value: &quot;1970-03&quot;}, expected: false, name: &quot;[target] The value must match the step&quot;},
+        {conditions: {step: 2 * 1 * 1, value: &quot;1970-04&quot;}, expected: true, name: &quot;[target] The value must mismatch the step&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;week&quot;],
+      testData: [
+        {conditions: {step: &quot;&quot;, value: &quot;1970-W01&quot;}, expected: false, name: &quot;[target] The step attribute is not set&quot;},
+        {conditions: {step: 2 * 1 * 604800000, value: &quot;&quot;}, expected: false, name: &quot;[target] The value attibute is empty string&quot;},
+        {conditions: {step: 2 * 1 * 604800000, value: &quot;1970-W03&quot;}, expected: false, name: &quot;[target] The value must match the step&quot;},
+        {conditions: {step: 2 * 1 * 604800000, value: &quot;1970-W04&quot;}, expected: true, name: &quot;[target] The value must mismatch the step&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;time&quot;],
+      testData: [
+        {conditions: {step: &quot;&quot;, value: &quot;12:00:00&quot;}, expected: false, name: &quot;[target] The step attribute is not set&quot;},
+        {conditions: {step: 2 * 60 * 1000, value: &quot;&quot;}, expected: false, name: &quot;[target] The value attibute is empty string&quot;},
+        {conditions: {step: 2 * 60 * 1000, value: &quot;12:02:00&quot;}, expected: false, name: &quot;[target] The value must match the step&quot;},
+        {conditions: {step: 2 * 60 * 1000, value: &quot;12:03:00&quot;}, expected: true, name: &quot;[target] The value must mismatch the step&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;datetime-local&quot;],
+      testData: [
+        {conditions: {step: &quot;&quot;, value: &quot;2000-01-01T12:00:00&quot;}, expected: false, name: &quot;[target] The step attribute is not set&quot;},
+        {conditions: {step: 2 * 60 * 1000, value: &quot;&quot;}, expected: false, name: &quot;[target] The value attibute is empty string&quot;},
+        {conditions: {step: 2 * 60 * 1000, value: &quot;1970-01-01T12:02:00&quot;}, expected: false, name: &quot;[target] The value must match the step&quot;},
+        {conditions: {step: 2 * 60 * 1000, value: &quot;1970-01-01T12:03:00&quot;}, expected: true, name: &quot;[target] The value must mismatch the step&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;number&quot;],
+      testData: [
+        {conditions: {step: &quot;&quot;, value: &quot;1&quot;}, expected: false, name: &quot;[target] The step attribute is not set&quot;},
+        {conditions: {step: 2 * 1 * 1, value: &quot;&quot;}, expected: false, name: &quot;[target] The value attibute is empty string&quot;},
+        {conditions: {step: 2 * 1 * 1, value: &quot;2&quot;}, expected: false, name: &quot;[target] The value must match the step&quot;},
+        {conditions: {step: 2 * 1 * 1, value: &quot;3&quot;}, expected: true, name: &quot;[target] The value must mismatch the step&quot;}
+      ]
+    }
+  ];
+
+  validator.run_test(testElements, &quot;stepMismatch&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditytooLongexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-tooLong-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-tooLong-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-tooLong-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,66 @@
</span><ins>+
+
+PASS [INPUT in TEXT status] Non-dirty value - maxlength is not set 
+PASS [INPUT in TEXT status] Non-dirty value - value is empty string 
+PASS [INPUT in TEXT status] Non-dirty value - length of value is less than maxlength 
+PASS [INPUT in TEXT status] Non-dirty value - length of value equals to maxlength 
+PASS [INPUT in TEXT status] Non-dirty value - length of value is greater than maxlength 
+PASS [INPUT in TEXT status] Dirty value - value is less than maxlength 
+PASS [INPUT in TEXT status] Dirty value - length of value(AAA) in unicode is less than maxlength 
+PASS [INPUT in TEXT status] Dirty value - value equals to maxlength 
+FAIL [INPUT in TEXT status] Dirty value - length of value is greater than maxlength assert_true: The validity.tooLong should be true. expected true got false
+PASS [INPUT in SEARCH status] Non-dirty value - maxlength is not set 
+PASS [INPUT in SEARCH status] Non-dirty value - value is empty string 
+PASS [INPUT in SEARCH status] Non-dirty value - length of value is less than maxlength 
+PASS [INPUT in SEARCH status] Non-dirty value - length of value equals to maxlength 
+PASS [INPUT in SEARCH status] Non-dirty value - length of value is greater than maxlength 
+PASS [INPUT in SEARCH status] Dirty value - value is less than maxlength 
+PASS [INPUT in SEARCH status] Dirty value - length of value(AAA) in unicode is less than maxlength 
+PASS [INPUT in SEARCH status] Dirty value - value equals to maxlength 
+FAIL [INPUT in SEARCH status] Dirty value - length of value is greater than maxlength assert_true: The validity.tooLong should be true. expected true got false
+PASS [INPUT in TEL status] Non-dirty value - maxlength is not set 
+PASS [INPUT in TEL status] Non-dirty value - value is empty string 
+PASS [INPUT in TEL status] Non-dirty value - length of value is less than maxlength 
+PASS [INPUT in TEL status] Non-dirty value - length of value equals to maxlength 
+PASS [INPUT in TEL status] Non-dirty value - length of value is greater than maxlength 
+PASS [INPUT in TEL status] Dirty value - value is less than maxlength 
+PASS [INPUT in TEL status] Dirty value - length of value(AAA) in unicode is less than maxlength 
+PASS [INPUT in TEL status] Dirty value - value equals to maxlength 
+FAIL [INPUT in TEL status] Dirty value - length of value is greater than maxlength assert_true: The validity.tooLong should be true. expected true got false
+PASS [INPUT in URL status] Non-dirty value - maxlength is not set 
+PASS [INPUT in URL status] Non-dirty value - value is empty string 
+PASS [INPUT in URL status] Non-dirty value - length of value is less than maxlength 
+PASS [INPUT in URL status] Non-dirty value - length of value equals to maxlength 
+PASS [INPUT in URL status] Non-dirty value - length of value is greater than maxlength 
+PASS [INPUT in URL status] Dirty value - value is less than maxlength 
+PASS [INPUT in URL status] Dirty value - length of value(AAA) in unicode is less than maxlength 
+PASS [INPUT in URL status] Dirty value - value equals to maxlength 
+FAIL [INPUT in URL status] Dirty value - length of value is greater than maxlength assert_true: The validity.tooLong should be true. expected true got false
+PASS [INPUT in EMAIL status] Non-dirty value - maxlength is not set 
+PASS [INPUT in EMAIL status] Non-dirty value - value is empty string 
+PASS [INPUT in EMAIL status] Non-dirty value - length of value is less than maxlength 
+PASS [INPUT in EMAIL status] Non-dirty value - length of value equals to maxlength 
+PASS [INPUT in EMAIL status] Non-dirty value - length of value is greater than maxlength 
+PASS [INPUT in EMAIL status] Dirty value - value is less than maxlength 
+PASS [INPUT in EMAIL status] Dirty value - length of value(AAA) in unicode is less than maxlength 
+PASS [INPUT in EMAIL status] Dirty value - value equals to maxlength 
+FAIL [INPUT in EMAIL status] Dirty value - length of value is greater than maxlength assert_true: The validity.tooLong should be true. expected true got false
+PASS [INPUT in PASSWORD status] Non-dirty value - maxlength is not set 
+PASS [INPUT in PASSWORD status] Non-dirty value - value is empty string 
+PASS [INPUT in PASSWORD status] Non-dirty value - length of value is less than maxlength 
+PASS [INPUT in PASSWORD status] Non-dirty value - length of value equals to maxlength 
+PASS [INPUT in PASSWORD status] Non-dirty value - length of value is greater than maxlength 
+PASS [INPUT in PASSWORD status] Dirty value - value is less than maxlength 
+PASS [INPUT in PASSWORD status] Dirty value - length of value(AAA) in unicode is less than maxlength 
+PASS [INPUT in PASSWORD status] Dirty value - value equals to maxlength 
+FAIL [INPUT in PASSWORD status] Dirty value - length of value is greater than maxlength assert_true: The validity.tooLong should be true. expected true got false
+PASS [textarea]  Non-dirty value - maxlength is not set 
+PASS [textarea]  Non-dirty value - value is empty string 
+PASS [textarea]  Non-dirty value - length of value is less than maxlength 
+PASS [textarea]  Non-dirty value - length of value equals to maxlength 
+PASS [textarea]  Non-dirty value - length of value is greater than maxlength 
+PASS [textarea]  Dirty value - value is less than maxlength 
+PASS [textarea]  Dirty value - length of value(LF, CRLF) in unicode is less than maxlength 
+PASS [textarea]  Dirty value - length of value equals to maxlength 
+FAIL [textarea]  Dirty value - length of value is greater than maxlength assert_true: The validity.tooLong should be true. expected true got false
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditytooLonghtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-tooLong.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-tooLong.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-tooLong.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,48 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;The constraint validation API Test: element.validity.tooLong&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-validitystate-toolong&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-constraint-validation-api&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;support/validator.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  var testElements = [
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;text&quot;, &quot;search&quot;, &quot;tel&quot;, &quot;url&quot;, &quot;email&quot;, &quot;password&quot;],
+      testData: [ // Non-dirty value
+        {conditions: {maxLength: &quot;&quot;, value: &quot;abc&quot;}, expected: false, name: &quot;[target] Non-dirty value - maxlength is not set&quot;},
+        {conditions: {maxLength: &quot;4&quot;, value: &quot;&quot;}, expected: false, name: &quot;[target] Non-dirty value - value is empty string&quot;},
+        {conditions: {maxLength: &quot;4&quot;, value: &quot;abc&quot;}, expected: false, name: &quot;[target] Non-dirty value - length of value is less than maxlength&quot;},
+        {conditions: {maxLength: &quot;4&quot;, value: &quot;abcd&quot;}, expected: false, name: &quot;[target] Non-dirty value - length of value equals to maxlength&quot;},
+        {conditions: {maxLength: &quot;4&quot;, value: &quot;abcde&quot;}, expected: false, name: &quot;[target] Non-dirty value - length of value is greater than maxlength&quot;},
+        //Dirty value
+        {conditions: {maxLength: &quot;4&quot;, value: &quot;abc&quot;}, expected: false, name: &quot;[target] Dirty value - value is less than maxlength&quot;, dirty: true},
+        {conditions: {maxLength: &quot;4&quot;, value: &quot;\u0041\u0041\u0041&quot;}, expected: false, name: &quot;[target] Dirty value - length of value(AAA) in unicode is less than maxlength&quot;, dirty: true},
+        {conditions: {maxLength: &quot;4&quot;, value: &quot;abcd&quot;}, expected: false, name: &quot;[target] Dirty value - value equals to maxlength&quot;, dirty: true},
+        {conditions: {maxLength: &quot;4&quot;, value: &quot;abcde&quot;}, expected: true, name: &quot;[target] Dirty value - length of value is greater than maxlength&quot;, dirty: true}
+      ]
+    },
+    {
+      tag: &quot;textarea&quot;,
+      types: [],
+      testData: [
+        {conditions: {maxLength: &quot;&quot;, value: &quot;abc&quot;}, expected: false, name: &quot;[target] Non-dirty value - maxlength is not set&quot;},
+        {conditions: {maxLength: &quot;4&quot;, value: &quot;&quot;}, expected: false, name: &quot;[target] Non-dirty value - value is empty string&quot;},
+        {conditions: {maxLength: &quot;4&quot;, value: &quot;abc&quot;}, expected: false, name: &quot;[target] Non-dirty value - length of value is less than maxlength&quot;},
+        {conditions: {maxLength: &quot;4&quot;, value: &quot;abcd&quot;}, expected: false, name: &quot;[target] Non-dirty value - length of value equals to maxlength&quot;},
+        {conditions: {maxLength: &quot;4&quot;, value: &quot;abcde&quot;}, expected: false, name: &quot;[target] Non-dirty value - length of value is greater than maxlength&quot;},
+        //Dirty value
+        {conditions: {maxLength: &quot;4&quot;, value: &quot;abc&quot;}, expected: false, name: &quot;[target] Dirty value - value is less than maxlength&quot;, dirty: true},
+        {conditions: {maxLength: &quot;4&quot;, value: &quot;\u000D\u000A&quot;}, expected: false, name: &quot;[target] Dirty value - length of value(LF, CRLF) in unicode is less than maxlength&quot;, dirty: true},
+        {conditions: {maxLength: &quot;4&quot;, value: &quot;abcd&quot;}, expected: false, name: &quot;[target] Dirty value - length of value equals to maxlength&quot;, dirty: true},
+        {conditions: {maxLength: &quot;4&quot;, value: &quot;abcde&quot;}, expected: true, name: &quot;[target] Dirty value - length of value is greater than maxlength&quot;, dirty: true}
+      ]
+    }
+  ];
+
+  validator.run_test (testElements, &quot;tooLong&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditytooShortexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-tooShort-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-tooShort-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-tooShort-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,66 @@
</span><ins>+
+
+FAIL [INPUT in TEXT status] Non-dirty value - minLength is not set assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in TEXT status] Non-dirty value - value is empty string assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in TEXT status] Non-dirty value - length of value is greater than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in TEXT status] Non-dirty value - length of value equals to minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in TEXT status] Non-dirty value - length of value is less than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in TEXT status] Dirty value - value is greater than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in TEXT status] Dirty value - length of value(AAAAA) in unicode is greater than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in TEXT status] Dirty value - value equals to minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in TEXT status] Dirty value - length of value is less than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in SEARCH status] Non-dirty value - minLength is not set assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in SEARCH status] Non-dirty value - value is empty string assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in SEARCH status] Non-dirty value - length of value is greater than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in SEARCH status] Non-dirty value - length of value equals to minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in SEARCH status] Non-dirty value - length of value is less than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in SEARCH status] Dirty value - value is greater than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in SEARCH status] Dirty value - length of value(AAAAA) in unicode is greater than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in SEARCH status] Dirty value - value equals to minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in SEARCH status] Dirty value - length of value is less than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in TEL status] Non-dirty value - minLength is not set assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in TEL status] Non-dirty value - value is empty string assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in TEL status] Non-dirty value - length of value is greater than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in TEL status] Non-dirty value - length of value equals to minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in TEL status] Non-dirty value - length of value is less than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in TEL status] Dirty value - value is greater than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in TEL status] Dirty value - length of value(AAAAA) in unicode is greater than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in TEL status] Dirty value - value equals to minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in TEL status] Dirty value - length of value is less than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in URL status] Non-dirty value - minLength is not set assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in URL status] Non-dirty value - value is empty string assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in URL status] Non-dirty value - length of value is greater than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in URL status] Non-dirty value - length of value equals to minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in URL status] Non-dirty value - length of value is less than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in URL status] Dirty value - value is greater than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in URL status] Dirty value - length of value(AAAAA) in unicode is greater than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in URL status] Dirty value - value equals to minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in URL status] Dirty value - length of value is less than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in EMAIL status] Non-dirty value - minLength is not set assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in EMAIL status] Non-dirty value - value is empty string assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in EMAIL status] Non-dirty value - length of value is greater than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in EMAIL status] Non-dirty value - length of value equals to minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in EMAIL status] Non-dirty value - length of value is less than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in EMAIL status] Dirty value - value is greater than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in EMAIL status] Dirty value - length of value(AAAAA) in unicode is greater than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in EMAIL status] Dirty value - value equals to minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in EMAIL status] Dirty value - length of value is less than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in PASSWORD status] Non-dirty value - minLength is not set assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in PASSWORD status] Non-dirty value - value is empty string assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in PASSWORD status] Non-dirty value - length of value is greater than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in PASSWORD status] Non-dirty value - length of value equals to minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in PASSWORD status] Non-dirty value - length of value is less than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in PASSWORD status] Dirty value - value is greater than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in PASSWORD status] Dirty value - length of value(AAAAA) in unicode is greater than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in PASSWORD status] Dirty value - value equals to minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [INPUT in PASSWORD status] Dirty value - length of value is less than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [textarea]  Non-dirty value - minLength is no set assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [textarea]  Non-dirty value - value is empty string assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [textarea]  Non-dirty value - length of value is greater than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [textarea]  Non-dirty value - length of value equals to minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [textarea]  Non-dirty value - length of length of value is greater than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [textarea]  Dirty value - value is less than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [textarea]  Dirty value - length of value(LF, CRLF) in unicode is less than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [textarea]  Dirty value - length of value equals to minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+FAIL [textarea]  Dirty value - length of value is greater than minLength assert_true: The tooShort attribute doesn't exist. expected true got false
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditytooShorthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-tooShort.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-tooShort.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-tooShort.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,50 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;The constraint validation API Test: element.validity.tooShort&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#suffering-from-being-too-short&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-constraint-validation-api&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;support/validator.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  var testElements = [
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;text&quot;, &quot;search&quot;, &quot;tel&quot;, &quot;url&quot;, &quot;email&quot;, &quot;password&quot;],
+      testData: [
+        // Non-dirty value
+        {conditions: {minLength: &quot;&quot;, value: &quot;abc&quot;}, expected: false, name: &quot;[target] Non-dirty value - minLength is not set&quot;},
+        {conditions: {minLength: &quot;4&quot;, value: &quot;&quot;}, expected: false, name: &quot;[target] Non-dirty value - value is empty string&quot;},
+        {conditions: {minLength: &quot;4&quot;, value: &quot;abcde&quot;}, expected: false, name: &quot;[target] Non-dirty value - length of value is greater than minLength&quot;},
+        {conditions: {minLength: &quot;4&quot;, value: &quot;abcd&quot;}, expected: false, name: &quot;[target] Non-dirty value - length of value equals to minLength&quot;},
+        {conditions: {minLength: &quot;4&quot;, value: &quot;abc&quot;}, expected: false, name: &quot;[target] Non-dirty value - length of value is less than minLength&quot;},
+        //Dirty value
+        {conditions: {minLength: &quot;4&quot;, value: &quot;abcde&quot;}, expected: false, name: &quot;[target] Dirty value - value is greater than minLength&quot;, dirty: true},
+        {conditions: {minLength: &quot;4&quot;, value: &quot;\u0041\u0041\u0041\u0041\u0041&quot;}, expected: false, name: &quot;[target] Dirty value - length of value(AAAAA) in unicode is greater than minLength&quot;, dirty: true},
+        {conditions: {minLength: &quot;4&quot;, value: &quot;abcd&quot;}, expected: false, name: &quot;[target] Dirty value - value equals to minLength&quot;, dirty: true},
+        {conditions: {minLength: &quot;4&quot;, value: &quot;abc&quot;}, expected: true, name: &quot;[target] Dirty value - length of value is less than minLength&quot;, dirty: true}
+      ]
+    },
+    {
+      tag: &quot;textarea&quot;,
+      types: [],
+      testData: [
+        // Non-dirty value
+        {conditions: {minLength: &quot;&quot;, value: &quot;abc&quot;}, expected: false, name: &quot;[target] Non-dirty value - minLength is no set&quot;},
+        {conditions: {minLength: &quot;4&quot;, value: &quot;&quot;}, expected: false, name: &quot;[target] Non-dirty value - value is empty string&quot;},
+        {conditions: {minLength: &quot;4&quot;, value: &quot;abcde&quot;}, expected: false, name: &quot;[target] Non-dirty value - length of value is greater than minLength&quot;},
+        {conditions: {minLength: &quot;4&quot;, value: &quot;abcd&quot;}, expected: false, name: &quot;[target] Non-dirty value - length of value equals to minLength&quot;},
+        {conditions: {minLength: &quot;4&quot;, value: &quot;abc&quot;}, expected: false, name: &quot;[target] Non-dirty value - length of length of value is greater than minLength&quot;},
+        //Dirty value
+        {conditions: {minLength: &quot;4&quot;, value: &quot;abcde&quot;}, expected: false, name: &quot;[target] Dirty value - value is less than minLength&quot;, dirty: true},
+        {conditions: {minLength: &quot;4&quot;, value: &quot;\u000D\u000A\u000D\u000A\u000D\u000A&quot;}, expected: false, name: &quot;[target] Dirty value - length of value(LF, CRLF) in unicode is less than minLength&quot;, dirty: true},
+        {conditions: {minLength: &quot;4&quot;, value: &quot;abcd&quot;}, expected: false, name: &quot;[target] Dirty value - length of value equals to minLength&quot;, dirty: true},
+        {conditions: {minLength: &quot;4&quot;, value: &quot;abc&quot;}, expected: true, name: &quot;[target] Dirty value - length of value is greater than minLength&quot;, dirty: true}
+      ]
+    }
+  ];
+
+  validator.run_test (testElements, &quot;tooShort&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditytypeMismatchexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-typeMismatch-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-typeMismatch-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-typeMismatch-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,14 @@
</span><ins>+
+
+PASS [INPUT in EMAIL status] The value is empty 
+PASS [INPUT in EMAIL status] The value is a valid email address 
+PASS [INPUT in EMAIL status] The value is a valid email address with some white spaces. 
+PASS [INPUT in EMAIL status] The value is not an email address 
+PASS [INPUT in EMAIL status] The value contains multiple email addresses 
+PASS [INPUT in EMAIL status] The value is valid email addresses 
+PASS [INPUT in EMAIL status] The value contains invalid separator 
+PASS [INPUT in URL status] The value is empty 
+PASS [INPUT in URL status] The value is a valid url 
+PASS [INPUT in URL status] The value is a valid url with some white spaces. 
+PASS [INPUT in URL status] The value is not an url 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvaliditytypeMismatchhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-typeMismatch.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-typeMismatch.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-typeMismatch.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,41 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;The constraint validation API Test: element.validity.typeMismatch&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-validitystate-typemismatch&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-constraint-validation-api&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;support/validator.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  var testElements = [
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;email&quot;],
+      testData: [
+        // multiple is false
+        {conditions: {multiple: false, value: &quot;&quot;}, expected: false, name: &quot;[target] The value is empty&quot;},
+        {conditions: {multiple: false, value: &quot;test@example.com&quot;}, expected: false, name: &quot;[target] The value is a valid email address&quot;},
+        {conditions: {multiple: false, value: &quot;\u000A\u000D\u0020\u0009 test@example.com \u000A\u000D\u0020\u0009&quot;}, expected: false, name: &quot;[target] The value is a valid email address with some white spaces.&quot;},
+        {conditions: {multiple: false, value: &quot;abc&quot;}, expected: true, name: &quot;[target] The value is not an email address&quot;},
+        {conditions: {multiple: false, value: &quot;test1@example.com,test2@example.com&quot;}, expected: true, name: &quot;[target] The value contains multiple email addresses&quot;},
+        //multiple is true
+        {conditions: {multiple: true, value: &quot;test1@example.com,test2@example.com&quot;}, expected: false, name: &quot;[target] The value is valid email addresses&quot;},
+        {conditions: {multiple: true, value: &quot;test1@example.com;test2@example.com&quot;}, expected: true, name: &quot;[target] The value contains invalid separator&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;url&quot;],
+      testData: [
+        {conditions: {multiple: false, value: &quot;&quot;}, expected: false, name: &quot;[target] The value is empty&quot;},
+        {conditions: {multiple: false, value: &quot;http://www.example.com&quot;}, expected: false, name: &quot;[target] The value is a valid url&quot;},
+        {conditions: {multiple: false, value: &quot;\u000A\u000D\u0020\u0009 http://www.example.com \u000A\u000D\u0020\u0009 &quot;}, expected: false, name: &quot;[target] The value is a valid url with some white spaces.&quot;},
+        {conditions: {multiple: false, value: &quot;abc&quot;}, expected: true, name: &quot;[target] The value is not an url&quot;}
+      ]
+    }
+  ];
+
+  validator.run_test(testElements, &quot;typeMismatch&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvalidityvalidexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-valid-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-valid-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-valid-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,37 @@
</span><ins>+
+
+PASS [INPUT in TEXT status] validity.valid must be false if validity.tooLong is true 
+PASS [INPUT in TEXT status] validity.valid must be false if validity.patternMismatch is true 
+PASS [INPUT in TEXT status] validity.valid must be false if validity.valueMissing is true 
+PASS [INPUT in SEARCH status] validity.valid must be false if validity.tooLong is true 
+PASS [INPUT in SEARCH status] validity.valid must be false if validity.patternMismatch is true 
+PASS [INPUT in SEARCH status] validity.valid must be false if validity.valueMissing is true 
+PASS [INPUT in TEL status] validity.valid must be false if validity.tooLong is true 
+PASS [INPUT in TEL status] validity.valid must be false if validity.patternMismatch is true 
+PASS [INPUT in TEL status] validity.valid must be false if validity.valueMissing is true 
+PASS [INPUT in PASSWORD status] validity.valid must be false if validity.tooLong is true 
+PASS [INPUT in PASSWORD status] validity.valid must be false if validity.patternMismatch is true 
+PASS [INPUT in PASSWORD status] validity.valid must be false if validity.valueMissing is true 
+PASS [INPUT in URL status] validity.valid must be false if validity.tooLong is true 
+PASS [INPUT in URL status] validity.valid must be false if validity.patternMismatch is true 
+PASS [INPUT in URL status] validity.valid must be false if validity.typeMismatch is true 
+PASS [INPUT in URL status] validity.valid must be false if validity.valueMissing is true 
+PASS [INPUT in EMAIL status] validity.valid must be false if validity.tooLong is true 
+PASS [INPUT in EMAIL status] validity.valid must be false if validity.patternMismatch is true 
+PASS [INPUT in EMAIL status] validity.valid must be false if validity.typeMismatch is true 
+PASS [INPUT in EMAIL status] validity.valid must be false if validity.valueMissing is true 
+FAIL [INPUT in DATETIME status] The datetime type must be supported. assert_equals: The datetime type should be supported. expected &quot;datetime&quot; but got &quot;text&quot;
+FAIL [INPUT in DATE status] The date type must be supported. assert_equals: The date type should be supported. expected &quot;date&quot; but got &quot;text&quot;
+FAIL [INPUT in MONTH status] The month type must be supported. assert_equals: The month type should be supported. expected &quot;month&quot; but got &quot;text&quot;
+FAIL [INPUT in WEEK status] The week type must be supported. assert_equals: The week type should be supported. expected &quot;week&quot; but got &quot;text&quot;
+FAIL [INPUT in TIME status] The time type must be supported. assert_equals: The time type should be supported. expected &quot;time&quot; but got &quot;text&quot;
+PASS [INPUT in NUMBER status] validity.valid must be false if validity.rangeOverflow is true 
+PASS [INPUT in NUMBER status] validity.valid must be false if validity.rangeUnderflow is true 
+PASS [INPUT in NUMBER status] validity.valid must be false if validity.stepMismatch is true 
+PASS [INPUT in NUMBER status] validity.valid must be false if validity.valueMissing is true 
+PASS [INPUT in CHECKBOX status] validity.valid must be false if validity.valueMissing is true 
+PASS [INPUT in RADIO status] validity.valid must be false if validity.valueMissing is true 
+PASS [INPUT in FILE status] validity.valid must be false if validity.valueMissing is true 
+PASS [select]  validity.valid must be false if validity.valueMissing is true 
+PASS [textarea]  validity.valid must be false if validity.valueMissing is true 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvalidityvalidhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-valid.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-valid.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-valid.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,133 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;The constraint validation API Test: element.validity.valid&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-validitystate-valid&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-constraint-validation-api&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;support/validator.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  var testElements = [
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;text&quot;, &quot;search&quot;, &quot;tel&quot;, &quot;password&quot;],
+      testData: [
+        {conditions: {maxLength: &quot;4&quot;, value: &quot;abcdef&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.tooLong is true&quot;, dirty: true},
+        {conditions: {pattern: &quot;[A-Z]&quot;, value: &quot;abc&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.patternMismatch is true&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.valueMissing is true&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;url&quot;],
+      testData: [
+        {conditions: {maxLength: &quot;20&quot;, value: &quot;http://www.example.com&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.tooLong is true&quot;, dirty: true},
+        {conditions: {pattern: &quot;http://www.example.com&quot;, value: &quot;http://www.example.net&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.patternMismatch is true&quot;},
+        {conditions: {value: &quot;abc&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.typeMismatch is true&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.valueMissing is true&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;email&quot;],
+      testData: [
+        {conditions: {maxLength: &quot;10&quot;, value: &quot;test@example.com&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.tooLong is true&quot;, dirty: true},
+        {conditions: {pattern: &quot;test@example.com&quot;, value: &quot;test@example.net&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.patternMismatch is true&quot;},
+        {conditions: {value: &quot;abc&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.typeMismatch is true&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.valueMissing is true&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;datetime&quot;],
+      testData: [
+        {conditions: {max: &quot;2000-01-01T12:00:00Z&quot;, value: &quot;2001-01-01T12:00:00Z&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.rangeOverflow is true&quot;},
+        {conditions: {min: &quot;2001-01-01T12:00:00Z&quot;, value: &quot;2000-01-01T12:00:00Z&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.rangeUnderflow is true&quot;},
+        {conditions: {step: 2 * 60 * 1000, value: &quot;2001-01-01T12:03:00Z&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.stepMismatch is true&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.valueMissing is true&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;date&quot;],
+      testData: [
+        {conditions: {max: &quot;2000-01-01&quot;, value: &quot;2001-01-01&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.rangeOverflow is true&quot;},
+        {conditions: {min: &quot;2001-01-01&quot;, value: &quot;2000-01-01&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.rangeUnderflow is true&quot;},
+        {conditions: {step: 2 * 1 * 86400000, value: &quot;2000-01-03&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.stepMismatch is true&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.valueMissing is true&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;month&quot;],
+      testData: [
+        {conditions: {max: &quot;2000-01&quot;, value: &quot;2001-01&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.rangeOverflow is true&quot;},
+        {conditions: {min: &quot;2001-01&quot;, value: &quot;2000-01&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.rangeUnderflow is true&quot;},
+        {conditions: {step: 2 * 1 * 1, value: &quot;2001-03&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.stepMismatch is true&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.valueMissing is true&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;week&quot;],
+      testData: [
+        {conditions: {max: &quot;2000-W01&quot;, value: &quot;2001-W01&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.rangeOverflow is true&quot;},
+        {conditions: {min: &quot;2001-W01&quot;, value: &quot;2000-W01&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.rangeUnderflow is true&quot;},
+        {conditions: {step: 2 * 1 * 604800000, value: &quot;2001-W03&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.stepMismatch is true&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.valueMissing is true&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;time&quot;],
+      testData: [
+        {conditions: {max: &quot;12:00:00&quot;, value: &quot;13:00:00&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.rangeOverflow is true&quot;},
+        {conditions: {min: &quot;12:00:00&quot;, value: &quot;11:00:00&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.rangeUnderflow is true&quot;},
+        {conditions: {step: 2 * 60 * 1000, value: &quot;12:03:00&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.stepMismatch is true&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.valueMissing is true&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;number&quot;],
+      testData: [
+        {conditions: {max: &quot;5&quot;, value: &quot;6&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.rangeOverflow is true&quot;},
+        {conditions: {min: &quot;5&quot;, value: &quot;4&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.rangeUnderflow is true&quot;},
+        {conditions: {step: 2 * 1 * 1, value: &quot;3&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.stepMismatch is true&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.valueMissing is true&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;checkbox&quot;, &quot;radio&quot;],
+      testData: [
+        {conditions: {required: true, checked: false, name: &quot;test1&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.valueMissing is true&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;file&quot;],
+      testData: [
+        {conditions: {required: true, files: null}, expected: false, name: &quot;[target] validity.valid must be false if validity.valueMissing is true&quot;}
+      ]
+    },
+    {
+      tag: &quot;select&quot;,
+      types: [],
+      testData: [
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.valueMissing is true&quot;}
+      ]
+    },
+    {
+      tag: &quot;textarea&quot;,
+      types: [],
+      testData: [
+        {conditions: {required: true, value: &quot;&quot;}, expected: false, name: &quot;[target] validity.valid must be false if validity.valueMissing is true&quot;}
+      ]
+    }
+  ];
+
+  validator.run_test(testElements, &quot;isValid&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvalidityvalueMissingexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-valueMissing-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-valueMissing-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-valueMissing-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,51 @@
</span><ins>+
+
+PASS [INPUT in TEXT status] The required attribute is not set 
+PASS [INPUT in TEXT status] The value is not empty and required is true 
+PASS [INPUT in TEXT status] The value is empty and required is true 
+PASS [INPUT in SEARCH status] The required attribute is not set 
+PASS [INPUT in SEARCH status] The value is not empty and required is true 
+PASS [INPUT in SEARCH status] The value is empty and required is true 
+PASS [INPUT in TEL status] The required attribute is not set 
+PASS [INPUT in TEL status] The value is not empty and required is true 
+PASS [INPUT in TEL status] The value is empty and required is true 
+PASS [INPUT in URL status] The required attribute is not set 
+PASS [INPUT in URL status] The value is not empty and required is true 
+PASS [INPUT in URL status] The value is empty and required is true 
+PASS [INPUT in EMAIL status] The required attribute is not set 
+PASS [INPUT in EMAIL status] The value is not empty and required is true 
+PASS [INPUT in EMAIL status] The value is empty and required is true 
+PASS [INPUT in PASSWORD status] The required attribute is not set 
+PASS [INPUT in PASSWORD status] The value is not empty and required is true 
+PASS [INPUT in PASSWORD status] The value is empty and required is true 
+FAIL [INPUT in DATETIME status] The datetime type must be supported. assert_equals: The datetime type should be supported. expected &quot;datetime&quot; but got &quot;text&quot;
+FAIL [INPUT in DATE status] The date type must be supported. assert_equals: The date type should be supported. expected &quot;date&quot; but got &quot;text&quot;
+FAIL [INPUT in MONTH status] The month type must be supported. assert_equals: The month type should be supported. expected &quot;month&quot; but got &quot;text&quot;
+FAIL [INPUT in WEEK status] The week type must be supported. assert_equals: The week type should be supported. expected &quot;week&quot; but got &quot;text&quot;
+FAIL [INPUT in TIME status] The time type must be supported. assert_equals: The time type should be supported. expected &quot;time&quot; but got &quot;text&quot;
+PASS [INPUT in NUMBER status] The required attribute is not set 
+PASS [INPUT in NUMBER status] Value is an integer with a leading symbol '+' 
+PASS [INPUT in NUMBER status] Value is a number with a '-' symbol 
+PASS [INPUT in NUMBER status] Value is a number in scientific notation form(e is in lowercase) 
+PASS [INPUT in NUMBER status] Value is a number in scientific notation form(E is in uppercase) 
+PASS [INPUT in NUMBER status] Value is -0 
+PASS [INPUT in NUMBER status] Value is a number with some white spaces 
+PASS [INPUT in NUMBER status] Value is Math.pow(2, 1024) 
+PASS [INPUT in NUMBER status] Value is Math.pow(-2, 1024) 
+PASS [INPUT in NUMBER status] Value is a string that can not be coverted to a number 
+PASS [INPUT in NUMBER status] The value attribute is empty string 
+PASS [INPUT in CHECKBOX status] The required attribute is not set 
+PASS [INPUT in CHECKBOX status] The checked attribute is true 
+FAIL [INPUT in CHECKBOX status] The checked attribute is false assert_true: The validity.valueMissing should be true. expected true got false
+PASS [INPUT in RADIO status] The required attribute is not set 
+PASS [INPUT in RADIO status] The checked attribute is true 
+FAIL [INPUT in RADIO status] The checked attribute is false assert_true: The validity.valueMissing should be true. expected true got false
+PASS [INPUT in FILE status] The required attribute is not set 
+PASS [INPUT in FILE status] The Files attribute is null 
+PASS [select]  The required attribute is not set 
+PASS [select]  Selected the option with value equals to 1 
+PASS [select]  Selected the option with value equals to empty 
+PASS [textarea]  The required attribute is not set 
+PASS [textarea]  The value is not empty 
+PASS [textarea]  The value is empty 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationvalidityvalueMissinghtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-valueMissing.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-valueMissing.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-valueMissing.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,160 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;The constraint validation API Test: element.validity.valueMissing&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-validitystate-valuemissing&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-constraint-validation-api&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;support/validator.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  var testElements = [
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;text&quot;, &quot;search&quot;, &quot;tel&quot;, &quot;url&quot;, &quot;email&quot;, &quot;password&quot;],
+      testData: [
+        {conditions: {required: false, value: &quot;&quot;}, expected: false, name: &quot;[target] The required attribute is not set&quot;},
+        {conditions: {required: true, value: &quot;abc&quot;}, expected: false, name: &quot;[target] The value is not empty and required is true&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: true, name: &quot;[target] The value is empty and required is true&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;datetime&quot;],
+      testData: [
+        {conditions: {required: false, value: &quot;&quot;}, expected: false, name: &quot;[target] The required attribute is not set&quot;},
+        {conditions: {required: true, value: &quot;2000-12-10T12:00:00Z&quot;}, expected: false, name: &quot;[target] Valid global date and time string(2000-12-10T12:00:00Z)&quot;},
+        {conditions: {required: true, value: &quot;2000-12-10 12:00Z&quot;}, expected: false, name: &quot;[target] Valid global date and time string(2000-12-10 12:00Z)&quot;},
+        {conditions: {required: true, value: &quot;1979-10-14T12:00:00.001-04:00&quot;}, expected: false, name: &quot;[target] Valid global date and time string(1979-10-14T12:00:00.001-04:00)&quot;},
+        {conditions: {required: true, value: &quot;8592-01-01T02:09+02:09&quot;}, expected: false, name: &quot;[target] Valid global date and time string(8592-01-01T02:09+02:09)&quot;},
+        {conditions: {required: true, value: 1234567}, expected: true, name: &quot;[target] The value attribute is a number(1234567)&quot;},
+        {conditions: {required: true, value: new Date()}, expected: true, name: &quot;[target] The value attribute is a Date object&quot;},
+        {conditions: {required: true, value: &quot;1979-10-99 99:99Z&quot;}, expected: true, name: &quot;[target] Invalid global date and time string(1979-10-99 99:99Z)&quot;},
+        {conditions: {required: true, value: &quot;1979-10-14 12:00:00&quot;}, expected: true, name: &quot;[target] Invalid global date and time string(1979-10-14 12:00:00)&quot;},
+        {conditions: {required: true, value: &quot;2001-12-21  12:00Z&quot;}, expected: true, name: &quot;[target] Invalid global date and time string(2001-12-21  12:00Z)-two white space&quot;},
+        {conditions: {required: true, value: &quot;abc&quot;}, expected: true, name: &quot;[target] the value attribute is a string(abc)&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: true, name: &quot;[target] The value attribute is empty string&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;date&quot;],
+      testData: [
+        {conditions: {required: false, value: &quot;&quot;}, expected: false, name: &quot;[target] The required attribute is not set&quot;},
+        {conditions: {required: true, value: &quot;2000-12-10&quot;}, expected: false, name: &quot;[target] Valid date string(2000-12-10)&quot;},
+        {conditions: {required: true, value: &quot;9999-01-01&quot;}, expected: false, name: &quot;[target] Valid date string(9999-01-01)&quot;},
+        {conditions: {required: true, value: 1234567}, expected: true, name: &quot;[target] The value attribute is a number(1234567)&quot;},
+        {conditions: {required: true, value: new Date()}, expected: true, name: &quot;[target] The value attribute is a Date object&quot;},
+        {conditions: {required: true, value: &quot;9999-99-99&quot;}, expected: true, name: &quot;[target] Invalid date string(9999-99-99)&quot;},
+        {conditions: {required: true, value: &quot;37/01/01&quot;}, expected: true, name: &quot;[target] Invalid date string(37-01-01)&quot;},
+        {conditions: {required: true, value: &quot;2000/01/01&quot;}, expected: true, name: &quot;[target] Invalid date string(2000/01/01)&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: true, name: &quot;[target] The value attribute is empty string&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;month&quot;],
+      testData: [
+        {conditions: {required: false, value: &quot;&quot;}, expected: false, name: &quot;[target] The required attribute is not set&quot;},
+        {conditions: {required: true, value: &quot;2000-12&quot;}, expected: false, name: &quot;[target] Valid month string(2000-12)&quot;},
+        {conditions: {required: true, value: &quot;9999-01&quot;}, expected: false, name: &quot;[target] Valid month string(9999-01)&quot;},
+        {conditions: {required: true, value: 1234567}, expected: true, name: &quot;[target] The value attribute is a number(1234567)&quot;},
+        {conditions: {required: true, value: new Date()}, expected: true, name: &quot;[target] The value attribute is a Date object&quot;},
+        {conditions: {required: true, value: &quot;2000-99&quot;}, expected: true, name: &quot;[target] Invalid month string(2000-99)&quot;},
+        {conditions: {required: true, value: &quot;37-01&quot;}, expected: true, name: &quot;[target] Invalid month string(37-01)&quot;},
+        {conditions: {required: true, value: &quot;2000/01&quot;}, expected: true, name: &quot;[target] Invalid month string(2000/01)&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: true, name: &quot;[target] The value attribute is empty string&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;week&quot;],
+      testData: [
+        {conditions: {required: false, value: &quot;&quot;}, expected: false, name: &quot;[target] The required attribute is not set&quot;},
+        {conditions: {required: true, value: &quot;2000-W12&quot;}, expected: false, name: &quot;[target] Valid week string(2000-W12)&quot;},
+        {conditions: {required: true, value: &quot;9999-W01&quot;}, expected: false, name: &quot;[target] Valid week string(9999-W01)&quot;},
+        {conditions: {required: true, value: 1234567}, expected: true, name: &quot;[target] The value attribute is a number(1234567)&quot;},
+        {conditions: {required: true, value: new Date()}, expected: true, name: &quot;[target] The value attribute is a Date object&quot;},
+        {conditions: {required: true, value: &quot;2000-W99&quot;}, expected: true, name: &quot;[target] Invalid week string(2000-W99)&quot;},
+        {conditions: {required: true, value: &quot;2000-W00&quot;}, expected: true, name: &quot;[target] invalid week string(2000-W00)&quot;},
+        {conditions: {required: true, value: &quot;2000-w01&quot;}, expected: true, name: &quot;[target] invalid week string(2000-w01)&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: true, name: &quot;[target] The value attribute is empty string&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;time&quot;],
+      testData: [
+        {conditions: {required: false, value: &quot;&quot;}, expected: false, name: &quot;[target] The required attribute is not set&quot;},
+        {conditions: {required: true, value: &quot;12:00:00&quot;}, expected: false, name: &quot;[target] Validtime string(12:00:00)&quot;},
+        {conditions: {required: true, value: &quot;12:00&quot;}, expected: false, name: &quot;[target] Validtime string(12:00)&quot;},
+        {conditions: {required: true, value: &quot;12:00:00.001&quot;}, expected: false, name: &quot;[target] Valid time string(12:00:60.001)&quot;},
+        {conditions: {required: true, value: &quot;12:00:00.01&quot;}, expected: false, name: &quot;[target] Valid time string(12:00:60.01)&quot;},
+        {conditions: {required: true, value: &quot;12:00:00.1&quot;}, expected: false, name: &quot;[target] Valid time string(12:00:60.1)&quot;},
+        {conditions: {required: true, value: 1234567}, expected: true, name: &quot;[target] The value attribute is a number(1234567)&quot;},
+        {conditions: {required: true, value: new Date()}, expected: true, name: &quot;[target] The value attribute is a time object&quot;},
+        {conditions: {required: true, value: &quot;25:00:00&quot;}, expected: true, name: &quot;[target] Invalid time string(25:00:00)&quot;},
+        {conditions: {required: true, value: &quot;12:60:00&quot;}, expected: true, name: &quot;[target] Invalid time string(12:60:00)&quot;},
+        {conditions: {required: true, value: &quot;12:00:60&quot;}, expected: true, name: &quot;[target] Invalid time string(12:00:60)&quot;},
+        {conditions: {required: true, value: &quot;12:00:00:001&quot;}, expected: true, name: &quot;[target] Invalid time string(12:00:00:001)&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: true, name: &quot;[target] The value attribute is empty string&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;number&quot;],
+      testData: [
+        {conditions: {required: false, value: &quot;&quot;}, expected: false, name: &quot;[target] The required attribute is not set&quot;},
+        {conditions: {required: true, value: &quot;123&quot;}, expected: false, name: &quot;[target] Value is an integer with a leading symbol '+'&quot;},
+        {conditions: {required: true, value: &quot;-123.45&quot;}, expected: false, name: &quot;[target] Value is a number with a '-' symbol&quot;},
+        {conditions: {required: true, value: &quot;123.01e-10&quot;}, expected: false, name: &quot;[target] Value is a number in scientific notation form(e is in lowercase)&quot;},
+        {conditions: {required: true, value: &quot;123.01E+10&quot;}, expected: false, name: &quot;[target] Value is a number in scientific notation form(E is in uppercase)&quot;},
+        {conditions: {required: true, value: &quot;-0&quot;}, expected: false, name: &quot;[target] Value is -0&quot;},
+        {conditions: {required: true, value: &quot; 123 &quot;}, expected: true, name: &quot;[target] Value is a number with some white spaces&quot;},
+        {conditions: {required: true, value: Math.pow(2, 1024)}, expected: true, name: &quot;[target] Value is Math.pow(2, 1024)&quot;},
+        {conditions: {required: true, value: Math.pow(-2, 1024)}, expected: true, name: &quot;[target] Value is Math.pow(-2, 1024)&quot;},
+        {conditions: {required: true, value: &quot;abc&quot;}, expected: true, name: &quot;[target] Value is a string that can not be coverted to a number&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: true, name: &quot;[target] The value attribute is empty string&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;checkbox&quot;, &quot;radio&quot;],
+      testData: [
+        {conditions: {required: false, checked: false, name: &quot;test1&quot;}, expected: false, name: &quot;[target] The required attribute is not set&quot;},
+        {conditions: {required: true, checked: true, name: &quot;test1&quot;}, expected: false, name: &quot;[target] The checked attribute is true&quot;},
+        {conditions: {required: true, checked: false, name: &quot;test1&quot;}, expected: true, name: &quot;[target] The checked attribute is false&quot;}
+      ]
+    },
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;file&quot;],
+      testData: [
+        {conditions: {required: false, files: null}, expected: false, name: &quot;[target] The required attribute is not set&quot;},
+        {conditions: {required: true, files: null}, expected: true, name: &quot;[target] The Files attribute is null&quot;}
+        //ToDo: Add a case to test the files is not null
+      ]
+    },
+    {
+      tag: &quot;select&quot;,
+      types: [],
+      testData: [
+        {conditions: {required: false, value: &quot;&quot;}, expected: false, name: &quot;[target] The required attribute is not set&quot;},
+        {conditions: {required: true, value: 1}, expected: false, name: &quot;[target] Selected the option with value equals to 1&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: true, name: &quot;[target] Selected the option with value equals to empty&quot;}
+      ]
+    },
+    {
+      tag: &quot;textarea&quot;,
+      types: [],
+      testData: [
+        {conditions: {required: false, value: &quot;&quot;}, expected: false, name: &quot;[target] The required attribute is not set&quot;},
+        {conditions: {required: true, value: &quot;abc&quot;}, expected: false, name: &quot;[target] The value is not empty&quot;},
+        {conditions: {required: true, value: &quot;&quot;}, expected: true  , name: &quot;[target] The value is empty&quot;}
+      ]
+    }
+  ];
+
+  validator.run_test(testElements, &quot;valueMissing&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationwillValidateexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-willValidate-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-willValidate-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-willValidate-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,62 @@
</span><ins>+
+
+PASS [INPUT in HIDDEN status] Must be barred from the constraint validation 
+PASS [INPUT in BUTTON status] Must be barred from the constraint validation 
+PASS [INPUT in RESET status] Must be barred from the constraint validation 
+PASS [BUTTON in BUTTON status] Must be barred from the constraint validation 
+PASS [BUTTON in RESET status] Must be barred from the constraint validation 
+FAIL [fieldset]  Must not be barred from the constraint validation assert_true: The willValidate attribute should be true. expected true got false
+FAIL [output]  Must not be barred from the constraint validation assert_true: The willValidate attribute should be true. expected true got false
+PASS [object]  Must be barred from the constraint validation 
+PASS [keygen]  Must be barred from the constraint validation 
+PASS [INPUT in TEXT status] Must be barred from the constraint validation if it is disabled 
+FAIL [INPUT in TEXT status] The willValidate attribute must be true if an elment is mutable assert_true: The willValidate attribute should be true. expected true got false
+PASS [INPUT in TEXT status] Must be barred from the constraint validation if it is readonly 
+PASS [INPUT in TEXT status] The willValidate attribute must be false if it has a datalist ancestor 
+PASS [INPUT in SEARCH status] Must be barred from the constraint validation if it is disabled 
+FAIL [INPUT in SEARCH status] The willValidate attribute must be true if an elment is mutable assert_true: The willValidate attribute should be true. expected true got false
+PASS [INPUT in SEARCH status] Must be barred from the constraint validation if it is readonly 
+PASS [INPUT in SEARCH status] The willValidate attribute must be false if it has a datalist ancestor 
+PASS [INPUT in TEL status] Must be barred from the constraint validation if it is disabled 
+FAIL [INPUT in TEL status] The willValidate attribute must be true if an elment is mutable assert_true: The willValidate attribute should be true. expected true got false
+PASS [INPUT in TEL status] Must be barred from the constraint validation if it is readonly 
+PASS [INPUT in TEL status] The willValidate attribute must be false if it has a datalist ancestor 
+PASS [INPUT in URL status] Must be barred from the constraint validation if it is disabled 
+FAIL [INPUT in URL status] The willValidate attribute must be true if an elment is mutable assert_true: The willValidate attribute should be true. expected true got false
+PASS [INPUT in URL status] Must be barred from the constraint validation if it is readonly 
+PASS [INPUT in URL status] The willValidate attribute must be false if it has a datalist ancestor 
+PASS [INPUT in EMAIL status] Must be barred from the constraint validation if it is disabled 
+FAIL [INPUT in EMAIL status] The willValidate attribute must be true if an elment is mutable assert_true: The willValidate attribute should be true. expected true got false
+PASS [INPUT in EMAIL status] Must be barred from the constraint validation if it is readonly 
+PASS [INPUT in EMAIL status] The willValidate attribute must be false if it has a datalist ancestor 
+PASS [INPUT in PASSWORD status] Must be barred from the constraint validation if it is disabled 
+FAIL [INPUT in PASSWORD status] The willValidate attribute must be true if an elment is mutable assert_true: The willValidate attribute should be true. expected true got false
+PASS [INPUT in PASSWORD status] Must be barred from the constraint validation if it is readonly 
+PASS [INPUT in PASSWORD status] The willValidate attribute must be false if it has a datalist ancestor 
+FAIL [INPUT in DATETIME status] The datetime type must be supported. assert_equals: The datetime type should be supported. expected &quot;datetime&quot; but got &quot;text&quot;
+FAIL [INPUT in DATE status] The date type must be supported. assert_equals: The date type should be supported. expected &quot;date&quot; but got &quot;text&quot;
+FAIL [INPUT in MONTH status] The month type must be supported. assert_equals: The month type should be supported. expected &quot;month&quot; but got &quot;text&quot;
+FAIL [INPUT in WEEK status] The week type must be supported. assert_equals: The week type should be supported. expected &quot;week&quot; but got &quot;text&quot;
+FAIL [INPUT in TIME status] The time type must be supported. assert_equals: The time type should be supported. expected &quot;time&quot; but got &quot;text&quot;
+PASS [INPUT in COLOR status] Must be barred from the constraint validation if it is disabled 
+FAIL [INPUT in COLOR status] The willValidate attribute must be true if an elment is mutable assert_true: The willValidate attribute should be true. expected true got false
+PASS [INPUT in COLOR status] Must be barred from the constraint validation if it is readonly 
+PASS [INPUT in COLOR status] The willValidate attribute must be false if it has a datalist ancestor 
+PASS [INPUT in FILE status] Must be barred from the constraint validation if it is disabled 
+FAIL [INPUT in FILE status] The willValidate attribute must be true if an elment is mutable assert_true: The willValidate attribute should be true. expected true got false
+PASS [INPUT in FILE status] Must be barred from the constraint validation if it is readonly 
+PASS [INPUT in FILE status] The willValidate attribute must be false if it has a datalist ancestor 
+PASS [INPUT in SUBMIT status] Must be barred from the constraint validation if it is disabled 
+FAIL [INPUT in SUBMIT status] The willValidate attribute must be true if an elment is mutable assert_true: The willValidate attribute should be true. expected true got false
+PASS [INPUT in SUBMIT status] Must be barred from the constraint validation if it is readonly 
+PASS [INPUT in SUBMIT status] The willValidate attribute must be false if it has a datalist ancestor 
+PASS [BUTTON in SUBMIT status] Must be barred from the constraint validation 
+FAIL [BUTTON in SUBMIT status] The willValidate attribute must be true if an elment is mutable assert_true: The willValidate attribute should be true. expected true got false
+PASS [BUTTON in SUBMIT status] The willValidate attribute must be false if it has a datalist ancestor 
+PASS [select]  Must be barred from the constraint validation 
+FAIL [select]  The willValidate attribute must be true if an elment is mutable assert_true: The willValidate attribute should be true. expected true got false
+PASS [select]  The willValidate attribute must be false if it has a datalist ancestor 
+PASS [textarea]  Must be barred from the constraint validation 
+FAIL [textarea]  The willValidate attribute must be true if an elment is mutable assert_true: The willValidate attribute should be true. expected true got false
+PASS [textarea]  The willValidate attribute must be false if it has a datalist ancestor 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsformvalidationwillValidatehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-willValidate.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-willValidate.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-willValidate.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,90 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;The constraint validation API Test: element.willValidate&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-cva-willvalidate&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-constraint-validation-api&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;support/validator.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  var testElements = [
+    //input in hidden, button and reset status must be barred from the constraint validation
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;hidden&quot;, &quot;button&quot;, &quot;reset&quot;],
+      testData: [{conditions: {}, expected: false, name: &quot;[target] Must be barred from the constraint validation&quot;}]
+    },
+    //button in button and reset status must be barred from the constraint validation
+    {
+      tag: &quot;button&quot;,
+      types: [&quot;button&quot;, &quot;reset&quot;],
+      testData: [{conditions: {}, expected: false, name: &quot;[target] Must be barred from the constraint validation&quot;}]
+    },
+    //FIELDSET, OUTPUT elements should not be barred from the constraint validation
+    {
+      tag: &quot;fieldset&quot;,
+      types: [],
+      testData: [{conditions: {}, expected: true, name: &quot;[target] Must not be barred from the constraint validation&quot;}]
+    },
+    {
+      tag: &quot;output&quot;,
+      types: [],
+      testData: [{conditions: {}, expected: true, name: &quot;[target] Must not be barred from the constraint validation&quot;}]
+    },
+    //OBJECT, KEYGEN, elements must be barred from the constraint validation
+    {
+      tag: &quot;object&quot;,
+      types: [],
+      testData: [{conditions: {}, expected: false, name: &quot;[target] Must be barred from the constraint validation&quot;}]
+    },
+    {
+      tag: &quot;keygen&quot;,
+      types: [],
+      testData: [{conditions: {}, expected: false, name: &quot;[target] Must be barred from the constraint validation&quot;}]
+    },
+    //If an element is disabled, it is barred from constraint validation.
+    //The willValidate attribute must be true if an element is mutable
+    //If the readonly attribute is specified on an INPUT element, the element is barred from constraint validation.
+    {
+      tag: &quot;input&quot;,
+      types: [&quot;text&quot;, &quot;search&quot;, &quot;tel&quot;, &quot;url&quot;, &quot;email&quot;, &quot;password&quot;, &quot;datetime&quot;, &quot;date&quot;, &quot;month&quot;, &quot;week&quot;, &quot;time&quot;, &quot;color&quot;, &quot;file&quot;, &quot;submit&quot;],
+      testData: [
+        {conditions: {disabled: true}, expected: false, name: &quot;[target] Must be barred from the constraint validation if it is disabled&quot;},
+        {conditions: {disabled: false, readOnly: false}, expected: true, name: &quot;[target] The willValidate attribute must be true if an elment is mutable&quot;},
+        {conditions: {readOnly: true}, expected: false, name: &quot;[target] Must be barred from the constraint validation if it is readonly&quot;},
+        {conditions: {disabled: false, readOnly: false}, expected: false, name: &quot;[target] The willValidate attribute must be false if it has a datalist ancestor&quot;, ancestor: &quot;datalist&quot;},
+      ]
+    },
+    {
+      tag: &quot;button&quot;,
+      types: [&quot;submit&quot;],
+      testData: [
+        {conditions: {disabled: true}, expected: false, name: &quot;[target] Must be barred from the constraint validation&quot;},
+        {conditions: {disabled: false}, expected: true, name: &quot;[target] The willValidate attribute must be true if an elment is mutable&quot;},
+        {conditions: {disabled: false}, expected: false, name: &quot;[target] The willValidate attribute must be false if it has a datalist ancestor&quot;, ancestor: &quot;datalist&quot;}
+      ]
+    },
+    {
+      tag: &quot;select&quot;,
+      types: [],
+      testData: [
+        {conditions: {disabled: true}, expected: false, name: &quot;[target] Must be barred from the constraint validation&quot;},
+        {conditions: {disabled: false}, expected: true, name: &quot;[target] The willValidate attribute must be true if an elment is mutable&quot;},
+        {conditions: {disabled: false}, expected: false, name: &quot;[target] The willValidate attribute must be false if it has a datalist ancestor&quot;, ancestor: &quot;datalist&quot;}
+      ]
+    },
+    {
+      tag: &quot;textarea&quot;,
+      types: [],
+      testData: [,
+        {conditions: {disabled: true}, expected: false, name: &quot;[target] Must be barred from the constraint validation&quot;},
+        {conditions: {disabled: false}, expected: true, name: &quot;[target] The willValidate attribute must be true if an elment is mutable&quot;},
+        {conditions: {disabled: false}, expected: false, name: &quot;[target] The willValidate attribute must be false if it has a datalist ancestor&quot;, ancestor: &quot;datalist&quot;}
+      ]
+    }
+  ];
+
+  validator.run_test(testElements, &quot;willValidate&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsinputwillvalidateexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/inputwillvalidate-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/inputwillvalidate-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/inputwillvalidate-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+PASS willValidate property returns true when required attribute exists 
+PASS willValidate property returns false when disabled attribute exists 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsinputwillvalidatehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/inputwillvalidate.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/inputwillvalidate.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/inputwillvalidate.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,26 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;&lt;head&gt;
+    &lt;title&gt;willValidate property on the input element&lt;/title&gt;
+    &lt;meta content=&quot;text/html; charset=UTF-8&quot; http-equiv=&quot;content-type&quot;&gt;
+    &lt;meta content=&quot;willValidate property on the input element&quot; name=&quot;description&quot;&gt;
+    &lt;link href=&quot;https://html.spec.whatwg.org/multipage/#dom-cva-willvalidate&quot; rel=&quot;help&quot;&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+
+    &lt;form action=&quot;http://www.example.com/&quot; style=&quot;display : none&quot;&gt;
+      &lt;input required=&quot;&quot; type=&quot;text&quot;&gt;
+      &lt;input disabled=&quot;&quot; type=&quot;text&quot;&gt;
+    &lt;/form&gt;
+
+    &lt;script type=&quot;text/javascript&quot;&gt;
+
+      test(function() {assert_true(document.getElementsByTagName(&quot;input&quot;)[0].willValidate)}, &quot;willValidate property returns true when required attribute exists&quot;);
+      test(function() {assert_false(document.getElementsByTagName(&quot;input&quot;)[1].willValidate)}, &quot;willValidate property returns false when disabled attribute exists&quot;);
+
+    &lt;/script&gt;
+
+&lt;/body&gt;&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintssupportvalidatorjs"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/support/validator.js (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/support/validator.js                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/support/validator.js        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,369 @@
</span><ins>+var validator = {
+  test_tooLong: function(ctl, data) {
+    var self = this;
+    test(function () {
+       self.pre_check(ctl, &quot;tooLong&quot;);
+      self.set_conditions(ctl, data.conditions);
+      if (data.dirty)
+        self.set_dirty(ctl);
+
+      if (data.expected)
+        assert_true(ctl.validity.tooLong, &quot;The validity.tooLong should be true.&quot;);
+      else
+        assert_false(ctl.validity.tooLong, &quot;The validity.tooLong should be false.&quot;);
+    }, data.name);
+  },
+
+  test_tooShort: function(ctl, data) {
+    var self = this;
+    test(function () {
+      self.pre_check(ctl, &quot;tooShort&quot;);
+      self.set_conditions(ctl, data.conditions);
+      if (data.dirty)
+        self.set_dirty(ctl);
+
+      if (data.expected)
+        assert_true(ctl.validity.tooShort, &quot;The validity.tooShort should be true.&quot;);
+      else
+        assert_false(ctl.validity.tooShort, &quot;The validity.tooShort should be false.&quot;);
+    }, data.name);
+  },
+
+  test_patternMismatch: function(ctl, data) {
+    var self = this;
+    test(function () {
+      self.pre_check(ctl, &quot;patternMismatch&quot;);
+      self.set_conditions(ctl, data.conditions);
+
+      if (data.expected)
+        assert_true(ctl.validity.patternMismatch, &quot;The validity.patternMismatch should be true.&quot;);
+      else
+        assert_false(ctl.validity.patternMismatch, &quot;The validity.patternMismatch should be false.&quot;);
+    }, data.name);
+  },
+
+  test_valueMissing: function(ctl, data) {
+    var self = this;
+    test(function () {
+      self.pre_check(ctl, &quot;valueMissing&quot;);
+      self.set_conditions(ctl, data.conditions);
+      if (data.expected)
+        assert_true(ctl.validity.valueMissing, &quot;The validity.valueMissing should be true.&quot;);
+      else
+        assert_false(ctl.validity.valueMissing, &quot;The validity.valueMissing should be false.&quot;);
+    }, data.name);
+  },
+
+  test_typeMismatch: function(ctl, data) {
+    var self = this;
+    test(function () {
+      self.pre_check(ctl, &quot;typeMismatch&quot;);
+      self.set_conditions(ctl, data.conditions);
+
+      if (data.expected)
+        assert_true(ctl.validity.typeMismatch, &quot;The validity.typeMismatch should be true.&quot;);
+      else
+        assert_false(ctl.validity.typeMismatch, &quot;The validity.typeMismatch should be false.&quot;);
+    }, data.name);
+  },
+
+  test_rangeOverflow: function(ctl, data) {
+    var self = this;
+    test(function () {
+      self.pre_check(ctl, &quot;rangeOverflow&quot;);
+      self.set_conditions(ctl, data.conditions);
+
+      if (data.expected)
+        assert_true(ctl.validity.rangeOverflow, &quot;The validity.rangeOverflow should be true.&quot;);
+      else
+        assert_false(ctl.validity.rangeOverflow, &quot;The validity.rangeOverflow should be false.&quot;);
+    }, data.name);
+  },
+
+  test_rangeUnderflow: function(ctl, data) {
+    var self = this;
+    test(function () {
+      self.pre_check(ctl, &quot;rangeUnderflow&quot;);
+      self.set_conditions(ctl, data.conditions);
+      if (data.expected)
+        assert_true(ctl.validity.rangeUnderflow, &quot;The validity.rangeUnderflow should be true.&quot;);
+      else
+        assert_false(ctl.validity.rangeUnderflow, &quot;The validity.rangeUnderflow should be false.&quot;);
+    }, data.name);
+  },
+
+  test_stepMismatch: function(ctl, data) {
+    var self = this;
+    test(function () {
+      self.pre_check(ctl, &quot;stepMismatch&quot;);
+      self.set_conditions(ctl, data.conditions);
+
+      if (data.expected)
+        assert_true(ctl.validity.stepMismatch, &quot;The validity.stepMismatch should be true.&quot;);
+      else
+        assert_false(ctl.validity.stepMismatch, &quot;The validity.stepMismatch should be false.&quot;);
+    }, data.name);
+  },
+
+  test_badInput: function(ctl, data) {
+    var self = this;
+    test(function () {
+      self.pre_check(ctl, &quot;badInput&quot;);
+      self.set_conditions(ctl, data.conditions);
+
+      if (data.expected)
+        assert_true(ctl.validity.badInput, &quot;The validity.badInput should be true.&quot;);
+      else
+        assert_false(ctl.validity.badInput, &quot;The validity.badInput should be false.&quot;);
+    }, data.name);
+  },
+
+  test_customError: function(ctl, data) {
+    var self = this;
+    test(function () {
+      self.pre_check(ctl, &quot;customError&quot;);
+      ctl.setCustomValidity(data.conditions.message);
+
+      if (data.expected) {
+        assert_true(ctl.validity.customError, &quot;The validity.customError attribute should be true.&quot;);
+        assert_equals(ctl.validationMessage, data.conditions.message,
+                      &quot;The validationMessage attribute should be '&quot; + data.conditions.message + &quot;'.&quot;);
+      } else {
+        assert_false(ctl.validity.customError, &quot;The validity.customError attribute should be false.&quot;);
+        assert_equals(ctl.validationMessage, &quot;&quot;, &quot;The validationMessage attribute must be empty.&quot;);
+      }
+    }, data.name);
+  },
+
+  test_isValid: function (ctl, data) {
+    var self = this;
+    test(function () {
+      self.set_conditions(ctl, data.conditions);
+      if (data.dirty)
+        self.set_dirty(ctl);
+
+      if (data.expected)
+        assert_true(ctl.validity.valid, &quot;The validity.valid should be true.&quot;);
+      else
+        assert_false(ctl.validity.valid, &quot;The validity.valid should be false.&quot;);
+    }, data.name);
+  },
+
+  test_willValidate: function(ctl, data) {
+    var self = this;
+    test(function () {
+      self.pre_check(ctl, &quot;willValidate&quot;);
+      self.set_conditions(ctl, data.conditions);
+      if (data.ancestor) {
+        var dl = document.createElement(&quot;datalist&quot;);
+        dl.appendChild(ctl);
+      }
+
+      if (data.expected)
+        assert_true(ctl.willValidate, &quot;The willValidate attribute should be true.&quot;);
+      else
+        assert_false(ctl.willValidate, &quot;The willValidate attribute should be false.&quot;);
+    }, data.name);
+  },
+
+  test_checkValidity: function (ctl, data) {
+    var self = this;
+    test(function () {
+      var eventFired = false;
+      self.pre_check(ctl, &quot;checkValidity&quot;);
+      self.set_conditions(ctl, data.conditions);
+      if (data.dirty)
+        self.set_dirty(ctl);
+
+      on_event(ctl, &quot;invalid&quot;, function(e){
+        assert_equals(e.type, &quot;invalid&quot;, &quot;The invalid event should be fired.&quot;);
+        eventFired = true;
+      });
+
+      if (data.expected) {
+        assert_true(ctl.checkValidity(), &quot;The checkValidity method should be true.&quot;);
+        assert_false(eventFired, &quot;The invalid event should not be fired.&quot;);
+      } else {
+        assert_false(ctl.checkValidity(), &quot;The checkValidity method should be false.&quot;);
+        assert_true(eventFired, &quot;The invalid event should be fired.&quot;);
+      }
+    }, data.name);
+
+    test(function () {
+      var fm = document.createElement(&quot;form&quot;);
+      var ctl2 = ctl.cloneNode(true);
+
+      self.pre_check(ctl, &quot;checkValidity&quot;);
+      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, &quot;The checkValidity method of the element's form owner should return true.&quot;);
+      else
+        assert_false(result, &quot;The checkValidity method of the element's form owner should return false.&quot;);
+    }, data.name + &quot; (in a form)&quot;);
+  },
+
+  test_reportValidity: function (ctl, data) {
+    var self = this;
+    test(function () {
+      var eventFired = false;
+
+      self.pre_check(ctl, &quot;reportValidity&quot;);
+      self.set_conditions(ctl, data.conditions);
+      if (data.dirty)
+        self.set_dirty(ctl);
+
+      on_event(ctl, &quot;invalid&quot;, function(e){
+        assert_equals(e.type, &quot;invalid&quot;, &quot;The invalid event should be fired.&quot;);
+        eventFired = true;
+      });
+
+      if (data.expected) {
+        assert_true(ctl.reportValidity(), &quot;The reportValidity method should be true.&quot;);
+        assert_false(eventFired, &quot;The invalid event should not be fired.&quot;);
+      } else {
+        assert_true(eventFired, &quot;The invalid event should be fired.&quot;);
+        assert_false(ctl.reportValidity(), &quot;The reportValidity method should be false.&quot;);
+      }
+    }, data.name);
+
+    test(function () {
+      var fm = document.createElement(&quot;form&quot;);
+      var ctl2 = ctl.cloneNode(true);
+
+      self.pre_check(ctl, &quot;reportValidity&quot;);
+      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, &quot;The reportValidity method of the element's form owner should return true.&quot;);
+      else
+        assert_false(result, &quot;The reportValidity method of the element's form owner should return false.&quot;);
+    }, data.name + &quot; (in a form)&quot;);
+  },
+
+  test_support_type: function (ctl, typ, testName) {
+    test(function () {
+      assert_equals(ctl.type, typ, &quot;The &quot; + typ + &quot; type should be supported.&quot;);
+    }, testName);
+  },
+
+  set_conditions: function (ctl, obj) {
+    [&quot;required&quot;, &quot;pattern&quot;, &quot;step&quot;, &quot;max&quot;, &quot;min&quot;, &quot;maxlength&quot;,
+     &quot;value&quot;, &quot;multiple&quot;, &quot;checked&quot;, &quot;selected&quot;].forEach(function(item) {
+      ctl.removeAttribute(item);
+    });
+    for (var attr in obj) {
+      if (obj[attr] || obj[attr] === &quot;&quot;)
+        ctl[attr] = obj[attr];
+    }
+  },
+
+  set_dirty: function(ctl) {
+    document.disgnMode = &quot;on&quot;;
+    ctl.focus();
+    var old_value = ctl.value;
+    ctl.value = &quot;a&quot;;
+    ctl.value = old_value;
+    ctl.setSelectionRange(ctl.value.length, ctl.value.length);
+    document.execCommand(&quot;Delete&quot;);
+    document.disgnMode = &quot;off&quot;;
+  },
+
+  pre_check: function(ctl, item) {
+    switch (item) {
+      case &quot;willValidate&quot;:
+        assert_true(item in ctl, &quot;The &quot; + item + &quot; attribute doesn't exist.&quot;);
+        break;
+      case &quot;checkValidity&quot;:
+      case &quot;reportValidity&quot;:
+        assert_true(item in ctl, &quot;The &quot; + item + &quot; method doesn't exist.&quot;);
+        break;
+      case &quot;tooLong&quot;:
+      case &quot;tooShort&quot;:
+      case &quot;patternMismatch&quot;:
+      case &quot;typeMismatch&quot;:
+      case &quot;stepMismatch&quot;:
+      case &quot;rangeOverflow&quot;:
+      case &quot;rangeUnderflow&quot;:
+      case &quot;valueMissing&quot;:
+      case &quot;badInput&quot;:
+      case &quot;valid&quot;:
+        assert_true(&quot;validity&quot; in ctl, &quot;The validity attribute doesn't exist.&quot;);
+        assert_true(item in ctl.validity, &quot;The &quot; + item + &quot; attribute doesn't exist.&quot;);
+        break;
+      case &quot;customError&quot;:
+        assert_true(&quot;validity&quot; in ctl, &quot;The validity attribute doesn't exist.&quot;);
+        assert_true(&quot;setCustomValidity&quot; in ctl, &quot;The validity attribute doesn't exist.&quot;);
+        assert_true(&quot;validationMessage&quot; in ctl, &quot;The validity attribute doesn't exist.&quot;);
+        assert_true(item in ctl.validity, &quot;The &quot; + item + &quot; attribute doesn't exist.&quot;);
+        break;
+    }
+  },
+
+  run_test: function (testee, method) {
+    var testMethod = &quot;test_&quot; + method;
+    if (typeof this[testMethod] !== &quot;function&quot;) {
+      return false;
+    }
+
+    var ele = null,
+        prefix = &quot;&quot;;
+
+    for (var i = 0; i &lt; testee.length; i++) {
+      if (testee[i].types.length &gt; 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 = &quot;[&quot; + testee[i].tag.toUpperCase() + &quot; in &quot; + testee[i].types[typ].toUpperCase() + &quot; status] &quot;;
+          if (ele.type != testee[i].types[typ]) {
+            this.test_support_type(
+              ele,
+              testee[i].types[typ],
+              prefix + &quot;The &quot; + testee[i].types[typ] + &quot; type must be supported.&quot;
+            );
+            continue;
+          }
+
+          for (var j = 0; j &lt; 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 = &quot;[&quot; + testee[i].tag + &quot;] &quot;;
+
+        if (testElements[i].tag === &quot;select&quot;) {
+          ele.add(new Option(&quot;test1&quot;, &quot;&quot;));
+          ele.add(new Option(&quot;test2&quot;, 1));
+        }
+
+        for (var item in testee[i].testData) {
+          testee[i].testData[item].name = testee[i].testData[item].name.replace(&quot;[target]&quot;, prefix);
+          this[testMethod](ele, testee[i].testData[item]);
+        }
+      }
+    }
+  }
+}
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintssupportw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/support/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/support/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/support/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/support/validator.js
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsconstraintsw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,34 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/contains.json
+/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-checkValidity.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-reportValidity.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validate.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-badInput.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-customError.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-patternMismatch.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-rangeOverflow.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-rangeUnderflow.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-stepMismatch.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-tooLong.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-tooShort.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-typeMismatch.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-valid.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-validity-valueMissing.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/form-validation-willValidate.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/constraints/inputwillvalidate.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsformcontrolinfrastructurecontainsjson"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-control-infrastructure/contains.json (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-control-infrastructure/contains.json                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-control-infrastructure/contains.json        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,14 @@
</span><ins>+[
+    {
+        &quot;id&quot;: &quot;a-form-control-s-value&quot;,
+        &quot;original_id&quot;: &quot;a-form-control's-value&quot;
+    },
+    {
+        &quot;id&quot;: &quot;mutability&quot;,
+        &quot;original_id&quot;: &quot;mutability&quot;
+    },
+    {
+        &quot;id&quot;: &quot;association-of-controls-and-forms&quot;,
+        &quot;original_id&quot;: &quot;association-of-controls-and-forms&quot;
+    }
+]
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsformcontrolinfrastructureformexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-control-infrastructure/form-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-control-infrastructure/form-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-control-infrastructure/form-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+button
+
+fieldset
+
+
+
+
+label
+
+object
+
+output
+
+
+
+
+
+
+PASS button.form 
+PASS fieldset.form 
+PASS input.form 
+PASS keygen.form 
+PASS label.form 
+PASS object.form 
+PASS output.form 
+PASS select.form 
+PASS textarea.form 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsformcontrolinfrastructureformhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-control-infrastructure/form.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-control-infrastructure/form.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-control-infrastructure/form.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,46 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;HTMLInputElement#form&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:Ms2ger@gmail.com&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;form id=&quot;form&quot;&gt;
+&lt;p&gt;&lt;button id=&quot;button&quot;&gt;button&lt;/button&gt;
+&lt;p&gt;&lt;fieldset id=&quot;fieldset&quot;&gt;fieldset&lt;/fieldset&gt;
+&lt;p&gt;&lt;input id=&quot;input&quot;&gt;
+&lt;p&gt;&lt;keygen id=&quot;keygen&quot;&gt;
+&lt;p&gt;&lt;label id=&quot;label&quot;&gt;label&lt;/label&gt;
+&lt;p&gt;&lt;object id=&quot;object&quot;&gt;object&lt;/object&gt;
+&lt;p&gt;&lt;output id=&quot;output&quot;&gt;output&lt;/output&gt;
+&lt;p&gt;&lt;select id=&quot;select&quot;&gt;&lt;option&gt;select&lt;/option&gt;&lt;/select&gt;
+&lt;p&gt;&lt;textarea id=&quot;textarea&quot;&gt;textarea&lt;/textarea&gt;
+&lt;/form&gt;
+&lt;script&gt;
+var form;
+setup(function() {
+  form = document.getElementById(&quot;form&quot;);
+  if (!form) {
+    throw new TypeError(&quot;Didn't find form&quot;);
+  }
+});
+
+var reassociateableElements = [
+  &quot;button&quot;,
+  &quot;fieldset&quot;,
+  &quot;input&quot;,
+  &quot;keygen&quot;,
+  &quot;label&quot;,
+  &quot;object&quot;,
+  &quot;output&quot;,
+  &quot;select&quot;,
+  &quot;textarea&quot;,
+];
+
+reassociateableElements.forEach(function(localName) {
+  test(function() {
+    var button = document.getElementById(localName);
+    assert_equals(button.form, form);
+  }, localName + &quot;.form&quot;);
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsformcontrolinfrastructurew3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-control-infrastructure/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-control-infrastructure/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-control-infrastructure/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/forms/form-control-infrastructure/contains.json
+/LayoutTests/http/tests/w3c/html/semantics/forms/form-control-infrastructure/form.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsformsubmission0containsjson"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-submission-0/contains.json (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-submission-0/contains.json                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-submission-0/contains.json        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,30 @@
</span><ins>+[
+    {
+        &quot;id&quot;: &quot;introduction-2&quot;,
+        &quot;original_id&quot;: &quot;introduction-2&quot;
+    },
+    {
+        &quot;id&quot;: &quot;implicit-submission&quot;,
+        &quot;original_id&quot;: &quot;implicit-submission&quot;
+    },
+    {
+        &quot;id&quot;: &quot;form-submission-algorithm&quot;,
+        &quot;original_id&quot;: &quot;form-submission-algorithm&quot;
+    },
+    {
+        &quot;id&quot;: &quot;constructing-form-data-set&quot;,
+        &quot;original_id&quot;: &quot;constructing-form-data-set&quot;
+    },
+    {
+        &quot;id&quot;: &quot;url-encoded-form-data&quot;,
+        &quot;original_id&quot;: &quot;url-encoded-form-data&quot;
+    },
+    {
+        &quot;id&quot;: &quot;multipart-form-data&quot;,
+        &quot;original_id&quot;: &quot;multipart-form-data&quot;
+    },
+    {
+        &quot;id&quot;: &quot;plain-text-form-data&quot;,
+        &quot;original_id&quot;: &quot;plain-text-form-data&quot;
+    }
+]
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsformsubmission0w3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-submission-0/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-submission-0/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/form-submission-0/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/forms/form-submission-0/contains.json
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsintroduction1containsjson"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/introduction-1/contains.json (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/introduction-1/contains.json                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/introduction-1/contains.json        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,34 @@
</span><ins>+[
+    {
+        &quot;id&quot;: &quot;writing-a-form-s-user-interface&quot;,
+        &quot;original_id&quot;: &quot;writing-a-form's-user-interface&quot;
+    },
+    {
+        &quot;id&quot;: &quot;implementing-the-server-side-processing-for-a-form&quot;,
+        &quot;original_id&quot;: &quot;implementing-the-server-side-processing-for-a-form&quot;
+    },
+    {
+        &quot;id&quot;: &quot;configuring-a-form-to-communicate-with-a-server&quot;,
+        &quot;original_id&quot;: &quot;configuring-a-form-to-communicate-with-a-server&quot;
+    },
+    {
+        &quot;id&quot;: &quot;client-side-form-validation&quot;,
+        &quot;original_id&quot;: &quot;client-side-form-validation&quot;
+    },
+    {
+        &quot;id&quot;: &quot;enabling-client-side-automatic-filling-of-form-controls&quot;,
+        &quot;original_id&quot;: &quot;enabling-client-side-automatic-filling-of-form-controls&quot;
+    },
+    {
+        &quot;id&quot;: &quot;improving-the-user-experience-on-mobile-devices&quot;,
+        &quot;original_id&quot;: &quot;improving-the-user-experience-on-mobile-devices&quot;
+    },
+    {
+        &quot;id&quot;: &quot;the-difference-between-the-field-type-the-autofill-field-name-and-the-input-modality&quot;,
+        &quot;original_id&quot;: &quot;the-difference-between-the-field-type,-the-autofill-field-name,-and-the-input-modality&quot;
+    },
+    {
+        &quot;id&quot;: &quot;input-author-notes&quot;,
+        &quot;original_id&quot;: &quot;input-author-notes&quot;
+    }
+]
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsintroduction1w3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/introduction-1/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/introduction-1/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/introduction-1/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/forms/introduction-1/contains.json
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsresettingaformresetformexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/resetting-a-form/reset-form-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/resetting-a-form/reset-form-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/resetting-a-form/reset-form-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+
+PASS Resetting the form by calling the reset() method 
+PASS Resetting the form by clicking the button in reset status 
+PASS Resetting the form by clicking the input in reset status 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsresettingaformresetformhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/resetting-a-form/reset-form.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/resetting-a-form/reset-form.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/resetting-a-form/reset-form.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,105 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;HTML Test: Resetting a form&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#concept-form-reset&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#category-reset&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;form name=&quot;fm1&quot; style=&quot;display:none&quot;&gt;
+  &lt;input value=&quot;abc&quot; id=&quot;ipt1&quot; /&gt;
+  &lt;input id=&quot;ipt2&quot; /&gt;
+  &lt;input type=&quot;radio&quot; id=&quot;rd1&quot; checked=&quot;checked&quot; /&gt;
+  &lt;input type=&quot;radio&quot; id=&quot;rd2&quot;/&gt;
+  &lt;input type=&quot;checkbox&quot; id=&quot;cb1&quot; checked=&quot;checked&quot; /&gt;
+  &lt;input type=&quot;checkbox&quot; id=&quot;cb2&quot; /&gt;
+  &lt;textarea id=&quot;ta&quot;&gt;abc&lt;/textarea&gt;
+  &lt;!-- &lt;keygen id=&quot;kg&quot;&gt;&lt;/keygen&gt; --&gt;
+  &lt;output id=&quot;opt&quot;&gt;5&lt;/output&gt;
+  &lt;select id=&quot;slt1&quot;&gt;
+    &lt;option value=&quot;1&quot;&gt;ITEM1&lt;/option&gt;
+    &lt;option value=&quot;2&quot;&gt;ITEM2&lt;/option&gt;
+  &lt;/select&gt;
+  &lt;select id=&quot;slt2&quot;&gt;
+    &lt;option value=&quot;1&quot;&gt;ITEM1&lt;/option&gt;
+    &lt;option value=&quot;2&quot; selected&gt;ITEM2&lt;/option&gt;
+  &lt;/select&gt;
+  &lt;select id=&quot;slt3&quot; multiple&gt;
+    &lt;option value=&quot;1&quot;&gt;ITEM1&lt;/option&gt;
+    &lt;option value=&quot;2&quot; selected&gt;ITEM2&lt;/option&gt;
+    &lt;option value=&quot;3&quot; selected&gt;ITEM3&lt;/option&gt;
+  &lt;/select&gt;
+  &lt;button  id=&quot;rst1&quot; type=&quot;reset&quot;&gt;Reset1&lt;/button&gt;
+  &lt;input id=&quot;rst2&quot; type=&quot;reset&quot; value=&quot;Reset2&quot; /&gt;
+&lt;/form&gt;
+&lt;script&gt;
+
+runTest(function() {
+  document.forms.fm1.reset();
+}, &quot;by calling the reset() method&quot;);
+
+runTest(function() {
+  document.getElementById(&quot;rst1&quot;).click();
+}, &quot;by clicking the button in reset status&quot;);
+
+runTest(function() {
+  document.getElementById(&quot;rst2&quot;).click();
+}, &quot;by clicking the input in reset status&quot;);
+
+function setPreconditions (arg) {
+  document.getElementById(&quot;ipt1&quot;).value = &quot;123&quot;;
+  document.getElementById(&quot;ipt2&quot;).value = &quot;123&quot;;
+  document.getElementById(&quot;rd1&quot;).checked = false;
+  document.getElementById(&quot;rd2&quot;).checked = true;
+  document.getElementById(&quot;cb1&quot;).checked = false;
+  document.getElementById(&quot;cb2&quot;).checked = true;
+  document.getElementById(&quot;ta&quot;).value = &quot;123&quot;;
+  document.getElementById(&quot;opt&quot;).textContent = &quot;abc&quot;;
+  document.getElementById(&quot;slt1&quot;).value = &quot;2&quot;;
+  document.getElementById(&quot;slt2&quot;).value = &quot;1&quot;;
+  document.getElementById(&quot;slt3&quot;).options[0].selected = true;
+  document.getElementById(&quot;slt3&quot;).options[1].selected = false;
+  document.getElementById(&quot;slt3&quot;).options[2].selected = false;
+
+  assert_equals(document.getElementById(&quot;ipt1&quot;).value, &quot;123&quot;, &quot;Precondition 1&quot;);
+  assert_equals(document.getElementById(&quot;ipt2&quot;).value, &quot;123&quot;, &quot;Precondition 2&quot;);
+  assert_false(document.getElementById(&quot;rd1&quot;).checked, &quot;Precondition 3&quot;);
+  assert_true(document.getElementById(&quot;rd2&quot;).checked, &quot;Precondition 4&quot;);
+  assert_false(document.getElementById(&quot;cb1&quot;).checked, &quot;Precondition 5&quot;);
+  assert_true(document.getElementById(&quot;cb2&quot;).checked, &quot;Precondition 6&quot;);
+  assert_equals(document.getElementById(&quot;ta&quot;).value, &quot;123&quot;, &quot;Precondition 17&quot;);
+  assert_equals(document.getElementById(&quot;opt&quot;).textContent, &quot;abc&quot;, &quot;Precondition 8&quot;);
+  assert_true(document.getElementById(&quot;slt1&quot;).options[1].selected, &quot;Precondition 9&quot;);
+  assert_true(document.getElementById(&quot;slt2&quot;).options[0].selected, &quot;Precondition 10&quot;);
+  assert_true(document.getElementById(&quot;slt3&quot;).options[0].selected, &quot;Precondition 11&quot;);
+  assert_false(document.getElementById(&quot;slt3&quot;).options[1].selected, &quot;Precondition 12&quot;);
+  assert_false(document.getElementById(&quot;slt3&quot;).options[2].selected, &quot;Precondition 13&quot;);
+}
+
+function runTest(reset, description) {
+  test(function() {
+    setPreconditions(&quot;Setting preconditions for resetting &quot; + description);
+    reset();
+    assert_equals(document.getElementById(&quot;ipt1&quot;).value, &quot;abc&quot;, &quot;The value of the input element in text status should be 'abc'.&quot;);
+    assert_equals(document.getElementById(&quot;ipt2&quot;).value, &quot;&quot;, &quot;The value of the input element in text status should be empty string.&quot;);
+    assert_true(document.getElementById(&quot;rd1&quot;).checked, &quot;The checked attribute of the input element in radio should be true.&quot;);
+    assert_false(document.getElementById(&quot;rd2&quot;).checked, &quot;The checked attribute of the input element in radio should be false.&quot;);
+    assert_true(document.getElementById(&quot;cb1&quot;).checked, &quot;The checked attribute of the input element in checkbox should be true.&quot;);
+    assert_false(document.getElementById(&quot;cb2&quot;).checked, &quot;The checked attribute of the input element in checkbox should be false.&quot;);
+    assert_equals(document.getElementById(&quot;ta&quot;).value, document.getElementById(&quot;ta&quot;).textContent, &quot;The value attribute of the textarea element should be reset.&quot;);
+    assert_equals(document.getElementById(&quot;ta&quot;).value, &quot;abc&quot;, &quot;The value attribute of the textarea element should be 'abc'.&quot;);
+    assert_equals(document.getElementById(&quot;opt&quot;).textContent, document.getElementById(&quot;opt&quot;).defaultValue, &quot;The textContent of the output element should be reset.&quot;);
+    assert_equals(document.getElementById(&quot;opt&quot;).textContent, &quot;abc&quot;, &quot;The textContent of the output element should be 'abc'.&quot;);
+    assert_true(document.getElementById(&quot;slt1&quot;).options[0].selected, &quot;The first option in the select element should be selected.&quot;);
+    assert_false(document.getElementById(&quot;slt1&quot;).options[1].selected, &quot;The second option in the select element should not be selected.&quot;);
+    assert_false(document.getElementById(&quot;slt2&quot;).options[0].selected, &quot;The first option in the select element should not be selected.&quot;);
+    assert_true(document.getElementById(&quot;slt2&quot;).options[1].selected, &quot;The second option in the select element should be selected.&quot;);
+    assert_false(document.getElementById(&quot;slt3&quot;).options[0].selected, &quot;The first option in the select element with multiple attribute should not be selected.&quot;);
+    assert_true(document.getElementById(&quot;slt3&quot;).options[1].selected, &quot;The second option in the select element with multiple attribute should be selected.&quot;);
+    assert_true(document.getElementById(&quot;slt3&quot;).options[2].selected, &quot;The third option in the select element with multiple attribute should be selected.&quot;);
+    //TODO: The keygen reset algorithm
+  }, &quot;Resetting the form &quot; + description);
+}
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsresettingaformw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/resetting-a-form/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/resetting-a-form/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/resetting-a-form/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/forms/resetting-a-form/reset-form.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstextfieldselectionoriginalidjson"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/original-id.json (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/original-id.json                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/original-id.json        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1 @@
</span><ins>+{&quot;original_id&quot;:&quot;textFieldSelection&quot;}
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstextfieldselectionselectionexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,13 @@
</span><ins>+
+
+PASS test if selection text is correct for input 
+PASS test if selection text is correct for textarea 
+PASS test if non-ascii selection text is correct for input 
+PASS test if non-ascii selection text is correct for textarea 
+PASS test SelectionStart offset for input 
+FAIL test SelectionStart offset for textarea assert_equals: SelectionStart offset without selection expected 10 but got 0
+PASS test SelectionEnd offset for input 
+FAIL test SelectionEnd offset for textarea assert_equals: SelectionEnd offset without selection expected 10 but got 0
+PASS test SelectionDirection for input 
+PASS test SelectionDirection for textarea 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstextfieldselectionselectionnotapplicationexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection-not-application-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection-not-application-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection-not-application-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,58 @@
</span><ins>+
+FAIL text field selection for the input hidden assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; threw object &quot;TypeError: Type error&quot; that is not a DOMException InvalidStateError: property &quot;code&quot; is equal to undefined, expected 11
+FAIL text field selection for the input email assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; did not throw
+FAIL text field selection for the input datetime assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; did not throw
+FAIL text field selection for the input date assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; did not throw
+FAIL text field selection for the input month assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; did not throw
+FAIL text field selection for the input week assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; did not throw
+FAIL text field selection for the input time assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; did not throw
+FAIL text field selection for the input number assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; did not throw
+FAIL text field selection for the input range assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; threw object &quot;TypeError: Type error&quot; that is not a DOMException InvalidStateError: property &quot;code&quot; is equal to undefined, expected 11
+FAIL text field selection for the input color assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; threw object &quot;TypeError: Type error&quot; that is not a DOMException InvalidStateError: property &quot;code&quot; is equal to undefined, expected 11
+FAIL text field selection for the input checkbox assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; threw object &quot;TypeError: Type error&quot; that is not a DOMException InvalidStateError: property &quot;code&quot; is equal to undefined, expected 11
+FAIL text field selection for the input radio assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; threw object &quot;TypeError: Type error&quot; that is not a DOMException InvalidStateError: property &quot;code&quot; is equal to undefined, expected 11
+FAIL text field selection for the input file assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; threw object &quot;TypeError: Type error&quot; that is not a DOMException InvalidStateError: property &quot;code&quot; is equal to undefined, expected 11
+FAIL text field selection for the input submit assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; threw object &quot;TypeError: Type error&quot; that is not a DOMException InvalidStateError: property &quot;code&quot; is equal to undefined, expected 11
+FAIL text field selection for the input image assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; threw object &quot;TypeError: Type error&quot; that is not a DOMException InvalidStateError: property &quot;code&quot; is equal to undefined, expected 11
+FAIL text field selection for the input reset assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; threw object &quot;TypeError: Type error&quot; that is not a DOMException InvalidStateError: property &quot;code&quot; is equal to undefined, expected 11
+FAIL text field selection for the input button assert_throws: function &quot;function (){
+        el.selectionStart;
+      }&quot; threw object &quot;TypeError: Type error&quot; that is not a DOMException InvalidStateError: property &quot;code&quot; is equal to undefined, expected 11
+PASS text field selection for the input text 
+PASS text field selection for the input search 
+PASS text field selection for the input tel 
+PASS text field selection for the input url 
+PASS text field selection for the input password 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstextfieldselectionselectionnotapplicationtextareaexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection-not-application-textarea-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection-not-application-textarea-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection-not-application-textarea-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS text field selection for the input textarea 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstextfieldselectionselectionnotapplicationtextareahtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection-not-application-textarea.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection-not-application-textarea.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection-not-application-textarea.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,20 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;text field selection (textarea)&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#textFieldSelection&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  test(function() {
+    var el = document.createElement(&quot;textarea&quot;);
+    assert_equals(el.selectionStart, 0);
+    assert_equals(el.selectionEnd, 0);
+    el.selectionStart = 1;
+    el.selectionEnd = 1;
+    el.selectionDirection = &quot;forward&quot;;
+    el.setRangeText(&quot;foobar&quot;);
+    el.setSelectionRange(0, 1);
+  }, &quot;text field selection for the input textarea&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstextfieldselectionselectionnotapplicationhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection-not-application.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection-not-application.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection-not-application.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,48 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;text field selection&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#textFieldSelection&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  var types = [&quot;hidden&quot;, &quot;email&quot;, &quot;datetime&quot;, &quot;date&quot;, &quot;month&quot;, &quot;week&quot;, &quot;time&quot;, &quot;number&quot;, &quot;range&quot;, &quot;color&quot;, &quot;checkbox&quot;, &quot;radio&quot;, &quot;file&quot;, &quot;submit&quot;, &quot;image&quot;, &quot;reset&quot;, &quot;button&quot;]; //types for which the API doesn't apply
+  var types2 = [&quot;text&quot;, &quot;search&quot;, &quot;tel&quot;, &quot;url&quot;, &quot;password&quot;]; //types for which the API applies
+
+  types.forEach(function(type){
+    test(function(){
+      var el = document.createElement(&quot;input&quot;);
+      el.type = type;
+      assert_throws(&quot;InvalidStateError&quot;, function(){
+        el.selectionStart;
+      });
+      assert_throws(&quot;InvalidStateError&quot;, function(){
+        el.selectionEnd;
+      });
+      assert_throws(&quot;InvalidStateError&quot;, function(){
+        el.selectionDirection;
+      });
+      assert_throws(&quot;InvalidStateError&quot;, function(){
+        el.setRangeText(&quot;foobar&quot;);
+      });
+      assert_throws(&quot;InvalidStateError&quot;, function(){
+        el.setSelectionRange(0, 1);
+      });
+    }, &quot;text field selection for the input &quot; + type);
+  });
+
+  types2.forEach(function(type) {
+    test(function() {
+      var el = document.createElement(&quot;input&quot;);
+      el.type = type;
+      assert_equals(el.selectionStart, 0);
+      assert_equals(el.selectionEnd, 0);
+      el.selectionStart = 1;
+      el.selectionEnd = 1;
+      el.selectionDirection = &quot;forward&quot;;
+      el.setRangeText(&quot;foobar&quot;);
+      el.setSelectionRange(0, 1);
+    }, &quot;text field selection for the input &quot; + type);
+  });
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstextfieldselectionselectionhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,144 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;title&gt;test if select() API returns correct attributes&lt;/title&gt;
+&lt;meta charset=&quot;UTF-8&quot;&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Koji Tashiro&quot; href=&quot;mailto:koji.tashiro@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/multipage/association-of-controls-and-forms.html#textFieldSelection&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+
+&lt;script&gt;
+  var body = document.getElementsByTagName(&quot;body&quot;).item(0);
+  var dirs = ['forward', 'backward', 'none'];
+  var sampleText = &quot;0123456789&quot;;
+
+  var createInputElement = function(value) {
+    var el = document.createElement(&quot;input&quot;);
+    el.type = &quot;text&quot;;
+    el.value = value;
+    body.appendChild(el);
+    return el;
+  };
+
+  var createTextareaElement = function(value) {
+    var el = document.createElement(&quot;textarea&quot;);
+    el.value = value;
+    body.appendChild(el);
+    return el;
+  };
+
+
+  test(function() {
+    var text = 'a';
+    for (var i=0; i&lt;255; i++) {
+      var el = createInputElement(text);
+      el.select();
+      var selectionText = el.value.substring(el.selectionStart, el.selectionEnd);
+      assert_equals(selectionText, text, &quot;Selection text mismatched&quot;);
+      el.parentNode.removeChild(el);
+      text += 'a';
+    }
+  }, &quot;test if selection text is correct for input&quot;);
+
+
+  test(function() {
+    var text = 'a';
+    for (var i=0; i&lt;255; i++) {
+      var el = createTextareaElement(text);
+      el.select();
+      var selectionText = el.value.substring(el.selectionStart, el.selectionEnd);
+      assert_equals(selectionText, text, &quot;Selection text mismatched&quot;);
+      el.parentNode.removeChild(el);
+      text += 'a';
+    }
+  }, &quot;test if selection text is correct for textarea&quot;);
+
+
+  test(function() {
+    var text = 'あ';
+    for (var i=0; i&lt;255; i++) {
+      var el = createInputElement(text);
+      el.select();
+      var selectionText = el.value.substring(el.selectionStart, el.selectionEnd);
+      assert_equals(selectionText, text, &quot;Selection text mismatched&quot;);
+      el.parentNode.removeChild(el);
+      text += 'あ';
+    }
+  }, &quot;test if non-ascii selection text is correct for input&quot;);
+
+
+  test(function() {
+    var text = 'あ';
+    for (var i=0; i&lt;255; i++) {
+      var el = createTextareaElement(text);
+      el.select();
+      var selectionText = el.value.substring(el.selectionStart, el.selectionEnd);
+      assert_equals(selectionText, text, &quot;Selection text mismatched&quot;);
+      el.parentNode.removeChild(el);
+      text += 'あ';
+    }
+  }, &quot;test if non-ascii selection text is correct for textarea&quot;);
+
+
+  test(function() {
+    var el = createInputElement(sampleText);
+    // If there is no selection, then it must return the offset(in logical order)
+    // to the character that immediately follows the text entry cursor.
+    assert_equals(el.selectionStart, el.value.length, &quot;SelectionStart offset without selection&quot;);
+    el.select();
+    assert_equals(el.selectionStart, 0, &quot;SelectionStart offset&quot;);
+    el.parentNode.removeChild(el);
+  }, &quot;test SelectionStart offset for input&quot;);
+
+
+  test(function() {
+    var el = createTextareaElement(sampleText);
+    // If there is no selection, then it must return the offset(in logical order)
+    // to the character that immediately follows the text entry cursor.
+    assert_equals(el.selectionStart, el.value.length, &quot;SelectionStart offset without selection&quot;);
+    el.select();
+    assert_equals(el.selectionStart, 0, &quot;SelectionStart offset&quot;);
+    el.parentNode.removeChild(el);
+  }, &quot;test SelectionStart offset for textarea&quot;);
+
+
+  test(function() {
+    var el = createInputElement(sampleText);
+    // If there is no selection, then it must return the offset(in logical order)
+    // to the character that immediately follows the text entry cursor.
+    assert_equals(el.selectionEnd, el.value.length, &quot;SelectionEnd offset without selection&quot;);
+    el.select();
+    assert_equals(el.selectionEnd, el.value.length, &quot;SelectionEnd offset&quot;);
+    el.parentNode.removeChild(el);
+  }, &quot;test SelectionEnd offset for input&quot;);
+
+
+  test(function() {
+    var el = createTextareaElement(sampleText);
+    // If there is no selection, then it must return the offset(in logical order)
+    // to the character that immediately follows the text entry cursor.
+    assert_equals(el.selectionEnd, el.value.length, &quot;SelectionEnd offset without selection&quot;);
+    el.select();
+    assert_equals(el.selectionEnd, el.value.length, &quot;SelectionEnd offset&quot;);
+    el.parentNode.removeChild(el);
+  }, &quot;test SelectionEnd offset for textarea&quot;);
+
+
+  test(function() {
+    var el = createInputElement(sampleText);
+    assert_in_array(el.selectionDirection, dirs, &quot;SelectionDirection&quot;);
+    el.select();
+    assert_in_array(el.selectionDirection, dirs, &quot;SelectionDirection&quot;);
+    el.parentNode.removeChild(el);
+  }, &quot;test SelectionDirection for input&quot;);
+
+
+  test(function() {
+    var el = createInputElement(sampleText);
+    assert_in_array(el.selectionDirection, dirs, &quot;SelectionDirection&quot;);
+    el.select();
+    assert_in_array(el.selectionDirection, dirs, &quot;SelectionDirection&quot;);
+    el.parentNode.removeChild(el);
+  }, &quot;test SelectionDirection for textarea&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstextfieldselectiontextfieldselectionsetSelectionRangeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/textfieldselection-setSelectionRange-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/textfieldselection-setSelectionRange-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/textfieldselection-setSelectionRange-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,43 @@
</span><ins>+  
+
+PASS test of input.setSelectionRange 
+PASS input typeof(input.setSelectionRange)' 
+PASS input setSelectionRange return void 
+PASS input setSelectionRange(0,1) 
+PASS input setSelectionRange(0,input.value.length+1) 
+PASS input setSelectionRange(2,2) 
+PASS input setSelectionRange(2,1) 
+PASS input direction of setSelectionRange(0,1,&quot;backward&quot;) 
+PASS input direction of setSelectionRange(0,1,&quot;forward&quot;) 
+PASS input direction of setSelectionRange(0,1,&quot;none&quot;) 
+PASS input direction of setSelectionRange(0,1,&quot;hoge&quot;) 
+PASS input direction of setSelectionRange(0,1,&quot;BACKWARD&quot;) 
+PASS input direction of setSelectionRange(0,1) 
+PASS input setSelectionRange(&quot;string&quot;,1) 
+PASS input setSelectionRange(true,1) 
+PASS input setSelectionRange([],1) 
+PASS input setSelectionRange({},1) 
+PASS input setSelectionRange(NaN,1) 
+PASS input setSelectionRange(null,1) 
+PASS input setSelectionRange(undefined,1) 
+PASS test of textarea.setSelectionRange 
+PASS textarea typeof(input.setSelectionRange)' 
+PASS textarea setSelectionRange return void 
+PASS textarea setSelectionRange(0,1) 
+PASS textarea setSelectionRange(0,textarea.value.length+1) 
+PASS textarea setSelectionRange(2,2) 
+PASS textarea setSelectionRange(2,1) 
+PASS textarea direction of setSelectionRange(0,1,&quot;backward&quot;) 
+PASS textarea direction of setSelectionRange(0,1,&quot;forward&quot;) 
+PASS textarea direction of setSelectionRange(0,1,&quot;none&quot;) 
+PASS textarea direction of setSelectionRange(0,1,&quot;hoge&quot;) 
+PASS textarea direction of setSelectionRange(0,1,&quot;BACKWARD&quot;) 
+PASS textarea direction of setSelectionRange(0,1) 
+FAIL textarea setSelectionRange(&quot;string&quot;,1) assert_equals: element.selectionStart should be 0 expected 1 but got 0
+PASS textarea setSelectionRange(true,1) 
+FAIL textarea setSelectionRange([],1) assert_equals: element.selectionStart should be 0 expected 1 but got 0
+FAIL textarea setSelectionRange({},1) assert_equals: element.selectionStart should be 0 expected 1 but got 0
+FAIL textarea setSelectionRange(NaN,1) assert_equals: element.selectionStart should be 0 expected 1 but got 0
+FAIL textarea setSelectionRange(null,1) assert_equals: element.selectionStart should be 0 expected 1 but got 0
+FAIL textarea setSelectionRange(undefined,1) assert_equals: element.selectionStart should be 0 expected 1 but got 0
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstextfieldselectiontextfieldselectionsetSelectionRangehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/textfieldselection-setSelectionRange.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/textfieldselection-setSelectionRange.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/textfieldselection-setSelectionRange.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,224 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;title&gt;Test of text field setSelectionRange&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Takeharu.Oshida&quot; href=&quot;mailto:georgeosddev@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-textarea/input-setselectionrange&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;div id=&quot;hide&quot; style=&quot;display: block&quot;&gt;
+  &lt;input id=&quot;a&quot; type=&quot;text&quot; value=&quot;abcde&quot;&gt;
+  &lt;textarea id=&quot;b&quot;&gt;abcde&lt;/textarea&gt;
+&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  var input = document.getElementById(&quot;a&quot;);
+  test(function() {
+    assert_equals(typeof(input.setSelectionRange), &quot;function&quot;, &quot;element must have 'setSelectionRange' function&quot;);
+  },&quot;input typeof(input.setSelectionRange)'&quot;);
+
+  test(function() {
+    assert_equals(input.setSelectionRange(0,1,&quot;forward&quot;),undefined,&quot;setSelectionRange is void functuon&quot;);
+  },&quot;input setSelectionRange return void&quot;);
+
+  test(function() {
+    input.setSelectionRange(0,1)
+    assert_equals(input.selectionStart, 0, &quot;element.selectionStart should be 0&quot;);
+    assert_equals(input.selectionEnd, 1, &quot;element.selectionEnd should be 1&quot;);
+  },'input setSelectionRange(0,1)');
+
+  test(function() {
+    input.setSelectionRange(0,input.value.length+1)
+    assert_equals(input.selectionEnd, input.value.length, &quot;Arguments greater than the length of the value of the text field must be treated as pointing at the end of the text field&quot;);
+  },'input setSelectionRange(0,input.value.length+1)');
+
+  test(function() {
+    input.setSelectionRange(2,2)
+    assert_equals(input.selectionStart, 2, &quot;If end is less than or equal to start then the start of the selection and the end of the selection must both be placed immediately before the character with offset end&quot;);
+    assert_equals(input.selectionEnd, 2, &quot;If end is less than or equal to start then the start of the selection and the end of the selection must both be placed immediately before the character with offset end&quot;);
+  },'input setSelectionRange(2,2)');
+
+  test(function() {
+    input.setSelectionRange(2,1)
+    assert_equals(input.selectionStart, 1, &quot;If end is less than or equal to start then the start of the selection and the end of the selection must both be placed immediately before the character with offset end&quot;);
+    assert_equals(input.selectionEnd, 1, &quot;If end is less than or equal to start then the start of the selection and the end of the selection must both be placed immediately before the character with offset end&quot;);
+  },'input setSelectionRange(2,1)');
+
+  test(function() {
+    input.setSelectionRange(0,1,&quot;backward&quot;)
+    assert_equals(input.selectionDirection, &quot;backward&quot;, 'The direction of the selection must be set to backward if direction is a case-sensitive match for the string &quot;backward&quot;');
+  },'input direction of setSelectionRange(0,1,&quot;backward&quot;)');
+
+  test(function() {
+    input.setSelectionRange(0,1,&quot;forward&quot;)
+    assert_equals(input.selectionDirection, &quot;forward&quot;, 'The direction of the selection must be set to forward if direction is a case-sensitive match for the string &quot;forward&quot;');
+  },'input direction of setSelectionRange(0,1,&quot;forward&quot;)');
+
+  test(function() {
+    input.setSelectionRange(0,1,&quot;none&quot;)
+    assert_equals(input.selectionDirection, &quot;none&quot;, 'The direction of the selection must be set to forward if direction is a case-sensitive match for the string &quot;none&quot;');
+  },'input direction of setSelectionRange(0,1,&quot;none&quot;)');
+
+  test(function() {
+    input.setSelectionRange(0,1,&quot;hoge&quot;)
+    assert_equals(input.selectionDirection, &quot;none&quot;, &quot;otherwise&quot;);
+  },'input direction of setSelectionRange(0,1,&quot;hoge&quot;)');
+
+  test(function() {
+    input.setSelectionRange(0,1,&quot;BACKWARD&quot;)
+    assert_equals(input.selectionDirection, &quot;none&quot;, &quot;selectionDirection should be 'none'&quot;);
+  },'input direction of setSelectionRange(0,1,&quot;BACKWARD&quot;)');
+
+  test(function() {
+    input.setSelectionRange(0,1)
+    assert_equals(input.selectionDirection, &quot;none&quot;, &quot;if the argument is omitted&quot;);
+  },'input direction of setSelectionRange(0,1)');
+
+  test(function() {
+    input.setSelectionRange(&quot;string&quot;,1);
+    assert_equals(input.selectionStart, 0, &quot;element.selectionStart should be 0&quot;);
+    assert_equals(input.selectionEnd, 1, &quot;element.selectionEnd should be 1&quot;);
+  },'input setSelectionRange(&quot;string&quot;,1)');
+
+  test(function() {
+    input.setSelectionRange(true,1);
+    assert_equals(input.selectionStart, 1, &quot;element.selectionStart should be 1&quot;);
+    assert_equals(input.selectionEnd, 1, &quot;element.selectionEnd should be 1&quot;);
+  },'input setSelectionRange(true,1)');
+
+  test(function() {
+    input.setSelectionRange([],1);
+    assert_equals(input.selectionStart, 0, &quot;element.selectionStart should be 0&quot;);
+    assert_equals(input.selectionEnd, 1, &quot;element.selectionEnd should be 1&quot;);
+  },'input setSelectionRange([],1)');
+
+  test(function() {
+    input.setSelectionRange({},1);
+    assert_equals(input.selectionStart, 0, &quot;element.selectionStart should be 0&quot;);
+    assert_equals(input.selectionEnd, 1, &quot;element.selectionEnd should be 1&quot;);
+  },'input setSelectionRange({},1)');
+
+  test(function() {
+    input.setSelectionRange(NaN,1);
+    assert_equals(input.selectionStart, 0, &quot;element.selectionStart should be 0&quot;);
+    assert_equals(input.selectionEnd, 1, &quot;element.selectionEnd should be 1&quot;);
+  },'input setSelectionRange(NaN,1)');
+
+  test(function() {
+    input.setSelectionRange(null,1);
+    assert_equals(input.selectionStart, 0, &quot;element.selectionStart should be 0&quot;);
+    assert_equals(input.selectionEnd, 1, &quot;element.selectionEnd should be 1&quot;);
+  },'input setSelectionRange(null,1)');
+
+  test(function() {
+    input.setSelectionRange(undefined,1);
+    assert_equals(input.selectionStart, 0, &quot;element.selectionStart should be 0&quot;);
+    assert_equals(input.selectionEnd, 1, &quot;element.selectionEnd should be 1&quot;);
+  },'input setSelectionRange(undefined,1)');
+},&quot;test of input.setSelectionRange&quot;);
+
+test(function() {
+  var textarea = document.getElementById(&quot;b&quot;);
+  test(function() {
+    assert_equals(typeof(textarea.setSelectionRange), &quot;function&quot;, &quot;element must have 'setSelectionRange' function&quot;);
+  },&quot;textarea typeof(input.setSelectionRange)'&quot;);
+
+  test(function() {
+    assert_equals(textarea.setSelectionRange(0,1,&quot;forward&quot;),undefined,&quot;setSelectionRange is void functuon&quot;);
+  },&quot;textarea setSelectionRange return void&quot;);
+
+  test(function() {
+    textarea.setSelectionRange(0,1)
+    assert_equals(textarea.selectionStart, 0, &quot;element.selectionStart should be 0&quot;);
+    assert_equals(textarea.selectionEnd, 1, &quot;element.selectionEnd should be 1&quot;);
+  },'textarea setSelectionRange(0,1)');
+
+  test(function() {
+    textarea.setSelectionRange(0,textarea.value.length+1)
+    assert_equals(textarea.selectionEnd, textarea.value.length, &quot;Arguments greater than the length of the value of the text field must be treated as pointing at the end of the text field&quot;);
+  },'textarea setSelectionRange(0,textarea.value.length+1)');
+
+  test(function() {
+    textarea.setSelectionRange(2,2)
+    assert_equals(textarea.selectionStart, 2, &quot;If end is less than or equal to start then the start of the selection and the end of the selection must both be placed immediately before the character with offset end&quot;);
+    assert_equals(textarea.selectionEnd, 2, &quot;If end is less than or equal to start then the start of the selection and the end of the selection must both be placed immediately before the character with offset end&quot;);
+  },'textarea setSelectionRange(2,2)');
+
+  test(function() {
+    textarea.setSelectionRange(2,1)
+    assert_equals(textarea.selectionStart, 1, &quot;If end is less than or equal to start then the start of the selection and the end of the selection must both be placed immediately before the character with offset end&quot;);
+    assert_equals(textarea.selectionEnd, 1, &quot;If end is less than or equal to start then the start of the selection and the end of the selection must both be placed immediately before the character with offset end&quot;);
+  },'textarea setSelectionRange(2,1)');
+
+  test(function() {
+    textarea.setSelectionRange(0,1,&quot;backward&quot;)
+    assert_equals(textarea.selectionDirection, &quot;backward&quot;, 'The direction of the selection must be set to backward if direction is a case-sensitive match for the string &quot;backward&quot;');
+  },'textarea direction of setSelectionRange(0,1,&quot;backward&quot;)');
+
+  test(function() {
+    textarea.setSelectionRange(0,1,&quot;forward&quot;)
+    assert_equals(textarea.selectionDirection, &quot;forward&quot;, 'The direction of the selection must be set to forward if direction is a case-sensitive match for the string &quot;forward&quot;');
+  },'textarea direction of setSelectionRange(0,1,&quot;forward&quot;)');
+
+  test(function() {
+    textarea.setSelectionRange(0,1,&quot;none&quot;)
+    assert_equals(textarea.selectionDirection, &quot;none&quot;, 'The direction of the selection must be set to forward if direction is a case-sensitive match for the string &quot;none&quot;');
+  },'textarea direction of setSelectionRange(0,1,&quot;none&quot;)');
+
+  test(function() {
+    textarea.setSelectionRange(0,1,&quot;hoge&quot;)
+    assert_equals(textarea.selectionDirection, &quot;none&quot;, &quot;otherwise&quot;);
+  },'textarea direction of setSelectionRange(0,1,&quot;hoge&quot;)');
+
+  test(function() {
+    textarea.setSelectionRange(0,1,&quot;BACKWARD&quot;)
+    assert_equals(textarea.selectionDirection, &quot;none&quot;, &quot;selectionDirection should be 'none'&quot;);
+  },'textarea direction of setSelectionRange(0,1,&quot;BACKWARD&quot;)');
+
+  test(function() {
+    textarea.setSelectionRange(0,1)
+    assert_equals(textarea.selectionDirection, &quot;none&quot;, &quot;if the argument is omitted&quot;);
+  },'textarea direction of setSelectionRange(0,1)');
+
+  test(function() {
+    textarea.setSelectionRange(&quot;string&quot;,1);
+    assert_equals(textarea.selectionStart, 1, &quot;element.selectionStart should be 0&quot;);
+    assert_equals(textarea.selectionEnd, 1, &quot;element.selectionStart should be 1&quot;);
+  },'textarea setSelectionRange(&quot;string&quot;,1)');
+
+  test(function() {
+    textarea.setSelectionRange(true,1);
+    assert_equals(textarea.selectionStart, 1, &quot;element.selectionStart should be 1&quot;);
+    assert_equals(textarea.selectionEnd, 1, &quot;element.selectionStart should be 1&quot;);
+  },'textarea setSelectionRange(true,1)');
+
+  test(function() {
+    textarea.setSelectionRange([],1);
+    assert_equals(textarea.selectionStart, 1, &quot;element.selectionStart should be 0&quot;);
+    assert_equals(textarea.selectionEnd, 1, &quot;element.selectionStart should be 1&quot;);
+  },'textarea setSelectionRange([],1)');
+
+  test(function() {
+    textarea.setSelectionRange({},1);
+    assert_equals(textarea.selectionStart, 1, &quot;element.selectionStart should be 0&quot;);
+    assert_equals(textarea.selectionEnd, 1, &quot;element.selectionStart should be 1&quot;);
+  },'textarea setSelectionRange({},1)');
+
+  test(function() {
+    textarea.setSelectionRange(NaN,1);
+    assert_equals(textarea.selectionStart, 1, &quot;element.selectionStart should be 0&quot;);
+    assert_equals(textarea.selectionEnd, 1, &quot;element.selectionStart should be 1&quot;);
+  },'textarea setSelectionRange(NaN,1)');
+
+  test(function() {
+    textarea.setSelectionRange(null,1);
+    assert_equals(textarea.selectionStart, 1, &quot;element.selectionStart should be 0&quot;);
+    assert_equals(textarea.selectionEnd, 1, &quot;element.selectionStart should be 1&quot;);
+  },'textarea setSelectionRange(null,1)');
+
+  test(function() {
+    textarea.setSelectionRange(undefined,1);
+    assert_equals(textarea.selectionStart, 1, &quot;element.selectionStart should be 0&quot;);
+    assert_equals(textarea.selectionEnd, 1, &quot;element.selectionStart should be 1&quot;);
+  },'textarea setSelectionRange(undefined,1)');
+},&quot;test of textarea.setSelectionRange&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstextfieldselectionw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,24 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/original-id.json
+/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/select-event.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection-not-application-textarea.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection-not-application.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/selection.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/textfieldselection-setRangeText.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/textfieldselection/textfieldselection-setSelectionRange.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthebuttonelementbuttoneventsexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-button-element/button-events-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-button-element/button-events-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-button-element/button-events-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+
+FAIL The submit event must be fired when click a button in submit status assert_true: The isTrusted attribute of the submit event shoud be true. expected true got undefined
+FAIL The reset event must be fired when click a button in reset status assert_true: The isTrusted attribute of the reset event shoud be true. expected true got undefined
+FAIL The show event must be fired when click a button in menu status assert_equals: The button type should be 'menu'. expected &quot;menu&quot; but got &quot;submit&quot;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthebuttonelementbuttoneventshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-button-element/button-events.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-button-element/button-events.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-button-element/button-events.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,66 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;HTML Test: Button - events&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-button-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;form name=&quot;fm1&quot; style=&quot;display:none&quot;&gt;
+  &lt;button id=&quot;btn&quot;&gt;BUTTON&lt;/button&gt;
+  &lt;button id=&quot;menu_btn&quot; type=&quot;menu&quot; menu=&quot;menu&quot;&gt;MENU BUTTON&lt;/button&gt;
+  &lt;menu id=&quot;menu&quot; label=&quot;MENU&quot;&gt;
+    &lt;li&gt;Menu item&lt;/li&gt;
+  &lt;/menu&gt;
+&lt;/form&gt;
+&lt;script&gt;
+
+var btn = document.getElementById(&quot;btn&quot;),
+    menu_btn = document.getElementById(&quot;menu_btn&quot;),
+    t1 = async_test(&quot;The submit event must be fired when click a button in submit status&quot;),
+    t2 = async_test(&quot;The reset event must be fired when click a button in reset status&quot;),
+    t3 = async_test(&quot;The show event must be fired when click a button in menu status&quot;);
+
+document.forms.fm1.onsubmit = t1.step_func(function (evt) {
+  evt.preventDefault();
+  assert_true(evt.isTrusted, &quot;The isTrusted attribute of the submit event shoud be true.&quot;);
+  assert_true(evt.bubbles, &quot;The bubbles attribute of the submit event shoud be true.&quot;);
+  assert_true(evt.cancelable, &quot;The cancelable attribute of the submit event shoud be true.&quot;);
+  assert_true(evt instanceof Event, &quot;The submit event is an instance of Event interface.&quot;);
+  t1.done();
+});
+
+document.forms.fm1.onreset = t2.step_func(function (evt) {
+  assert_true(evt.isTrusted, &quot;The isTrusted attribute of the reset event shoud be true.&quot;);
+  assert_true(evt.bubbles, &quot;The bubbles attribute of the reset event shoud be true.&quot;);
+  assert_true(evt.cancelable, &quot;The cancelable attribute of the reset event shoud be true.&quot;);
+  assert_true(evt instanceof Event, &quot;The reset event is an instance of Event interface.&quot;);
+  t2.done();
+});
+
+document.getElementById(&quot;menu&quot;).onshow = t3.step_func(function (evt) {
+  assert_true(evt.isTrusted, &quot;The isTrusted attribute of the show event shoud be true.&quot;);
+  assert_equals(evt.relatedTarget, menu_btn, &quot;The relatedTarget attribute should be initialized to the related button element.&quot;);
+  assert_true(evt.cancelable, &quot;The cancelable attribute of the show event shoud be true.&quot;);
+  assert_true(evt instanceof RelatedEvent, &quot;The show event is an instance of RelatedEvent interface.&quot;);
+  t3.done();
+});
+
+t1.step(function () {
+  btn.type = &quot;submit&quot;;
+  assert_equals(btn.type, &quot;submit&quot;, &quot;The button type should be 'submit'.&quot;);
+  btn.click();
+});
+
+t2.step(function () {
+  btn.type = &quot;reset&quot;;
+  assert_equals(btn.type, &quot;reset&quot;, &quot;The button type should be 'reset'.&quot;);
+  btn.click();
+});
+
+t3.step(function () {
+  assert_equals(menu_btn.type, &quot;menu&quot;, &quot;The button type should be 'menu'.&quot;);
+  menu_btn.click();
+});
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthebuttonelementbuttonvalidationexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-button-element/button-validation-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-button-element/button-validation-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-button-element/button-validation-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+button button button button button button
+
+PASS missing type attribute 
+PASS submit type attribute 
+PASS reset type attribute 
+PASS button type attribute 
+FAIL menu type attribute assert_equals: expected &quot;menu&quot; but got &quot;submit&quot;
+PASS invalid type attribute 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthebuttonelementbuttonvalidationhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-button-element/button-validation.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-button-element/button-validation.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-button-element/button-validation.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,29 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;button element validation&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-button-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;button id=btn1&gt;button&lt;/button&gt;
+&lt;button id=btn2 type=submit&gt;button&lt;/button&gt;
+&lt;button id=btn3 type=reset&gt;button&lt;/button&gt;
+&lt;button id=btn4 type=button&gt;button&lt;/button&gt;
+&lt;button id=btn5 type=menu&gt;button&lt;/button&gt;
+&lt;button id=btn6 type=foobar&gt;button&lt;/button&gt;
+&lt;script&gt;
+  function willValid(element, expectedType, willValidate, desc) {
+    test(function(){
+      assert_equals(element.type, expectedType);
+      assert_equals(element.willValidate, willValidate);
+    }, desc);
+  }
+
+  willValid(document.getElementById('btn1'), &quot;submit&quot;, true, &quot;missing type attribute&quot;);
+  willValid(document.getElementById('btn2'), &quot;submit&quot;, true, &quot;submit type attribute&quot;);
+  willValid(document.getElementById('btn3'), &quot;reset&quot;, false, &quot;reset type attribute&quot;);
+  willValid(document.getElementById('btn4'), &quot;button&quot;, false, &quot;button type attribute&quot;);
+  willValid(document.getElementById('btn5'), &quot;menu&quot;, false, &quot;menu type attribute&quot;);
+  willValid(document.getElementById('btn6'), &quot;submit&quot;, true, &quot;invalid type attribute&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthebuttonelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-button-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-button-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-button-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-button-element/button-events.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-button-element/button-validation.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthedatalistelementdatalistoptionsexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-datalist-element/datalistoptions-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-datalist-element/datalistoptions-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-datalist-element/datalistoptions-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+Number:   Select number:  
+
+FAIL options label/value undefined is not an object (evaluating 'datalist.options.length')
+PASS If an element has a datalist element ancestor, it is barred from constraint validation 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthedatalistelementdatalistoptionshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-datalist-element/datalistoptions.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-datalist-element/datalistoptions.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-datalist-element/datalistoptions.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,43 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Datalist element options&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#the-datalist-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;label&gt;
+  Number:
+  &lt;input list=numbers&gt;
+&lt;/label&gt;
+&lt;datalist id=numbers&gt;
+  &lt;label&gt; Select number:
+    &lt;select id=num&gt;
+      &lt;option label=&quot;zero&quot; value=&quot;0&quot;&gt;
+      &lt;option label=&quot;one&quot; value=&quot;1&quot;&gt;
+      &lt;option label=&quot;two&quot;&gt;2
+      &lt;option label=&quot;three&quot; disabled&gt;3
+      &lt;option&gt;
+    &lt;/select&gt;
+  &lt;/label&gt;
+&lt;/datalist&gt;
+&lt;script&gt;
+  test(function(){
+    var datalist = document.getElementById('numbers'),
+        labels = [],
+        values = [];
+    assert_equals(datalist.options.length, 5);
+
+    for (var i = 0, len = datalist.options.length; i &lt; len; i++) {
+      assert_equals(datalist.options[i], datalist.options.item(i));
+      labels.push(datalist.options[i].label);
+      values.push(datalist.options[i].value);
+    }
+    assert_array_equals(labels, [&quot;zero&quot;, &quot;one&quot;, &quot;two&quot;, &quot;three&quot;, &quot;&quot;]);
+    assert_array_equals(values, [&quot;0&quot;, &quot;1&quot;, &quot;2&quot;, &quot;3&quot;, &quot;&quot;]);
+  }, &quot;options label/value&quot;);
+
+  test(function(){
+    assert_false(document.getElementById('num').willValidate);
+  }, &quot;If an element has a datalist element ancestor, it is barred from constraint validation&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthedatalistelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-datalist-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-datalist-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-datalist-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-datalist-element/datalistoptions.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthefieldsetelementHTMLFieldSetElementexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/HTMLFieldSetElement-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/HTMLFieldSetElement-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/HTMLFieldSetElement-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+
+PASS The type attribute must return 'fieldset' 
+PASS The form attribute must return the fieldset's form owner 
+PASS The elements must return an HTMLFormControlsCollection object 
+PASS The controls must root at the fieldset element 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthefieldsetelementHTMLFieldSetElementhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/HTMLFieldSetElement.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/HTMLFieldSetElement.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/HTMLFieldSetElement.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,54 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;HTML Test: HTMLFieldSetElement interface&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-fieldset-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;form name=&quot;fm1&quot; style=&quot;display:none&quot;&gt;
+  &lt;fieldset id=&quot;fs_outer&quot;&gt;
+  &lt;legend&gt;&lt;input type=&quot;checkbox&quot; name=&quot;cb&quot;&gt;&lt;/legend&gt;
+  &lt;input type=text name=&quot;txt&quot; id=&quot;ctl1&quot;&gt;
+  &lt;button id=&quot;ctl2&quot; name=&quot;btn&quot;&gt;BUTTON&lt;/button&gt;
+    &lt;fieldset id=&quot;fs_inner&quot;&gt;
+      &lt;input type=&quot;text&quot; name=&quot;txt_inner&quot;&gt;
+      &lt;progress name=&quot;pg&quot; value=&quot;0.5&quot;&gt;&lt;/progress&gt;
+    &lt;/fieldset&gt;
+  &lt;/fieldset&gt;
+&lt;/form&gt;
+&lt;script&gt;
+
+var fm1,
+    fs_outer,
+    children_outer;
+
+setup(function () {
+  fm1 = document.forms.fm1;
+  fs_outer = document.getElementById(&quot;fs_outer&quot;);
+  children_outer = fs_outer.elements;
+});
+
+test(function () {
+  assert_equals(fs_outer.type, &quot;fieldset&quot;, &quot;The value of type attribute is incorrect.&quot;);
+}, &quot;The type attribute must return 'fieldset'&quot;);
+
+test(function () {
+  assert_equals(fs_outer.form, fm1, &quot;The fieldset should have a form owner.&quot;);
+}, &quot;The form attribute must return the fieldset's form owner&quot;);
+
+test(function () {
+  assert_true(children_outer instanceof HTMLFormControlsCollection,
+              &quot;The elements attribute should be an HTMLFormControlsCollection object&quot;);
+}, &quot;The elements must return an HTMLFormControlsCollection object&quot;);
+
+test(function () {
+  var fs_inner = document.getElementById(&quot;fs_inner&quot;);
+  var children_inner = fs_inner.elements;
+  assert_array_equals(children_inner, [fm1.txt_inner],
+                      &quot;The items in the collection must be children of the inner fieldset element.&quot;);
+  assert_array_equals(children_outer, [fm1.cb, fm1.txt, fm1.btn, fm1.fs_inner, fm1.txt_inner],
+                      &quot;The items in the collection must be children of the outer fieldset element.&quot;);
+}, &quot;The controls must root at the fieldset element&quot;);
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthefieldsetelementdisabled001expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/disabled-001-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/disabled-001-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/disabled-001-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,29 @@
</span><ins>+    
+
+Name on card: 
+
+Card number: 
+
+
+
+
+Name on card: 
+
+Card number: 
+
+
+Name on card: 
+
+Card number: 
+
+
+Name on card: 
+
+Card number: 
+
+
+PASS The disabled attribute, when specified, causes all the form control descendants of the fieldset element, excluding those that are descendants of the fieldset element's first legend element child, if any, to be disabled. 
+PASS The first 'legend' element is not a child of the disabled fieldset: Its descendants should be disabled. 
+PASS The &lt;legend&gt; element is not a child of the disabled fieldset: Its descendants should be disabled. 
+PASS The &lt;legend&gt; element is child of the disabled fieldset: Its descendants should be disabled. 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthefieldsetelementdisabled001html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/disabled-001.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/disabled-001.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/disabled-001.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,71 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;Fieldset disabled&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-fieldset-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;form&gt;
+  &lt;fieldset id=fs disabled&gt;
+    &lt;legend&gt;
+      &lt;input type=checkbox id=clubc_l1&gt;
+      &lt;input type=radio id=clubr_l1&gt;
+      &lt;input type=text id=clubt_l1&gt;
+    &lt;/legend&gt;
+    &lt;legend&gt;&lt;input type=checkbox id=club_l2&gt;&lt;/legend&gt;
+    &lt;p&gt;&lt;label&gt;Name on card: &lt;input id=clubname required&gt;&lt;/label&gt;&lt;/p&gt;
+    &lt;p&gt;&lt;label&gt;Card number: &lt;input id=clubnum required pattern=&quot;[-0-9]+&quot;&gt;&lt;/label&gt;&lt;/p&gt;
+  &lt;/fieldset&gt;
+  &lt;fieldset id=fs2 disabled&gt;
+    &lt;p&gt;&lt;legend&gt;&lt;input type=checkbox id=club2&gt;&lt;/legend&gt;&lt;/p&gt;
+    &lt;p&gt;&lt;label&gt;Name on card: &lt;input id=clubname2 required&gt;&lt;/label&gt;&lt;/p&gt;
+    &lt;p&gt;&lt;label&gt;Card number: &lt;input id=clubnum2 required pattern=&quot;[-0-9]+&quot;&gt;&lt;/label&gt;&lt;/p&gt;
+  &lt;/fieldset&gt;
+  &lt;fieldset id=fs3 disabled&gt;
+    &lt;fieldset&gt;
+      &lt;legend&gt;&lt;input type=checkbox id=club3&gt;&lt;/legend&gt;
+    &lt;/fieldset&gt;
+    &lt;p&gt;&lt;label&gt;Name on card: &lt;input id=clubname3 required&gt;&lt;/label&gt;&lt;/p&gt;
+    &lt;p&gt;&lt;label&gt;Card number: &lt;input id=clubnum3 required pattern=&quot;[-0-9]+&quot;&gt;&lt;/label&gt;&lt;/p&gt;
+  &lt;/fieldset&gt;
+  &lt;fieldset id=fs4 disabled&gt;
+    &lt;legend&gt;
+      &lt;fieldset&gt;&lt;input type=checkbox id=club4&gt;&lt;/fieldset&gt;
+    &lt;/legend&gt;
+    &lt;p&gt;&lt;label&gt;Name on card: &lt;input id=clubname4 required&gt;&lt;/label&gt;&lt;/p&gt;
+    &lt;p&gt;&lt;label&gt;Card number: &lt;input id=clubnum4 required pattern=&quot;[-0-9]+&quot;&gt;&lt;/label&gt;&lt;/p&gt;
+  &lt;/fieldset&gt;
+&lt;/form&gt;
+&lt;script&gt;
+  test(function () {
+    assert_true(document.getElementById('fs').disabled, &quot;The fieldset is disabled&quot;);
+    assert_false(document.getElementById('clubname').willValidate, &quot;fieldset is disabled so is input 'clubname'&quot;);
+    assert_false(document.getElementById('clubnum').willValidate, &quot;fieldset is disabled so is input 'clubnum'&quot;);
+    assert_true(document.getElementById('clubc_l1').willValidate, &quot;input 'clubc_l1' is descendant of the first legend child of the fieldset. It should not be disabled&quot;);
+    assert_true(document.getElementById('clubr_l1').willValidate, &quot;input 'clubr_l1' is descendant of the first legend child of the fieldset. It should not be disabled&quot;);
+    assert_true(document.getElementById('clubt_l1').willValidate, &quot;input 'clubt_l1' is descendant of the first legend child of the fieldset. It should not be disabled&quot;);
+    assert_false(document.getElementById('club_l2').willValidate, &quot;input 'club_l2' is a descendant of the second legend child of the fieldset. It should be disabled&quot;);
+  }, &quot;The disabled attribute, when specified, causes all the form control descendants of the fieldset element, excluding those that are descendants of the fieldset element's first legend element child, if any, to be disabled.&quot;);
+
+  test(function () {
+    assert_true(document.getElementById('fs2').disabled, &quot;The fieldset is disabled&quot;);
+    assert_false(document.getElementById('clubname2').willValidate, &quot;fieldset is disabled so is input 'clubname2'&quot;);
+    assert_false(document.getElementById('clubnum2').willValidate, &quot;fieldset is disabled so is input 'clubnum2'&quot;);
+    assert_false(document.getElementById('club2').willValidate, &quot;the first legend is not a child of the disbled fieldset: input 'club2' is disabled&quot;);
+  }, &quot;The first 'legend' element is not a child of the disabled fieldset: Its descendants should be disabled.&quot;);
+
+  test(function () {
+    assert_true(document.getElementById('fs3').disabled, &quot;The fieldset is disabled&quot;);
+    assert_false(document.getElementById('clubname3').willValidate, &quot;fieldset is disabled so is input 'clubname3'&quot;);
+    assert_false(document.getElementById('clubnum3').willValidate, &quot;fieldset is disabled so is input 'clubnum3'&quot;);
+    assert_false(document.getElementById('club3').willValidate, &quot;the first legend is not a child of the disbled fieldset: input 'club3' is disabled&quot;);
+  }, &quot;The &lt;legend&gt; element is not a child of the disabled fieldset: Its descendants should be disabled.&quot;);
+
+  test(function () {
+    assert_true(document.getElementById('fs4').disabled, &quot;The fieldset is disabled&quot;);
+    assert_false(document.getElementById('clubname4').willValidate, &quot;fieldset is disabled so is input 'clubname4'&quot;);
+    assert_false(document.getElementById('clubnum4').willValidate, &quot;fieldset is disabled so is input 'clubnum4'&quot;);
+    assert_true(document.getElementById('club4').willValidate, &quot;the first legend a child of the disbled fieldset: input 'club4' is disabled&quot;);
+  }, &quot;The &lt;legend&gt; element is child of the disabled fieldset: Its descendants should be disabled.&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthefieldsetelementdisabled002expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/disabled-002-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/disabled-002-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/disabled-002-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+
+PASS A file input without a disabled attribute that is a descendant of a disabled fieldset should be disabled (modulo legend-related complications that don't apply here) 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthefieldsetelementdisabled002xhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/disabled-002.xhtml (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/disabled-002.xhtml                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/disabled-002.xhtml        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,25 @@
</span><ins>+&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
+&lt;!DOCTYPE html&gt;
+&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;
+&lt;head&gt;
+  &lt;title&gt;File input descendants of disabled fieldsets&lt;/title&gt;
+  &lt;link rel=&quot;author&quot; title=&quot;Chris Rebert&quot; href=&quot;http://chrisrebert.com&quot; /&gt;
+  &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#attr-fieldset-disabled&quot; /&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;form&gt;
+    &lt;fieldset id=&quot;fs&quot; disabled=&quot;disabled&quot;&gt;
+      &lt;input id=&quot;myfile&quot; type=&quot;file&quot; /&gt;
+    &lt;/fieldset&gt;
+  &lt;/form&gt;
+  &lt;script&gt;
+    test(function () {
+      assert_true(document.getElementById('fs').disabled, &quot;disabled fieldset should be disabled&quot;);
+      assert_false(document.getElementById('myfile').willValidate, &quot;form control descendant of disabled fieldset that is not also a descendant of a legend should be disabled&quot;);
+    }, &quot;A file input without a disabled attribute that is a descendant of a disabled fieldset should be disabled (modulo legend-related complications that don't apply here)&quot;);
+  &lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthefieldsetelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,20 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/HTMLFieldSetElement.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/disabled-001.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-fieldset-element/disabled-002.xhtml
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementformautocompleteexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-autocomplete-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-autocomplete-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-autocomplete-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,56 @@
</span><ins>+      
+      
+      
+      
+
+FAIL form autocomplete attribute missing assert_equals: expected &quot;on&quot; but got &quot;&quot;
+FAIL form autocomplete attribute on assert_equals: expected &quot;on&quot; but got &quot;&quot;
+FAIL form autocomplete attribute off assert_equals: expected &quot;off&quot; but got &quot;&quot;
+FAIL form autocomplete attribute invalid assert_equals: expected &quot;on&quot; but got &quot;foobar&quot;
+PASS name is an allowed autocomplete field name 
+PASS honorific-prefix is an allowed autocomplete field name 
+PASS given-name is an allowed autocomplete field name 
+PASS additional-name is an allowed autocomplete field name 
+PASS family-name is an allowed autocomplete field name 
+PASS honorific-suffix is an allowed autocomplete field name 
+PASS nickname is an allowed autocomplete field name 
+PASS organization-title is an allowed autocomplete field name 
+PASS organization is an allowed autocomplete field name 
+PASS street-address is an allowed autocomplete field name 
+PASS address-line1 is an allowed autocomplete field name 
+PASS address-line2 is an allowed autocomplete field name 
+PASS address-line3 is an allowed autocomplete field name 
+PASS locality is an allowed autocomplete field name 
+PASS region is an allowed autocomplete field name 
+PASS country is an allowed autocomplete field name 
+PASS country-name is an allowed autocomplete field name 
+PASS postal-code is an allowed autocomplete field name 
+PASS cc-name is an allowed autocomplete field name 
+PASS cc-given-name is an allowed autocomplete field name 
+PASS cc-additional-name is an allowed autocomplete field name 
+PASS cc-family-name is an allowed autocomplete field name 
+PASS cc-number is an allowed autocomplete field name 
+PASS cc-exp is an allowed autocomplete field name 
+PASS cc-exp-month is an allowed autocomplete field name 
+PASS cc-exp-year is an allowed autocomplete field name 
+PASS cc-csc is an allowed autocomplete field name 
+PASS cc-type is an allowed autocomplete field name 
+PASS language is an allowed autocomplete field name 
+PASS bday is an allowed autocomplete field name 
+PASS bday-day is an allowed autocomplete field name 
+PASS bday-month is an allowed autocomplete field name 
+PASS bday-year is an allowed autocomplete field name 
+PASS sex is an allowed autocomplete field name 
+PASS url is an allowed autocomplete field name 
+PASS photo is an allowed autocomplete field name 
+PASS tel is an allowed autocomplete field name 
+PASS tel-country-code is an allowed autocomplete field name 
+PASS tel-national is an allowed autocomplete field name 
+PASS tel-area-code is an allowed autocomplete field name 
+PASS tel-local is an allowed autocomplete field name 
+PASS tel-local-prefix is an allowed autocomplete field name 
+PASS tel-local-suffix is an allowed autocomplete field name 
+PASS tel-extension is an allowed autocomplete field name 
+PASS email is an allowed autocomplete field name 
+PASS impp is an allowed autocomplete field name 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementformautocompletehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-autocomplete.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-autocomplete.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-autocomplete.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,58 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;form autocomplete attribute&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#the-form-element&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#attr-fe-autocomplete&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;form name=&quot;missing_attribute&quot;&gt;
+  &lt;input&gt;
+  &lt;input autocomplete=&quot;on&quot;&gt;
+  &lt;input autocomplete=&quot;off&quot;&gt;
+  &lt;input autocomplete=&quot;foobar&quot;&gt;
+&lt;/form&gt;
+&lt;form name=&quot;autocomplete_on&quot; autocomplete=&quot;on&quot;&gt;
+  &lt;input&gt;
+  &lt;input autocomplete=&quot;on&quot;&gt;
+  &lt;input autocomplete=&quot;off&quot;&gt;
+  &lt;input autocomplete=&quot;foobar&quot;&gt;
+&lt;/form&gt;
+&lt;form name=&quot;autocomplete_off&quot; autocomplete=&quot;off&quot;&gt;
+  &lt;input&gt;
+  &lt;input autocomplete=&quot;on&quot;&gt;
+  &lt;input autocomplete=&quot;off&quot;&gt;
+  &lt;input autocomplete=&quot;foobar&quot;&gt;
+&lt;/form&gt;
+&lt;form name=&quot;autocomplete_invalid&quot; autocomplete=&quot;foobar&quot;&gt;
+  &lt;input&gt;
+  &lt;input autocomplete=&quot;on&quot;&gt;
+  &lt;input autocomplete=&quot;off&quot;&gt;
+  &lt;input autocomplete=&quot;foobar&quot;&gt;
+&lt;/form&gt;
+&lt;script&gt;
+  function autocompletetest(form, expectedValues, desc) {
+    test(function(){
+      assert_equals(form.autocomplete, expectedValues[0]);
+      assert_equals(form.elements[0].autocomplete, expectedValues[1]);
+      assert_equals(form.elements[1].autocomplete, expectedValues[2]);
+      assert_equals(form.elements[2].autocomplete, expectedValues[3]);
+      assert_equals(form.elements[3].autocomplete, expectedValues[4]);
+    }, desc);
+  }
+
+  autocompletetest(document.forms.missing_attribute, [&quot;on&quot;, &quot;on&quot;, &quot;on&quot;, &quot;off&quot;, &quot;&quot;], &quot;form autocomplete attribute missing&quot;);
+  autocompletetest(document.forms.autocomplete_on, [&quot;on&quot;, &quot;on&quot;, &quot;on&quot;, &quot;off&quot;, &quot;&quot;], &quot;form autocomplete attribute on&quot;);
+  autocompletetest(document.forms.autocomplete_off, [&quot;off&quot;, &quot;off&quot;, &quot;on&quot;, &quot;off&quot;, &quot;&quot;], &quot;form autocomplete attribute off&quot;);
+  autocompletetest(document.forms.autocomplete_invalid, [&quot;on&quot;, &quot;on&quot;, &quot;on&quot;, &quot;off&quot;, &quot;&quot;], &quot;form autocomplete attribute invalid&quot;);
+
+  var keywords = [ &quot;name&quot;, &quot;honorific-prefix&quot;, &quot;given-name&quot;, &quot;additional-name&quot;, &quot;family-name&quot;, &quot;honorific-suffix&quot;, &quot;nickname&quot;, &quot;organization-title&quot;, &quot;organization&quot;, &quot;street-address&quot;, &quot;address-line1&quot;, &quot;address-line2&quot;, &quot;address-line3&quot;, &quot;locality&quot;, &quot;region&quot;, &quot;country&quot;, &quot;country-name&quot;, &quot;postal-code&quot;, &quot;cc-name&quot;, &quot;cc-given-name&quot;, &quot;cc-additional-name&quot;, &quot;cc-family-name&quot;, &quot;cc-number&quot;, &quot;cc-exp&quot;, &quot;cc-exp-month&quot;, &quot;cc-exp-year&quot;, &quot;cc-csc&quot;, &quot;cc-type&quot;, &quot;language&quot;, &quot;bday&quot;, &quot;bday-day&quot;, &quot;bday-month&quot;, &quot;bday-year&quot;, &quot;sex&quot;, &quot;url&quot;, &quot;photo&quot;, &quot;tel&quot;, &quot;tel-country-code&quot;, &quot;tel-national&quot;, &quot;tel-area-code&quot;, &quot;
 tel-local&quot;, &quot;tel-local-prefix&quot;, &quot;tel-local-suffix&quot;, &quot;tel-extension&quot;, &quot;email&quot;, &quot;impp&quot; ];
+  keywords.forEach(function(keyword) {
+    test(function(){
+      var input = document.createElement(&quot;input&quot;);
+      input.setAttribute(&quot;autocomplete&quot;, keyword);
+      assert_equals(input.autocomplete, keyword);
+    }, keyword + &quot; is an allowed autocomplete field name&quot;);
+  });
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementformelementsinterfaces01expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-interfaces-01-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-interfaces-01-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-interfaces-01-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+
+PASS form.elements: interfaces 
+PASS Testing interface HTMLFormControlsCollection 
+PASS Testing interface HTMLCollection 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementformelementsinterfaces01html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-interfaces-01.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-interfaces-01.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-interfaces-01.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,20 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;form.elements: interfaces&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-form-elements&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#htmlformcontrolscollection&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  var form = document.createElement(&quot;form&quot;);
+  [&quot;HTMLFormControlsCollection&quot;, &quot;HTMLCollection&quot;].forEach(function(i) {
+    test(function() {
+      assert_true(i in window, &quot;Interface should exist&quot;)
+      assert_true(form.elements instanceof window[i],
+                  &quot;elements should implement the interface&quot;)
+    }, &quot;Testing interface &quot; + i)
+  })
+})
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementformelementsmatchesexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-matches-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-matches-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-matches-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+ 
+
+PASS input type=image should not be present in the form.elements collection 
+FAIL form.elements should include elements whose name starts with a number assert_equals: [2] expected (undefined) undefined but got (object) Element node &lt;input name=&quot;2&quot;&gt;&lt;/input&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementformelementsmatcheshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-matches.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-matches.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-matches.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,46 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;form.elements: matches&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-form-elements&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;div id=&quot;test&quot;&gt;
+&lt;form id=&quot;form&quot;&gt;
+&lt;input type=&quot;image&quot;&gt;
+&lt;/form&gt;
+&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  assert_equals(document.getElementById(&quot;form&quot;).elements.length, 0);
+}, &quot;input type=image should not be present in the form.elements collection&quot;)
+test(function() {
+  var form = document.getElementById(&quot;form&quot;);
+  var i = document.createElement(&quot;input&quot;);
+  i.name = &quot;2&quot;;
+  form.appendChild(i);
+  var j = document.createElement(&quot;input&quot;);
+  j.name = &quot;03&quot;;
+  form.appendChild(j);
+  assert_equals(form.elements[-1], undefined, '[-1]');
+  assert_equals(form.elements[&quot;-1&quot;], undefined, '[&quot;-1&quot;]');
+  assert_equals(form.elements[0], i, '[0]');
+  assert_equals(form.elements[&quot;0&quot;], i, '[&quot;0&quot;]');
+  assert_equals(form.elements[1], j, '[1]');
+  assert_equals(form.elements[&quot;1&quot;], j, '[&quot;1&quot;]');
+  assert_equals(form.elements[2], undefined, '[2]');
+  assert_equals(form.elements[&quot;2&quot;], undefined, '[&quot;2&quot;]');
+  assert_equals(form.elements[03], undefined, '[03]');
+  assert_equals(form.elements[&quot;03&quot;], j, '[&quot;03&quot;]');
+  assert_equals(form.elements.item(-1), null, 'item(-1)');
+  assert_equals(form.elements.item(0), i, 'item(0)');
+  assert_equals(form.elements.item(1), j, 'item(1)');
+  assert_equals(form.elements.item(2), null, 'item(2)');
+  assert_equals(form.elements.namedItem(&quot;2&quot;), i, 'namedItem(&quot;2&quot;)');
+  assert_equals(form.elements.namedItem(&quot;03&quot;), j, 'namedItem(&quot;03&quot;)');
+  assert_equals(form.elements.namedItem(&quot;3&quot;), null, 'namedItem(&quot;3&quot;)');
+  assert_array_equals(form.elements, [i, j]);
+  form.removeChild(i);
+  form.removeChild(j);
+}, &quot;form.elements should include elements whose name starts with a number&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementformelementsnameditem01expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-nameditem-01-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-nameditem-01-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-nameditem-01-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+
+
+FAIL RadioNodeList should exist assert_true: RadioNodeList should exist expected true got false
+PASS elements collection should return elements or RadioNodeLists 
+PASS elements collection should include fieldsets 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementformelementsnameditem01html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-nameditem-01.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-nameditem-01.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-nameditem-01.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,43 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;form.elements: namedItem&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-form-elements&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;div id=&quot;test&quot;&gt;
+&lt;form id=form&gt;
+&lt;input name=b id=i1&gt;
+&lt;input name=b id=i2&gt;
+&lt;/form&gt;
+&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  assert_true(&quot;RadioNodeList&quot; in window, &quot;RadioNodeList should exist&quot;);
+}, &quot;RadioNodeList should exist&quot;)
+test(function() {
+  var nl = document.forms.form.elements[&quot;b&quot;];
+  assert_true(nl instanceof NodeList, &quot;Should get a NodeList&quot;);
+  if (&quot;RadioNodeList&quot; in window) {
+    assert_true(nl instanceof RadioNodeList, &quot;Should get a RadioNodeList&quot;);
+  }
+  assert_array_equals(nl,
+                      [document.getElementById(&quot;i1&quot;),
+                       document.getElementById(&quot;i2&quot;)]);
+
+  var el = nl[0];
+  el.parentNode.removeChild(el);
+  assert_true(nl instanceof NodeList, &quot;Should get a NodeList&quot;);
+  if (&quot;RadioNodeList&quot; in window) {
+    assert_true(nl instanceof RadioNodeList, &quot;Should get a RadioNodeList&quot;);
+  }
+  assert_array_equals(nl, [document.getElementById(&quot;i2&quot;)]);
+  assert_equals(document.forms.form.elements[&quot;b&quot;], document.getElementById(&quot;i2&quot;));
+}, &quot;elements collection should return elements or RadioNodeLists&quot;)
+test(function() {
+  var fs = document.forms.form.appendChild(document.createElement(&quot;fieldset&quot;));
+  fs.name = &quot;fs&quot;;
+  assert_equals(document.forms.form.elements.fs, fs);
+  fs.parentNode.removeChild(fs);
+}, &quot;elements collection should include fieldsets&quot;)
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementformelementsnameditem02expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-nameditem-02-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-nameditem-02-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-nameditem-02-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+
+        
+
+FAIL form.elements should work correctly in the face of table syntax errors assert_array_equals: property 0, expected Element node &lt;input type=&quot;radio&quot; name=&quot;radio0&quot; id=&quot;r0&quot; value=&quot;0&quot;&gt;&lt;/input&gt; but got Element node &lt;input type=&quot;radio&quot; name=&quot;radio1&quot; id=&quot;r1&quot; value=&quot;1&quot;&gt;&lt;/input&gt;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementformelementsnameditem02html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-nameditem-02.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-nameditem-02.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-nameditem-02.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;form.elements: parsing&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-form-elements&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#parsing-main-intr&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;div id=&quot;test&quot;&gt;
+&lt;form id=form&gt;
+&lt;table&gt;
+&lt;tr&gt;
+&lt;td&gt;&lt;input type=&quot;radio&quot; name=&quot;radio1&quot; id=&quot;r1&quot; value=1&gt;&lt;/td&gt;
+&lt;td&gt;&lt;input type=&quot;radio&quot; name=&quot;radio2&quot; id=&quot;r2&quot; value=2&gt;&lt;/td&gt;
+&lt;input type=&quot;radio&quot;  name=&quot;radio0&quot; id=&quot;r0&quot; value=0&gt;
+&lt;/tr&gt;
+&lt;/table&gt;
+&lt;/form&gt;
+&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  var form = document.getElementById(&quot;form&quot;);
+  assert_array_equals(form.elements,
+                      [document.getElementById(&quot;r0&quot;),
+                       document.getElementById(&quot;r1&quot;),
+                       document.getElementById(&quot;r2&quot;)]);
+}, &quot;form.elements should work correctly in the face of table syntax errors&quot;)
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementformnameditemexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-nameditem-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-nameditem-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-nameditem-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,23 @@
</span><ins>+   
+                            
+                             
+
+
+  

+
+
+PASS Forms should not have an item method 
+PASS Forms should not have a namedItem method 
+PASS Name for a single element should work 
+PASS Calling item() on the NodeList returned from the named getter should work 
+PASS Indexed getter on the NodeList returned from the named getter should work 
+PASS Invoking a legacycaller on the NodeList returned from the named getter should not work 
+PASS All listed elements except input type=image should be present in the form 
+PASS Named elements should override builtins 
+PASS Named items outside the form should not be returned (no children) 
+PASS Named items outside the form should not be returned (one child) 
+PASS The form attribute should be taken into account for named getters (single element) 
+PASS The form attribute should be taken into account for named getters (multiple elements) 
+PASS Input should only be a named property on the innermost form that contains it 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementformnameditemhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-nameditem.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-nameditem.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-nameditem.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,239 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Form named getter&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;!--  XXX Nothing tests id attributes yet.  --&gt;
+&lt;!--  XXX Keygen.  --&gt;
+&lt;!--  XXX We also need tests for moving inputs and forms in the DOM.  --&gt;
+&lt;form&gt;
+&lt;input type=button name=button&gt;
+&lt;input type=radio name=radio value=x&gt;
+&lt;input type=radio name=radio value=y&gt;
+&lt;input type=radio name=radio value=z&gt;
+&lt;/form&gt;
+
+&lt;form&gt;
+&lt;button name=l1&gt;&lt;/button&gt;
+&lt;fieldset name=l2&gt;&lt;/fieldset&gt;
+&lt;input type=hidden name=l3&gt;
+&lt;input type=text name=l4&gt;
+&lt;input type=search name=l5&gt;
+&lt;input type=tel name=l6&gt;
+&lt;input type=url name=l7&gt;
+&lt;input type=email name=l8&gt;
+&lt;input type=password name=l9&gt;
+&lt;input type=datetime name=l10&gt;
+&lt;input type=date name=l11&gt;
+&lt;input type=month name=l12&gt;
+&lt;input type=week name=l13&gt;
+&lt;input type=time name=l14&gt;
+&lt;input type=datetime-local name=l15&gt;
+&lt;input type=number name=l16&gt;
+&lt;input type=range name=l17&gt;
+&lt;input type=color name=l18&gt;
+&lt;input type=checkbox name=l19&gt;
+&lt;input type=radio name=l20&gt;
+&lt;input type=file name=l21&gt;
+&lt;input type=submit name=l22&gt;
+&lt;input type=image name=l23&gt;
+&lt;input type=reset name=l24&gt;
+&lt;input type=button name=l25&gt;
+&lt;input type=foo name=l26&gt;
+&lt;input name=l27&gt;
+&lt;object name=l28&gt;&lt;/object&gt;
+&lt;output name=l29&gt;&lt;/output&gt;
+&lt;select name=l30&gt;&lt;/select&gt;
+&lt;textarea name=l31&gt;&lt;/textarea&gt;
+&lt;/form&gt;
+
+&lt;form&gt;
+&lt;!--  EventTarget  --&gt;
+&lt;input type=radio name=addEventListener&gt;
+&lt;input type=radio name=removeEventListener&gt;
+&lt;input type=radio name=dispatchEvent&gt;
+
+&lt;!--  Node  --&gt;
+&lt;input type=radio name=nodeType&gt;
+&lt;input type=radio name=nodeName&gt;
+&lt;input type=radio name=ownerDocument&gt;
+
+&lt;!--  Element  --&gt;
+&lt;input type=radio name=namespaceURI&gt;
+&lt;input type=radio name=prefix&gt;
+&lt;input type=radio name=localName&gt;
+
+&lt;!--  HTMLElement  --&gt;
+&lt;input type=radio name=title&gt;
+&lt;input type=radio name=lang&gt;
+&lt;input type=radio name=dir&gt;
+
+&lt;!--  HTMLFormElement  --&gt;
+&lt;input type=radio name=acceptCharset&gt;
+&lt;input type=radio name=action&gt;
+&lt;input type=radio name=autocomplete&gt;
+&lt;input type=radio name=enctype&gt;
+&lt;input type=radio name=encoding&gt;
+&lt;input type=radio name=method&gt;
+&lt;input type=radio name=name&gt;
+&lt;input type=radio name=noValidate&gt;
+&lt;input type=radio name=target&gt;
+&lt;input type=radio name=elements&gt;
+&lt;input type=radio name=length&gt;
+&lt;input type=radio name=submit&gt;
+&lt;input type=radio name=reset&gt;
+&lt;input type=radio name=checkValidity&gt;
+&lt;/form&gt;
+
+&lt;img name=x&gt;
+&lt;form&gt;&lt;/form&gt;&lt;!--  no child nodes  --&gt;
+&lt;img name=y&gt;
+&lt;form&gt;&lt;!--  a child node  --&gt;&lt;/form&gt;
+&lt;img name=z&gt;
+
+&lt;input form=a name=b&gt;
+&lt;form id=a&gt;&lt;/form&gt;
+&lt;input form=c name=d&gt;
+&lt;input form=c name=d&gt;
+&lt;form id=c&gt;&lt;/form&gt;
+&lt;script&gt;
+test(function() {
+  var form = document.getElementsByTagName(&quot;form&quot;)[0]
+  assert_equals(form.item, undefined)
+  assert_false(&quot;item&quot; in form)
+}, &quot;Forms should not have an item method&quot;)
+
+test(function() {
+  var form = document.getElementsByTagName(&quot;form&quot;)[0]
+  assert_equals(form.namedItem, undefined)
+  assert_false(&quot;namedItem&quot; in form)
+}, &quot;Forms should not have a namedItem method&quot;)
+
+test(function() {
+  var form = document.getElementsByTagName(&quot;form&quot;)[0]
+  var button = document.getElementsByTagName(&quot;input&quot;)[0]
+  assert_equals(button.type, &quot;button&quot;)
+  assert_equals(form.button, button)
+  assert_equals(form.button.length, undefined)
+}, &quot;Name for a single element should work&quot;)
+
+test(function() {
+  var form = document.getElementsByTagName(&quot;form&quot;)[0]
+  assert_equals(form.radio.item(-1), null)
+  assert_array_equals([0, 1, 2].map(function(i) {
+    return form.radio.item(i).value
+  }), [&quot;x&quot;, &quot;y&quot;, &quot;z&quot;])
+  assert_equals(form.radio.item(3), null)
+}, &quot;Calling item() on the NodeList returned from the named getter should work&quot;)
+
+test(function() {
+  var form = document.getElementsByTagName(&quot;form&quot;)[0]
+  assert_equals(form.radio.length, 3)
+  assert_equals(form.radio[-1], undefined)
+  assert_array_equals([0, 1, 2].map(function(i) {
+    return form.radio[i].value
+  }), [&quot;x&quot;, &quot;y&quot;, &quot;z&quot;])
+  assert_equals(form.radio[3], undefined)
+}, &quot;Indexed getter on the NodeList returned from the named getter should work&quot;)
+
+test(function() {
+  var form = document.getElementsByTagName(&quot;form&quot;)[0]
+  var indices = [-1, 0, 1, 2, 3]
+  indices.forEach(function(i) {
+    assert_throws(new TypeError(), function() {
+      form.radio(i)
+    })
+  })
+}, &quot;Invoking a legacycaller on the NodeList returned from the named getter &quot; +
+   &quot;should not work&quot;)
+
+test(function() {
+  var form = document.getElementsByTagName(&quot;form&quot;)[1]
+  for (var i = 1; i &lt;= 31; ++i) {
+    if (i == 23) {
+      // input type=image
+      assert_equals(form[&quot;l&quot; + i], undefined)
+    } else {
+      assert_equals(form[&quot;l&quot; + i], form.children[i - 1])
+    }
+  }
+}, &quot;All listed elements except input type=image should be present in the form&quot;)
+
+test(function() {
+  var names = [
+    // EventTarget
+    &quot;addEventListener&quot;, &quot;removeEventListener&quot;, &quot;dispatchEvent&quot;,
+    // Node
+    &quot;nodeType&quot;, &quot;nodeName&quot;, &quot;ownerDocument&quot;,
+    // Element
+    &quot;namespaceURI&quot;, &quot;prefix&quot;, &quot;localName&quot;,
+    // HTMLElement
+    &quot;title&quot;, &quot;lang&quot;, &quot;dir&quot;,
+    // HTMLFormElement
+    &quot;acceptCharset&quot;, &quot;action&quot;, &quot;autocomplete&quot;, &quot;enctype&quot;, &quot;encoding&quot;, &quot;method&quot;,
+    &quot;name&quot;, &quot;noValidate&quot;, &quot;target&quot;, &quot;elements&quot;, &quot;length&quot;, &quot;submit&quot;, &quot;reset&quot;,
+    &quot;checkValidity&quot;
+  ]
+  var form = document.getElementsByTagName(&quot;form&quot;)[2]
+  names.forEach(function(name, i) {
+    assert_equals(form[name], form.children[i])
+  })
+}, &quot;Named elements should override builtins&quot;)
+
+test(function() {
+  var form = document.getElementsByTagName(&quot;form&quot;)[3]
+  assert_equals(form.x, undefined, &quot;x should not be associated with the form&quot;)
+  assert_equals(form.y, undefined, &quot;y should not be associated with the form&quot;)
+  assert_equals(form.z, undefined, &quot;z should not be associated with the form&quot;)
+  assert_equals(form[0], undefined, &quot;The form should not have supported property indices&quot;)
+  assert_equals(form.length, 0)
+}, &quot;Named items outside the form should not be returned (no children)&quot;)
+
+test(function() {
+  var form = document.getElementsByTagName(&quot;form&quot;)[4]
+  assert_equals(form.x, undefined, &quot;x should not be associated with the form&quot;)
+  assert_equals(form.y, undefined, &quot;y should not be associated with the form&quot;)
+  assert_equals(form.z, undefined, &quot;z should not be associated with the form&quot;)
+  assert_equals(form[0], undefined, &quot;The form should not have supported property indices&quot;)
+  assert_equals(form.length, 0)
+}, &quot;Named items outside the form should not be returned (one child)&quot;)
+
+test(function() {
+  var form = document.getElementsByTagName(&quot;form&quot;)[5]
+  assert_equals(form.id, &quot;a&quot;)
+
+  var input = document.getElementsByName(&quot;b&quot;)[0]
+  assert_equals(input.localName, &quot;input&quot;)
+  assert_equals(input.getAttribute(&quot;form&quot;), &quot;a&quot;)
+
+  assert_equals(form.b, input);
+}, &quot;The form attribute should be taken into account for named getters (single element)&quot;)
+
+test(function() {
+  var form = document.getElementsByTagName(&quot;form&quot;)[6]
+  assert_equals(form.id, &quot;c&quot;)
+
+  var input1 = document.getElementsByName(&quot;d&quot;)[0]
+  assert_equals(input1.localName, &quot;input&quot;)
+  assert_equals(input1.getAttribute(&quot;form&quot;), &quot;c&quot;)
+
+  var input2 = document.getElementsByName(&quot;d&quot;)[1]
+  assert_equals(input2.localName, &quot;input&quot;)
+  assert_equals(input2.getAttribute(&quot;form&quot;), &quot;c&quot;)
+
+  assert_true(form.d instanceof NodeList, &quot;form.d should be a NodeList&quot;)
+  assert_array_equals(form.d, [input1, input2])
+}, &quot;The form attribute should be taken into account for named getters (multiple elements)&quot;)
+
+test(function() {
+  var f = document.body.appendChild(document.createElement(&quot;form&quot;))
+  f.id = &quot;f&quot;
+  var g = f.appendChild(document.createElement(&quot;form&quot;))
+  g.id = &quot;g&quot;
+  var input = g.appendChild(document.createElement(&quot;input&quot;))
+  input.name = &quot;x&quot;
+  assert_equals(f.x, undefined)
+  assert_equals(g.x, input)
+}, &quot;Input should only be a named property on the innermost form that contains it&quot;)
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheformelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,23 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-autocomplete.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-interfaces-01.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-matches.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-nameditem-01.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-elements-nameditem-02.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-form-element/form-nameditem.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementbuttonexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/button-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/button-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/button-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,11 @@
</span><ins>+
+  
+  
+  
+
+PASS clicking on button should not submit a form 
+PASS the element is barred from constraint validation 
+PASS clicking on button should not reset other form fields 
+PASS clicking on button should not unchecked radio buttons 
+PASS clicking on button should not change its indeterminate IDL attribute 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementbuttonhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/button.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/button.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/button.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,66 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;input type button&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#button-state-(type=button)&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;form id=f1&gt;
+  &lt;input type=button id=b1 name=b1&gt;
+&lt;/form&gt;
+&lt;form&gt;
+  &lt;input id=i1 value=&quot;foo&quot;&gt;
+  &lt;input type=button id=b2 name=b2&gt;
+&lt;/form&gt;
+&lt;form&gt;
+  &lt;input type=radio id=i2 checked name=b3&gt;
+  &lt;input type=button id=b3 name=b3&gt;
+&lt;/form&gt;
+&lt;form&gt;
+  &lt;input type=checkbox id=i3&gt;
+  &lt;input type=button id=b4 name=b4&gt;
+&lt;/form&gt;
+
+&lt;script&gt;
+  var t = async_test(&quot;clicking on button should not submit a form&quot;),
+      b1 = document.getElementById('b1'),
+      b2 = document.getElementById('b2'),
+      b3 = document.getElementById('b3'),
+      b4 = document.getElementById('b4'),
+      i1 = document.getElementById('i1'),
+      i2 = document.getElementById('i2'),
+      i3 = document.getElementById('i3');
+
+  test(function(){
+    assert_false(b1.willValidate);
+  }, &quot;the element is barred from constraint validation&quot;);
+
+  document.getElementById('f1').onsubmit = t.step_func(function(e) {
+    e.preventDefault();
+    assert_unreached(&quot;form has been submitted&quot;);
+  });
+
+  t.step(function() {
+    b1.click();
+  });
+  t.done();
+
+  test(function(){
+    i1.value = &quot;bar&quot;;
+    b2.click();
+    assert_equals(i1.value, &quot;bar&quot;);
+  }, &quot;clicking on button should not reset other form fields&quot;);
+
+  test(function(){
+    assert_true(i2.checked);
+    b3.click();
+    assert_true(i2.checked);
+  }, &quot;clicking on button should not unchecked radio buttons&quot;);
+
+  test(function(){
+    assert_false(i3.indeterminate);
+    b4.click();
+    assert_false(i3.indeterminate);
+  }, &quot;clicking on button should not change its indeterminate IDL attribute&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementcheckboxexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/checkbox-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/checkbox-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/checkbox-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+     
+
+FAIL click on mutable checkbox fires the input and change events assert_true: event should be trusted expected true got undefined
+PASS click on non-mutable checkbox doesn't fire the input or change event 
+PASS pre-activation steps on unchecked checkbox 
+PASS pre-activation steps on checked checkbox 
+FAIL canceled activation steps on unchecked checkbox assert_false: expected false got true
+FAIL canceled activation steps on unchecked checkbox (indeterminate=true in onclick) assert_false: expected false got true
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementcheckboxhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/checkbox.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/checkbox.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/checkbox.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,110 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;input type checkbox&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#checkbox-state-(type=checkbox)&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;input type=checkbox id=checkbox1&gt;
+&lt;input type=checkbox id=checkbox2 disabled&gt;
+&lt;input type=checkbox id=checkbox3&gt;
+&lt;input type=checkbox id=checkbox4 checked&gt;
+&lt;input type=checkbox id=checkbox5&gt;
+&lt;input type=checkbox id=checkbox6&gt;
+&lt;script&gt;
+  var checkbox1 = document.getElementById('checkbox1'),
+      checkbox2 = document.getElementById('checkbox2'),
+      checkbox3 = document.getElementById('checkbox3'),
+      checkbox4 = document.getElementById('checkbox4'),
+      checkbox5 = document.getElementById('checkbox5'),
+      checkbox6 = document.getElementById('checkbox6'),
+      c1_input_fired = false, c1_change_fired = false,
+      t1 = async_test(&quot;click on mutable checkbox fires the input and change events&quot;),
+      t2 = async_test(&quot;click on non-mutable checkbox doesn't fire the input or change event&quot;),
+      t3 = async_test(&quot;pre-activation steps on unchecked checkbox&quot;),
+      t4 = async_test(&quot;pre-activation steps on checked checkbox&quot;),
+      t5 = async_test(&quot;canceled activation steps on unchecked checkbox&quot;),
+      t6 = async_test(&quot;canceled activation steps on unchecked checkbox (indeterminate=true in onclick)&quot;);
+
+  checkbox1.oninput= t1.step_func(function(e) {
+    c1_input_fired = true;
+    assert_true(e.bubbles, &quot;event should bubble&quot;);
+    assert_true(e.isTrusted, &quot;event should be trusted&quot;);
+    assert_false(e.cancelable, &quot;event shoud not be cancelable&quot;);
+    assert_true(checkbox1.checked, &quot;checkbox is checked&quot;);
+    assert_false(checkbox1.indeterminate, &quot;checkbox is not indeterminate&quot;);
+  });
+
+  checkbox1.onchange = t1.step_func(function(e) {
+    c1_change_fired = true;
+    assert_true(e.bubbles, &quot;event should bubble&quot;)
+    assert_true(e.isTrusted, &quot;event should be trusted&quot;);
+    assert_false(e.cancelable, &quot;event shoud not be cancelable&quot;);
+    assert_true(checkbox1.checked, &quot;checkbox is checked&quot;);
+    assert_false(checkbox1.indeterminate, &quot;checkbox is not indeterminate&quot;);
+  });
+
+  checkbox2.oninput= t2.step_func(function(e) {
+    assert_unreached(&quot;event input fired&quot;);
+  });
+
+  checkbox2.onchange = t2.step_func(function(e) {
+    assert_unreached(&quot;event change fired&quot;);
+  });
+
+  t1.step(function() {
+    checkbox1.click();
+    assert_true(c1_input_fired);
+    assert_true(c1_change_fired);
+    t1.done();
+  });
+
+  t2.step(function() {
+    checkbox2.click();
+    t2.done();
+  });
+
+  t3.step(function() {
+    checkbox3.indeterminate = true;
+    checkbox3.click();
+    assert_true(checkbox3.checked);
+    assert_false(checkbox3.indeterminate);
+    t3.done();
+  });
+
+  t4.step(function() {
+    checkbox4.indeterminate = true;
+    checkbox4.click();
+    assert_false(checkbox4.checked);
+    assert_false(checkbox4.indeterminate);
+    t4.done();
+  });
+
+  checkbox5.onclick = t5.step_func(function(e) {
+    e.preventDefault();
+    assert_false(checkbox5.checked);
+    assert_false(checkbox5.indeterminate);
+    t5.done();
+  });
+
+  t5.step(function(){
+    assert_false(checkbox5.checked);
+    assert_false(checkbox5.indeterminate);
+    checkbox5.click();
+  });
+
+  checkbox6.onclick = t6.step_func(function(e) {
+    checkbox6.indeterminate = true;
+    e.preventDefault();
+    assert_false(checkbox6.checked);
+    assert_false(checkbox6.indeterminate);
+    t6.done();
+  });
+
+  t6.step(function(){
+    assert_false(checkbox6.checked);
+    assert_false(checkbox6.indeterminate);
+    checkbox6.click();
+  });
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementcheckedexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/checked-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/checked-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/checked-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+FAIL input@checked is immediately reflected to 'checked' IDL attribute assert_true: Examining &quot;checked&quot; IDL attribute value: expected true got false
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementcheckedxhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/checked.xhtml (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/checked.xhtml                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/checked.xhtml        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
+&lt;!DOCTYPE html&gt;
+&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;
+&lt;head&gt;
+&lt;title&gt;input@checked is immediately reflected to 'checked' IDL attribute&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;input style=&quot;display: none&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&gt;
+&lt;script&gt;
+test(function(){
+assert_true(document.querySelector('input').checked, 'Examining &quot;checked&quot; IDL attribute value:')
+});
+&lt;/script&gt;
+&lt;/input&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementcolorexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/color-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/color-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/color-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,25 @@
</span><ins>+
+PASS Empty value should return #000000 
+PASS Missing value should return #000000 
+PASS Valid simple color: should return #ffffff 
+PASS Valid simple color (containing LATIN CAPITAL LETTERS): should return #ffffff (converted to ASCII lowercase) 
+PASS Zero-padding 
+PASS Invalid simple color: not 7 characters long 
+PASS Invalid simple color: no starting # sign 
+PASS Invalid simple color: non ASCII hex digits 
+PASS Invalid simple color: foobar 
+PASS Invalid color: trailing Null (U+0000) 
+PASS Invalid color: trailing ; 
+PASS Invalid color: leading space 
+PASS Invalid color: trailing space 
+PASS Invalid color: leading+trailing spaces 
+PASS Invalid color: keyword crimson 
+PASS Invalid color: keyword bisque 
+PASS Invalid color: keyword currentColor 
+PASS Invalid color: keyword transparent 
+PASS Invalid color: keyword ActiveBorder 
+PASS Invalid color: keyword inherit 
+PASS Invalid color: rgb(1,1,1) 
+PASS Invalid color: rgb(1,1,1,1) 
+PASS Invalid color: PILE OF POO (U+1F4A9) 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementcolorhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/color.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/color.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/color.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,45 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Form input type=color&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/multipage/common-microsyntaxes.html#colors&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/multipage/states-of-the-type-attribute.html#color-state-(type=color)&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  var colors = [
+    {value: &quot;&quot;, expected: &quot;#000000&quot;, testname: &quot;Empty value should return #000000&quot;},
+    {expected: &quot;#000000&quot;, testname: &quot;Missing value should return #000000&quot;},
+    {value: &quot;#ffffff&quot;, expected: &quot;#ffffff&quot;, testname: &quot;Valid simple color: should return #ffffff&quot;},
+    {value: &quot;#FFFFFF&quot;, expected: &quot;#ffffff&quot;, testname: &quot;Valid simple color (containing LATIN CAPITAL LETTERS): should return #ffffff (converted to ASCII lowercase)&quot;},
+    {value: &quot;#0F0F0F&quot;, expected: &quot;#0f0f0f&quot;, testname: &quot;Zero-padding&quot;},
+    {value: &quot;#fff&quot;, expected: &quot;#000000&quot;, testname: &quot;Invalid simple color: not 7 characters long&quot;},
+    {value: &quot;fffffff&quot;, expected: &quot;#000000&quot;, testname: &quot;Invalid simple color: no starting # sign&quot;},
+    {value: &quot;#gggggg&quot;, expected: &quot;#000000&quot;, testname: &quot;Invalid simple color: non ASCII hex digits&quot;},
+    {value: &quot;foobar&quot;, expected: &quot;#000000&quot;, testname: &quot;Invalid simple color: foobar&quot;},
+    {value: &quot;#ffffff\u0000&quot;, expected: &quot;#000000&quot;, testname: &quot;Invalid color: trailing Null (U+0000)&quot;},
+    {value: &quot;#ffffff;&quot;, expected: &quot;#000000&quot;, testname: &quot;Invalid color: trailing ;&quot;},
+    {value: &quot; #ffffff&quot;, expected: &quot;#000000&quot;, testname: &quot;Invalid color: leading space&quot;},
+    {value: &quot;#ffffff &quot;, expected: &quot;#000000&quot;, testname: &quot;Invalid color: trailing space&quot;},
+    {value: &quot; #ffffff &quot;, expected: &quot;#000000&quot;, testname: &quot;Invalid color: leading+trailing spaces&quot;},
+    {value: &quot;crimson&quot;, expected: &quot;#000000&quot;, testname: &quot;Invalid color: keyword crimson&quot;},
+    {value: &quot;bisque&quot;, expected: &quot;#000000&quot;, testname: &quot;Invalid color: keyword bisque&quot;},
+    {value: &quot;currentColor&quot;, expected: &quot;#000000&quot;, testname: &quot;Invalid color: keyword currentColor&quot;},
+    {value: &quot;transparent&quot;, expected: &quot;#000000&quot;, testname: &quot;Invalid color: keyword transparent&quot;},
+    {value: &quot;ActiveBorder&quot;, expected: &quot;#000000&quot;, testname: &quot;Invalid color: keyword ActiveBorder&quot;},
+    {value: &quot;inherit&quot;, expected: &quot;#000000&quot;, testname: &quot;Invalid color: keyword inherit&quot;},
+    {value: &quot;rgb(1,1,1)&quot;, expected: &quot;#000000&quot;, testname: &quot;Invalid color: rgb(1,1,1)&quot;},
+    {value: &quot;rgb(1,1,1,1)&quot;, expected: &quot;#000000&quot;, testname: &quot;Invalid color: rgb(1,1,1,1)&quot;},
+    {value: &quot;#FFFFF\u1F4A9&quot;, expected: &quot;#000000&quot;, testname: &quot;Invalid color: PILE OF POO (U+1F4A9)&quot;}
+  ];
+  for (var i = 0; i &lt; colors.length; i++) {
+    var w = colors[i];
+    test(function() {
+      var input = document.createElement(&quot;input&quot;);
+      input.type = &quot;color&quot;;
+      input.value = w.value;
+      assert_equals(input.value, w.expected);
+    }, w.testname);
+  }
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementcontainsjson"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/contains.json (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/contains.json                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/contains.json        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,154 @@
</span><ins>+[
+    {
+        &quot;id&quot;: &quot;states-of-the-type-attribute&quot;,
+        &quot;original_id&quot;: &quot;states-of-the-type-attribute&quot;,
+        &quot;children&quot;: [
+            {
+                &quot;id&quot;: &quot;hidden-state-type-hidden&quot;,
+                &quot;original_id&quot;: &quot;hidden-state-(type=hidden)&quot;
+            },
+            {
+                &quot;id&quot;: &quot;text-type-text-state-and-search-state-type-search&quot;,
+                &quot;original_id&quot;: &quot;text-(type=text)-state-and-search-state-(type=search)&quot;
+            },
+            {
+                &quot;id&quot;: &quot;telephone-state-type-tel&quot;,
+                &quot;original_id&quot;: &quot;telephone-state-(type=tel)&quot;
+            },
+            {
+                &quot;id&quot;: &quot;url-state-type-url&quot;,
+                &quot;original_id&quot;: &quot;url-state-(type=url)&quot;
+            },
+            {
+                &quot;id&quot;: &quot;e-mail-state-type-email&quot;,
+                &quot;original_id&quot;: &quot;e-mail-state-(type=email)&quot;
+            },
+            {
+                &quot;id&quot;: &quot;password-state-type-password&quot;,
+                &quot;original_id&quot;: &quot;password-state-(type=password)&quot;
+            },
+            {
+                &quot;id&quot;: &quot;date-and-time-state-type-datetime&quot;,
+                &quot;original_id&quot;: &quot;date-and-time-state-(type=datetime)&quot;
+            },
+            {
+                &quot;id&quot;: &quot;date-state-type-date&quot;,
+                &quot;original_id&quot;: &quot;date-state-(type=date)&quot;
+            },
+            {
+                &quot;id&quot;: &quot;month-state-type-month&quot;,
+                &quot;original_id&quot;: &quot;month-state-(type=month)&quot;
+            },
+            {
+                &quot;id&quot;: &quot;week-state-type-week&quot;,
+                &quot;original_id&quot;: &quot;week-state-(type=week)&quot;
+            },
+            {
+                &quot;id&quot;: &quot;time-state-type-time&quot;,
+                &quot;original_id&quot;: &quot;time-state-(type=time)&quot;
+            },
+            {
+                &quot;id&quot;: &quot;local-date-and-time-state-type-datetime-local&quot;,
+                &quot;original_id&quot;: &quot;local-date-and-time-state-(type=datetime-local)&quot;
+            },
+            {
+                &quot;id&quot;: &quot;number-state-type-number&quot;,
+                &quot;original_id&quot;: &quot;number-state-(type=number)&quot;
+            },
+            {
+                &quot;id&quot;: &quot;range-state-type-range&quot;,
+                &quot;original_id&quot;: &quot;range-state-(type=range)&quot;
+            },
+            {
+                &quot;id&quot;: &quot;color-state-type-color&quot;,
+                &quot;original_id&quot;: &quot;color-state-(type=color)&quot;
+            },
+            {
+                &quot;id&quot;: &quot;checkbox-state-type-checkbox&quot;,
+                &quot;original_id&quot;: &quot;checkbox-state-(type=checkbox)&quot;
+            },
+            {
+                &quot;id&quot;: &quot;radio-button-state-type-radio&quot;,
+                &quot;original_id&quot;: &quot;radio-button-state-(type=radio)&quot;
+            },
+            {
+                &quot;id&quot;: &quot;file-upload-state-type-file&quot;,
+                &quot;original_id&quot;: &quot;file-upload-state-(type=file)&quot;
+            },
+            {
+                &quot;id&quot;: &quot;submit-button-state-type-submit&quot;,
+                &quot;original_id&quot;: &quot;submit-button-state-(type=submit)&quot;
+            },
+            {
+                &quot;id&quot;: &quot;image-button-state-type-image&quot;,
+                &quot;original_id&quot;: &quot;image-button-state-(type=image)&quot;
+            },
+            {
+                &quot;id&quot;: &quot;reset-button-state-type-reset&quot;,
+                &quot;original_id&quot;: &quot;reset-button-state-(type=reset)&quot;
+            },
+            {
+                &quot;id&quot;: &quot;button-state-type-button&quot;,
+                &quot;original_id&quot;: &quot;button-state-(type=button)&quot;
+            }
+        ]
+    },
+    {
+        &quot;id&quot;: &quot;input-impl-notes&quot;,
+        &quot;original_id&quot;: &quot;input-impl-notes&quot;
+    },
+    {
+        &quot;id&quot;: &quot;common-input-element-attributes&quot;,
+        &quot;original_id&quot;: &quot;common-input-element-attributes&quot;,
+        &quot;children&quot;: [
+            {
+                &quot;id&quot;: &quot;the-maxlength-attribute&quot;,
+                &quot;original_id&quot;: &quot;the-maxlength-attribute&quot;
+            },
+            {
+                &quot;id&quot;: &quot;the-size-attribute&quot;,
+                &quot;original_id&quot;: &quot;the-size-attribute&quot;
+            },
+            {
+                &quot;id&quot;: &quot;the-readonly-attribute&quot;,
+                &quot;original_id&quot;: &quot;the-readonly-attribute&quot;
+            },
+            {
+                &quot;id&quot;: &quot;the-required-attribute&quot;,
+                &quot;original_id&quot;: &quot;the-required-attribute&quot;
+            },
+            {
+                &quot;id&quot;: &quot;the-multiple-attribute&quot;,
+                &quot;original_id&quot;: &quot;the-multiple-attribute&quot;
+            },
+            {
+                &quot;id&quot;: &quot;the-pattern-attribute&quot;,
+                &quot;original_id&quot;: &quot;the-pattern-attribute&quot;
+            },
+            {
+                &quot;id&quot;: &quot;the-min-and-max-attributes&quot;,
+                &quot;original_id&quot;: &quot;the-min-and-max-attributes&quot;
+            },
+            {
+                &quot;id&quot;: &quot;the-step-attribute&quot;,
+                &quot;original_id&quot;: &quot;the-step-attribute&quot;
+            },
+            {
+                &quot;id&quot;: &quot;the-list-attribute&quot;,
+                &quot;original_id&quot;: &quot;the-list-attribute&quot;
+            },
+            {
+                &quot;id&quot;: &quot;the-placeholder-attribute&quot;,
+                &quot;original_id&quot;: &quot;the-placeholder-attribute&quot;
+            }
+        ]
+    },
+    {
+        &quot;id&quot;: &quot;common-input-element-apis&quot;,
+        &quot;original_id&quot;: &quot;common-input-element-apis&quot;
+    },
+    {
+        &quot;id&quot;: &quot;common-event-behaviors&quot;,
+        &quot;original_id&quot;: &quot;common-event-behaviors&quot;
+    }
+]
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementdateexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/date-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/date-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/date-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+Inputs Date
+
+
+FAIL date type support on input element assert_equals: expected &quot;date&quot; but got &quot;text&quot;
+FAIL The value attribute, if specified and not empty, must have a value that is a valid date string. assert_equals: expected &quot;2011-01-01&quot; but got &quot;1999-01-31&quot;
+FAIL The min attribute, if specified, must have a value that is a valid date string. assert_equals: expected &quot;&quot; but got &quot;1999-1&quot;
+FAIL The max attribute, if specified, must have a value that is a valid date string. assert_equals: expected &quot;2099-01&quot; but got &quot;2011-12-31&quot;
+FAIL User agents must not allow the user to set the value to a non-empty string that is not a valid date string. assert_equals: expected &quot;&quot; but got &quot;invalid-date&quot;
+FAIL Number of days assert_equals: January has 31 days expected &quot;&quot; but got &quot;2014-01-32&quot;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementdatehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/date.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/date.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/date.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,90 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;title&gt;Inputs Date&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Morishita Hiromitsu&quot; href=&quot;mailto:hero@asterisk-works.jp&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#date-state-(type=date)&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dates-and-times&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;h1&gt;Inputs Date&lt;/h1&gt;
+    &lt;div style=&quot;display: none&quot;&gt;
+      &lt;input id=&quot;valid&quot; type=&quot;date&quot; value=&quot;2011-11-01&quot; min=&quot;2011-01-01&quot; max=&quot;2011-12-31&quot; /&gt;
+      &lt;input id=&quot;too_small_value&quot; type=&quot;date&quot; value=&quot;1999-01-31&quot; min=&quot;2011-01-01&quot; max=&quot;2011-12-31&quot;/&gt;
+      &lt;input id=&quot;too_large_value&quot; type=&quot;date&quot; value=&quot;2099-01-31&quot; min=&quot;2011-01-01&quot; max=&quot;2011-12-31&quot;/&gt;
+      &lt;input id=&quot;invalid_min&quot; type=&quot;date&quot; value=&quot;2011-01-01&quot; min=&quot;1999-1&quot; max=&quot;2011-12-31&quot;/&gt;
+      &lt;input id=&quot;invalid_max&quot; type=&quot;date&quot; value=&quot;2011-01-01&quot; min=&quot;2011-01-01&quot; max=&quot;2011-13-162-777&quot;/&gt;
+      &lt;input id=&quot;min_larger_than_max&quot; type=&quot;date&quot; value=&quot;2011-01-01&quot; min=&quot;2099-01&quot; max=&quot;2011-12-31&quot;/&gt;
+      &lt;input id=&quot;invalid_value&quot; type=&quot;date&quot; value=&quot;invalid-date&quot; min=&quot;2011-01-01&quot; max=&quot;2011-12-31&quot;/&gt;
+    &lt;/div&gt;
+
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+
+    &lt;script type=&quot;text/javascript&quot;&gt;
+      test(function() {
+        assert_equals(document.getElementById(&quot;valid&quot;).type, &quot;date&quot;)
+      }, &quot;date type support on input element&quot;);
+
+      test(function() {
+        assert_equals(document.getElementById(&quot;valid&quot;).value, &quot;2011-11-01&quot;);
+        assert_equals(document.getElementById(&quot;too_small_value&quot;).value, &quot;2011-01-01&quot;);
+        assert_equals(document.getElementById(&quot;too_large_value&quot;).value, &quot;2011-12-31&quot;);
+      }, &quot;The value attribute, if specified and not empty, must have a value that is a valid date string.&quot;);
+
+      test(function() {
+        assert_equals(document.getElementById(&quot;valid&quot;).min, &quot;2011-01-01&quot;),
+        assert_equals(document.getElementById(&quot;invalid_min&quot;).min, &quot;&quot;)
+      }, &quot;The min attribute, if specified, must have a value that is a valid date string.&quot;);
+
+      test(function() {
+        assert_equals(document.getElementById(&quot;valid&quot;).max, &quot;2011-12-31&quot;),
+        assert_equals(document.getElementById(&quot;min_larger_than_max&quot;).max, &quot;2099-01&quot;),
+        assert_equals(document.getElementById(&quot;invalid_max&quot;).max, &quot;&quot;)
+      },&quot;The max attribute, if specified, must have a value that is a valid date string.&quot;);
+
+      test(function() {
+        assert_equals(document.getElementById(&quot;invalid_value&quot;).value, &quot;&quot;);
+      }, &quot;User agents must not allow the user to set the value to a non-empty string that is not a valid date string.&quot;);
+      test(function() {
+        var numDays = [
+          // the number of days in month month of year year is: 31 if month is 1, 3, 5, 7, 8, 10, or 12;
+          {value: &quot;2014-01-31&quot;, expected: &quot;2014-01-31&quot;, testname: &quot;January has 31 days&quot;},
+          {value: &quot;2014-01-32&quot;, expected: &quot;&quot;, testname: &quot;January has 31 days&quot;},
+          {value: &quot;2014-03-31&quot;, expected: &quot;2014-03-31&quot;, testname: &quot;March has 31 days&quot;},
+          {value: &quot;2014-03-32&quot;, expected: &quot;&quot;, testname: &quot;March has 31 days&quot;},
+          {value: &quot;2014-05-31&quot;, expected: &quot;2014-05-31&quot;, testname: &quot;May has 31 days&quot;},
+          {value: &quot;2014-05-32&quot;, expected: &quot;&quot;, testname: &quot;May has 31 days&quot;},
+          {value: &quot;2014-07-31&quot;, expected: &quot;2014-07-31&quot;, testname: &quot;July has 31 days&quot;},
+          {value: &quot;2014-07-32&quot;, expected: &quot;&quot;, testname: &quot;July has 31 days&quot;},
+          {value: &quot;2014-08-31&quot;, expected: &quot;2014-08-31&quot;, testname: &quot;August has 31 days&quot;},
+          {value: &quot;2014-08-32&quot;, expected: &quot;&quot;, testname: &quot;August has 31 days&quot;},
+          {value: &quot;2014-10-31&quot;, expected: &quot;2014-10-31&quot;, testname: &quot;October has 31 days&quot;},
+          {value: &quot;2014-10-32&quot;, expected: &quot;&quot;, testname: &quot;October has 31 days&quot;},
+          {value: &quot;2014-12-31&quot;, expected: &quot;2014-12-31&quot;, testname: &quot;December has 31 days&quot;},
+          {value: &quot;2014-12-32&quot;, expected: &quot;&quot;, testname: &quot;December has 31 days&quot;},
+          // the number of days in month month of year year is: 30 if month is 4, 6, 9, or 11;
+          {value: &quot;2014-04-30&quot;, expected: &quot;2014-04-30&quot;, testname: &quot;April has 30 days&quot;},
+          {value: &quot;2014-04-31&quot;, expected: &quot;&quot;, testname: &quot;April has 30 days&quot;},
+          {value: &quot;2014-06-30&quot;, expected: &quot;2014-06-30&quot;, testname: &quot;June has 30 days&quot;},
+          {value: &quot;2014-06-31&quot;, expected: &quot;&quot;, testname: &quot;June has 30 days&quot;},
+          {value: &quot;2014-09-30&quot;, expected: &quot;2014-09-30&quot;, testname: &quot;September has 30 days&quot;},
+          {value: &quot;2014-09-31&quot;, expected: &quot;&quot;, testname: &quot;September has 30 days&quot;},
+          {value: &quot;2014-11-30&quot;, expected: &quot;2014-11-30&quot;, testname: &quot;November has 30 days&quot;},
+          {value: &quot;2014-11-31&quot;, expected: &quot;&quot;, testname: &quot;November has 30 days&quot;},
+          // leap years
+          {value: &quot;2014-02-28&quot;, expected: &quot;2014-02-28&quot;, testname: &quot;2014 is not a leap year: February has 28 days&quot;},
+          {value: &quot;2014-02-29&quot;, expected: &quot;&quot;, testname: &quot;2014 is not a leap year: February has 28 days: value should be empty&quot;},
+          {value: &quot;2016-02-29&quot;, expected: &quot;2016-02-29&quot;, testname: &quot;2016 is a leap year: February has 29 days&quot;}
+        ];
+        for (var i = 0; i &lt; numDays.length; i++) {
+          var input = document.createElement(&quot;input&quot;);
+          input.type = &quot;date&quot;;
+          input.value = numDays[i].value;
+          assert_equals(input.value, numDays[i].expected, numDays[i].testname);
+        }
+      }, &quot;Number of days&quot;);
+    &lt;/script&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementdatetime2expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime-2-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime-2-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime-2-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+
+PASS empty value 
+PASS datetime input value set to 2014-01-01T11:11Z without min/max 
+FAIL datetime input value set to 2014-01-01 11:11Z without min/max assert_equals: expected &quot;2014-01-01T11:11Z&quot; but got &quot;2014-01-01 11:11Z&quot;
+FAIL datetime input value set to 2014-01-01 11:11-04:00 without min/max assert_equals: expected &quot;2014-01-01T15:11Z&quot; but got &quot;2014-01-01 11:11-04:00&quot;
+FAIL datetime input value set to 2014-01-01 11:11-0400 without min/max assert_equals: expected &quot;2014-01-01T15:11Z&quot; but got &quot;2014-01-01 11:11-0400&quot;
+FAIL datetime input value set to 2014-01-01 11:11:00.000-04:00 without min/max assert_equals: expected &quot;2014-01-01T15:11Z&quot; but got &quot;2014-01-01 11:11:00.000-04:00&quot;
+FAIL datetime input value set to 2014-01-01  11:11:00.000Z without min/max assert_equals: expected &quot;&quot; but got &quot;2014-01-01  11:11:00.000Z&quot;
+FAIL datetime input value set to 2014-01-01 11:11:00.000 without min/max assert_equals: expected &quot;&quot; but got &quot;2014-01-01 11:11:00.000&quot;
+FAIL datetime input value set to 2014-01-01 11:11:00.000+ without min/max assert_equals: expected &quot;&quot; but got &quot;2014-01-01 11:11:00.000+&quot;
+FAIL datetime input value set to 2014-01-01 11:11:00.000+24 without min/max assert_equals: expected &quot;&quot; but got &quot;2014-01-01 11:11:00.000+24&quot;
+FAIL datetime input value set to 2014-01-01 11:11:00.000+2360 without min/max assert_equals: expected &quot;&quot; but got &quot;2014-01-01 11:11:00.000+2360&quot;
+FAIL datetime input value set to 2014-01-0 11:11:00.000+0400 without min/max assert_equals: expected &quot;&quot; but got &quot;2014-01-0 11:11:00.000+0400&quot;
+FAIL datetime input value set to 2014-01-01 11:1:00.000+0400 without min/max assert_equals: expected &quot;&quot; but got &quot;2014-01-01 11:1:00.000+0400&quot;
+FAIL Value &gt;= min attribute assert_equals: expected &quot;2014-01-01T11:11Z&quot; but got &quot;2014-01-01 11:11Z&quot;
+FAIL Value &lt; min attribute assert_equals: expected &quot;2014-01-01T11:11Z&quot; but got &quot;2014-01-01 11:10Z&quot;
+FAIL Value &lt;= max attribute assert_equals: expected &quot;2014-01-01T11:11Z&quot; but got &quot;2014-01-01 11:10Z&quot;
+FAIL Value &gt; max attribute assert_equals: expected &quot;2014-01-01T11:10Z&quot; but got &quot;2014-01-01 11:11Z&quot;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementdatetime2html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime-2.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime-2.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime-2.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,45 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Form input type=datetime&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/multipage/common-microsyntaxes.html#global-dates-and-times&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/multipage/states-of-the-type-attribute.html#local-date-and-time-state-(type=datetime)&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  var datetime = [
+    // valid values
+    {value: &quot;&quot;, expected: &quot;&quot;, testname: &quot;empty value&quot;},
+    {value: &quot;2014-01-01T11:11Z&quot;, expected: &quot;2014-01-01T11:11Z&quot;, testname: &quot;datetime input value set to 2014-01-01T11:11Z without min/max&quot;},
+    {value: &quot;2014-01-01 11:11Z&quot;, expected: &quot;2014-01-01T11:11Z&quot;, testname: &quot;datetime input value set to 2014-01-01 11:11Z without min/max&quot;},
+    {value: &quot;2014-01-01 11:11-04:00&quot;, expected: &quot;2014-01-01T15:11Z&quot;, testname: &quot;datetime input value set to 2014-01-01 11:11-04:00 without min/max&quot;},
+    {value: &quot;2014-01-01 11:11-0400&quot;, expected: &quot;2014-01-01T15:11Z&quot;, testname: &quot;datetime input value set to 2014-01-01 11:11-0400 without min/max&quot;},
+    {value: &quot;2014-01-01 11:11:00.000-04:00&quot;, expected: &quot;2014-01-01T15:11Z&quot;, testname: &quot;datetime input value set to 2014-01-01 11:11:00.000-04:00 without min/max&quot;},
+    // invalid values
+    {value: &quot;2014-01-01  11:11:00.000Z&quot;, expected: &quot;&quot;, testname: &quot;datetime input value set to 2014-01-01  11:11:00.000Z without min/max&quot;},
+    {value: &quot;2014-01-01 11:11:00.000&quot;, expected: &quot;&quot;, testname: &quot;datetime input value set to 2014-01-01 11:11:00.000 without min/max&quot;},
+    {value: &quot;2014-01-01 11:11:00.000+&quot;, expected: &quot;&quot;, testname: &quot;datetime input value set to 2014-01-01 11:11:00.000+ without min/max&quot;},
+    {value: &quot;2014-01-01 11:11:00.000+24&quot;, expected: &quot;&quot;, testname: &quot;datetime input value set to 2014-01-01 11:11:00.000+24 without min/max&quot;},
+    {value: &quot;2014-01-01 11:11:00.000+2360&quot;, expected: &quot;&quot;, testname: &quot;datetime input value set to 2014-01-01 11:11:00.000+2360 without min/max&quot;},
+    {value: &quot;2014-01-0 11:11:00.000+0400&quot;, expected: &quot;&quot;, testname: &quot;datetime input value set to 2014-01-0 11:11:00.000+0400 without min/max&quot;},
+    {value: &quot;2014-01-01 11:1:00.000+0400&quot;, expected: &quot;&quot;, testname: &quot;datetime input value set to 2014-01-01 11:1:00.000+0400 without min/max&quot;},
+    // min/max
+    {value: &quot;2014-01-01 11:11Z&quot;, attributes: { min: &quot;2014-01-01T11:10Z&quot; }, expected: &quot;2014-01-01T11:11Z&quot;, testname: &quot;Value &gt;= min attribute&quot;},
+    {value: &quot;2014-01-01 11:10Z&quot;, attributes: { min: &quot;2014-01-01T11:11Z&quot; }, expected: &quot;2014-01-01T11:11Z&quot;, testname: &quot;Value &lt; min attribute&quot;},
+    {value: &quot;2014-01-01 11:10Z&quot;, attributes: { max: &quot;2014-01-01T11:11Z&quot; }, expected: &quot;2014-01-01T11:11Z&quot;, testname: &quot;Value &lt;= max attribute&quot;},
+    {value: &quot;2014-01-01 11:11Z&quot;, attributes: { max: &quot;2014-01-01T11:10Z&quot; }, expected: &quot;2014-01-01T11:10Z&quot;, testname: &quot;Value &gt; max attribute&quot;}
+  ];
+  for (var i = 0; i &lt; datetime.length; i++) {
+    var w = datetime[i];
+    test(function() {
+      var input = document.createElement(&quot;input&quot;);
+      input.type = &quot;datetime&quot;;
+      input.value = w.value;
+      for(var attr in w.attributes) {
+        input[attr] = w.attributes[attr];
+      }
+      assert_equals(input.value, w.expected);
+    }, w.testname);
+  }
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementdatetimeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,39 @@
</span><ins>+Date &amp; Time Inputs
+
+
+FAIL date type support on input element assert_equals: expected &quot;date&quot; but got &quot;text&quot;
+PASS [date] The value must be a valid global date and time string 
+PASS [date] The min attribute must have a value that is a valid global date and time string 
+PASS [date] The max attribute must have a value that is a valid global date and time string 
+PASS [date] The step attribute must be expressed in seconds 
+PASS [date] stepUp method support on input 'date' element 
+PASS [date] stepDown method support on input 'date' element 
+FAIL [time] time type support on input element assert_equals: expected &quot;time&quot; but got &quot;text&quot;
+PASS [time] The value must be a valid global date and time string 
+PASS [time] The min attribute must have a value that is a valid global date and time string 
+PASS [time] The max attribute must have a value that is a valid global date and time string 
+PASS [time] The step attribute must be expressed in seconds 
+PASS [time] stepUp method support on input 'time' element 
+PASS [time] stepDown method support on input 'time' element 
+FAIL datetime type support on input element assert_equals: expected &quot;datetime&quot; but got &quot;text&quot;
+PASS [datetime] The must be a valid global date and time string 
+PASS [datetime] The min attribute must have a value that is a valid global date and time string 
+PASS [datetime] The max attribute must have a value that is a valid global date and time string 
+PASS [datetime] The step attribute must be expressed in seconds 
+PASS [datetime] stepUp method support on input 'datetime' element 
+PASS [datetime] stepDown method support on input 'datetime' element 
+FAIL month type support on input element assert_equals: expected &quot;month&quot; but got &quot;text&quot;
+PASS [month] The value must be a value that is a valid global date and time string 
+PASS [month] The min attribute must have a value that is a valid global date and time string 
+PASS [month] The max attribute must have a value that is a valid global date and time string 
+PASS [month] The step attribute must be expressed in seconds 
+PASS [month] stepUp method support on input 'month' element 
+PASS [month] stepDown method support on input 'month' element 
+FAIL week type support on input element assert_equals: expected &quot;week&quot; but got &quot;text&quot;
+PASS [week] The value must be a value that is a valid global date and time string 
+PASS [week] The min attribute must have a value that is a valid global date and time string 
+PASS [week] The max attribute must have a value that is a valid global date and time string 
+PASS [week] The step attribute must be expressed in seconds 
+PASS [week] stepUp method support on input 'week' element 
+PASS [week] stepDown method support on input 'week' element 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementdatetimelocalexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime-local-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime-local-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime-local-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,13 @@
</span><ins>+
+PASS empty value 
+PASS datetime-local input value set to 2014-01-01T11:11:11.111 without min/max 
+FAIL datetime-local input value set to 2014-01-01 11:11:11.111 without min/max assert_equals: expected &quot;2014-01-01T11:11:11.111&quot; but got &quot;2014-01-01 11:11:11.111&quot;
+FAIL datetime-local input value set to 2014-01-01 11:11 without min/max assert_equals: expected &quot;2014-01-01T11:11&quot; but got &quot;2014-01-01 11:11&quot;
+FAIL datetime-local input value set to 2014-01-01 00:00:00.000 without min/max assert_equals: expected &quot;2014-01-01T00:00&quot; but got &quot;2014-01-01 00:00:00.000&quot;
+FAIL datetime-local input value set to 2014-01-0 11:11 without min/max assert_equals: expected &quot;&quot; but got &quot;2014-01-0 11:11&quot;
+FAIL datetime-local input value set to 2014-01-01 11:1 without min/max assert_equals: expected &quot;&quot; but got &quot;2014-01-01 11:1&quot;
+FAIL Value &gt;= min attribute assert_equals: expected &quot;2014-01-01T11:12&quot; but got &quot;2014-01-01 11:12&quot;
+FAIL Value &lt; min attribute assert_equals: expected &quot;2014-01-01T11:11&quot; but got &quot;2014-01-01 11:10&quot;
+FAIL Value &lt;= max attribute assert_equals: expected &quot;2014-01-01T11:10&quot; but got &quot;2014-01-01 11:10&quot;
+FAIL Value &gt; max attribute assert_equals: expected &quot;2014-01-01T11:11&quot; but got &quot;2014-01-01 11:12&quot;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementdatetimelocalhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime-local.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime-local.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime-local.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,36 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Form input type=datetime-local&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/multipage/common-microsyntaxes.html#local-dates-and-times&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/multipage/states-of-the-type-attribute.html#local-date-and-time-state-(type=datetime-local)&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  var datetimeLocal = [
+    {value: &quot;&quot;, expected: &quot;&quot;, testname: &quot;empty value&quot;},
+    {value: &quot;2014-01-01T11:11:11.111&quot;, expected: &quot;2014-01-01T11:11:11.111&quot;, testname: &quot;datetime-local input value set to 2014-01-01T11:11:11.111 without min/max&quot;},
+    {value: &quot;2014-01-01 11:11:11.111&quot;, expected: &quot;2014-01-01T11:11:11.111&quot;, testname: &quot;datetime-local input value set to 2014-01-01 11:11:11.111 without min/max&quot;},
+    {value: &quot;2014-01-01 11:11&quot;, expected: &quot;2014-01-01T11:11&quot;, testname: &quot;datetime-local input value set to 2014-01-01 11:11 without min/max&quot;},
+    {value: &quot;2014-01-01 00:00:00.000&quot;, expected: &quot;2014-01-01T00:00&quot;, testname: &quot;datetime-local input value set to 2014-01-01 00:00:00.000 without min/max&quot;},
+    {value: &quot;2014-01-0 11:11&quot;, expected: &quot;&quot;, testname: &quot;datetime-local input value set to 2014-01-0 11:11 without min/max&quot;},
+    {value: &quot;2014-01-01 11:1&quot;, expected: &quot;&quot;, testname: &quot;datetime-local input value set to 2014-01-01 11:1 without min/max&quot;},
+    {value: &quot;2014-01-01 11:12&quot;, attributes: { min: &quot;2014-01-01 11:11&quot; }, expected: &quot;2014-01-01T11:12&quot;, testname: &quot;Value &gt;= min attribute&quot;},
+    {value: &quot;2014-01-01 11:10&quot;, attributes: { min: &quot;2014-01-01 11:11&quot; }, expected: &quot;2014-01-01T11:11&quot;, testname: &quot;Value &lt; min attribute&quot;},
+    {value: &quot;2014-01-01 11:10&quot;, attributes: { max: &quot;2014-01-01 11:11&quot; }, expected: &quot;2014-01-01T11:10&quot;, testname: &quot;Value &lt;= max attribute&quot;},
+    {value: &quot;2014-01-01 11:12&quot;, attributes: { max: &quot;2014-01-01 11:11&quot; }, expected: &quot;2014-01-01T11:11&quot;, testname: &quot;Value &gt; max attribute&quot;}
+  ];
+  for (var i = 0; i &lt; datetimeLocal.length; i++) {
+    var w = datetimeLocal[i];
+    test(function() {
+      var input = document.createElement(&quot;input&quot;);
+      input.type = &quot;datetime-local&quot;;
+      input.value = w.value;
+      for(var attr in w.attributes) {
+        input[attr] = w.attributes[attr];
+      }
+      assert_equals(input.value, w.expected);
+    }, w.testname);
+  }
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementdatetimehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,106 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;title&gt;Date &amp; Time Inputs&lt;/title&gt;
+    &lt;meta name=viewport content=&quot;width=device-width, maximum-scale=1.0, user-scalable=no&quot; /&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Fabrice Clari&quot; href=&quot;mailto:f.clari@inno-group.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Dimitri Bocquet&quot; href=&quot;mailto:Dimitri.Bocquet@mosquito-fp7.eu&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-input-element&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+
+      &lt;h1&gt;Date &amp; Time Inputs&lt;/h1&gt;
+      &lt;div style=&quot;display: none&quot;&gt;
+        &lt;input type=&quot;date&quot; value=&quot;2011-12-01&quot; min=&quot;2011-12-01&quot; max=&quot;2011-12-31&quot; step=&quot;5&quot; /&gt;
+        &lt;input type=&quot;time&quot; value= &quot;12:00&quot; min=&quot;11:30&quot; max=&quot;14:00&quot; step=&quot;600&quot; /&gt;
+        &lt;input type=&quot;datetime&quot; value=&quot;2011-12-01T12:00Z&quot; min=&quot;2011-12-01T12:00Z&quot; max=&quot;2011-12-31T22:00Z&quot; step=&quot;7200&quot; /&gt;
+        &lt;input type=&quot;month&quot; value=&quot;2011-01&quot; min=&quot;2011-01&quot; max=&quot;2011-12&quot; step=&quot;2&quot; /&gt;
+        &lt;input type=&quot;week&quot; value=&quot;2011-W40&quot; min=&quot;2011-W20&quot; max=&quot;2011-W50&quot; step=&quot;2&quot; /&gt;
+    &lt;/div&gt;
+
+    &lt;div id=&quot;log&quot;&gt;
+    &lt;/div&gt;
+
+  &lt;script type=&quot;text/javascript&quot;&gt;
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[0].type, &quot;date&quot;)}, &quot;date type support on input element&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-type&quot; });
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[0].value, &quot;2011-12-01&quot;)}, &quot;[date] The value must be a valid global date and time string&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-value&quot; });
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[0].min, &quot;2011-12-01&quot;)}, &quot;[date] The min attribute must have a value that is a valid global date and time string&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-min&quot; });
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[0].max, &quot;2011-12-31&quot;)}, &quot;[date] The max attribute must have a value that is a valid global date and time string&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-max&quot; });
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[0].step, &quot;5&quot;)}, &quot;[date] The step attribute must be expressed in seconds&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-step&quot; });
+    test(function() {assert_true(typeof(document.getElementsByTagName(&quot;input&quot;)[0].stepUp) == &quot;function&quot;)}, &quot;[date] stepUp method support on input 'date' element&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-stepup&quot; });
+    test(function() {assert_true(typeof(document.getElementsByTagName(&quot;input&quot;)[0].stepDown) == &quot;function&quot;)}, &quot;[date] stepDown method support on input 'date' element&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-stepdown&quot; });
+
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[1].type, &quot;time&quot;)}, &quot;[time] time type support on input element&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-type&quot; });
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[1].value, &quot;12:00&quot;)}, &quot;[time] The value must be a valid global date and time string&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-value&quot; });
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[1].min, &quot;11:30&quot;)}, &quot;[time] The min attribute must have a value that is a valid global date and time string&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-min&quot; });
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[1].max, &quot;14:00&quot;)}, &quot;[time] The max attribute must have a value that is a valid global date and time string&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-max&quot; });
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[1].step, &quot;600&quot;)}, &quot;[time] The step attribute must be expressed in seconds&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-step&quot; });
+    test(function() {assert_true(typeof(document.getElementsByTagName(&quot;input&quot;)[1].stepUp) == &quot;function&quot;)}, &quot;[time] stepUp method support on input 'time' element&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-stepup&quot; });
+    test(function() {assert_true(typeof(document.getElementsByTagName(&quot;input&quot;)[1].stepDown) == &quot;function&quot;)}, &quot;[time] stepDown method support on input 'time' element&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-stepdown&quot; });
+
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[2].type, &quot;datetime&quot;)}, &quot;datetime type support on input element&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-type&quot; });
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[2].value, &quot;2011-12-01T12:00Z&quot;)}, &quot;[datetime] The must be a valid global date and time string&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-value&quot; });
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[2].min, &quot;2011-12-01T12:00Z&quot;)}, &quot;[datetime] The min attribute must have a value that is a valid global date and time string&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-min&quot; });
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[2].max, &quot;2011-12-31T22:00Z&quot;)}, &quot;[datetime] The max attribute must have a value that is a valid global date and time string&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-max&quot; });
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[2].step, &quot;7200&quot;)}, &quot;[datetime] The step attribute must be expressed in seconds&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-step&quot; });
+    test(function() {assert_true(typeof(document.getElementsByTagName(&quot;input&quot;)[2].stepUp) == &quot;function&quot;)}, &quot;[datetime] stepUp method support on input 'datetime' element&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-stepup&quot; });
+    test(function() {assert_true(typeof(document.getElementsByTagName(&quot;input&quot;)[2].stepDown) == &quot;function&quot;)}, &quot;[datetime] stepDown method support on input 'datetime' element&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-stepdown&quot; });
+
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[3].type, &quot;month&quot;)}, &quot;month type support on input element&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-type&quot; });
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[3].value, &quot;2011-01&quot;)}, &quot;[month] The value must be a value that is a valid global date and time string&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-value&quot; });
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[3].min, &quot;2011-01&quot;)}, &quot;[month] The min attribute must have a value that is a valid global date and time string&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-min&quot; });
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[3].max, &quot;2011-12&quot;)}, &quot;[month] The max attribute must have a value that is a valid global date and time string&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-max&quot; });
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[3].step, &quot;2&quot;)}, &quot;[month] The step attribute must be expressed in seconds&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-step&quot; });
+    test(function() {assert_true(typeof(document.getElementsByTagName(&quot;input&quot;)[3].stepUp) == &quot;function&quot;)}, &quot;[month] stepUp method support on input 'month' element&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-stepup&quot; });
+    test(function() {assert_true(typeof(document.getElementsByTagName(&quot;input&quot;)[3].stepDown) == &quot;function&quot;)}, &quot;[month] stepDown method support on input 'month' element&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-stepdown&quot; });
+
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[4].type, &quot;week&quot;)}, &quot;week type support on input element&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-type&quot; });
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[4].value, &quot;2011-W40&quot;)}, &quot;[week] The value must be a value that is a valid global date and time string&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-value&quot; });
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[4].min, &quot;2011-W20&quot;)}, &quot;[week] The min attribute must have a value that is a valid global date and time string&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-min&quot; });
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[4].max, &quot;2011-W50&quot;)}, &quot;[week] The max attribute must have a value that is a valid global date and time string&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-max&quot; });
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[4].step, &quot;2&quot;)}, &quot;[week] The step attribute must be expressed in seconds&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-step&quot; });
+    test(function() {assert_true(typeof(document.getElementsByTagName(&quot;input&quot;)[4].stepUp) == &quot;function&quot;)}, &quot;[week] stepUp method support on input 'week' element&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-stepup&quot; });
+    test(function() {assert_true(typeof(document.getElementsByTagName(&quot;input&quot;)[4].stepDown) == &quot;function&quot;)}, &quot;[week] stepDown method support on input 'week' element&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-stepdown&quot; });
+
+  &lt;/script&gt;
+
+  &lt;/body&gt;
+
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementemailexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/email-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/email-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/email-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+ 
+
+PASS single_email doesn't have the multiple attribute 
+PASS value should be sanitized: strip line breaks 
+PASS Email address validity 
+PASS When the multiple attribute is removed, the user agent must run the value sanitization algorithm 
+PASS multiple_email has the multiple attribute 
+PASS run the value sanitization algorithm after setting a new value 
+PASS valid value is a set of valid email addresses separated by a single ',' 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementemailhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/email.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/email.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/email.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,58 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;Input Email&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Kazuki Kanamori&quot; href=&quot;mailto:yogurito@gmail.com&quot;&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#e-mail-state-(type=email)&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;input type=&quot;email&quot; id=&quot;single_email&quot; value=&quot;user@example.com&quot;/&gt;
+&lt;input type=&quot;email&quot; id=&quot;multiple_email&quot; value=&quot;user1@example.com, user2@test.com&quot; multiple/&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+
+&lt;script type=&quot;text/javascript&quot;&gt;
+  var single = document.getElementById('single_email'),
+      mult = document.getElementById('multiple_email');
+
+  test(function(){
+    assert_false(single.multiple);
+  }, &quot;single_email doesn't have the multiple attribute&quot;);
+
+  test(function(){
+    single.value = 'user2@example.com\u000A';
+    assert_equals(single.value, 'user2@example.com');
+    single.value = 'user3@example.com\u000D';
+    assert_equals(single.value, 'user3@example.com');
+  }, 'value should be sanitized: strip line breaks');
+
+  test(function(){
+    single.value = 'user4@example.com';
+    assert_true(single.validity.valid);
+    single.value = 'example.com';
+    assert_false(single.validity.valid);
+  }, 'Email address validity');
+
+  test(function(){
+    single.setAttribute('multiple', true);
+    single.value = '  user@example.com  , user2@example.com  ';
+    assert_equals(single.value, 'user@example.com,user2@example.com');
+    single.removeAttribute('multiple');
+    assert_equals(single.value, 'user@example.com,user2@example.com');
+  }, 'When the multiple attribute is removed, the user agent must run the value sanitization algorithm');
+
+  test(function(){
+    assert_true(mult.multiple);
+  }, &quot;multiple_email has the multiple attribute&quot;);
+
+  test(function(){
+    mult.value = '  user1@example.com  , user2@test.com, user3@test.com  ';
+    assert_equals(mult.value, 'user1@example.com,user2@test.com,user3@test.com');
+  }, &quot;run the value sanitization algorithm after setting a new value&quot;);
+
+  test(function(){
+    mult.value = 'user1@example.com,user2@test.com,user3@test.com';
+    assert_true(mult.validity.valid);
+
+    mult.value = 'u,ser1@example.com,user2@test.com,user3@test.com';
+    assert_false(mult.validity.valid);
+  }, &quot;valid value is a set of valid email addresses separated by a single ','&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementfilesexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/files-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/files-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/files-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,25 @@
</span><ins>+
+PASS files for input type=hidden 
+PASS files for input type=text 
+PASS files for input type=search 
+PASS files for input type=tel 
+PASS files for input type=url 
+PASS files for input type=email 
+PASS files for input type=password 
+PASS files for input type=datetime 
+PASS files for input type=date 
+PASS files for input type=month 
+PASS files for input type=week 
+PASS files for input type=time 
+PASS files for input type=datetime-local 
+PASS files for input type=number 
+PASS files for input type=range 
+PASS files for input type=color 
+PASS files for input type=checkbox 
+PASS files for input type=radio 
+PASS files for input type=submit 
+PASS files for input type=image 
+PASS files for input type=reset 
+PASS files for input type=button 
+PASS files for input type=file 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementfileshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/files.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/files.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/files.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,49 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;HTMLInputElement#files&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+var types = [
+  &quot;hidden&quot;,
+  &quot;text&quot;,
+  &quot;search&quot;,
+  &quot;tel&quot;,
+  &quot;url&quot;,
+  &quot;email&quot;,
+  &quot;password&quot;,
+  &quot;datetime&quot;,
+  &quot;date&quot;,
+  &quot;month&quot;,
+  &quot;week&quot;,
+  &quot;time&quot;,
+  &quot;datetime-local&quot;,
+  &quot;number&quot;,
+  &quot;range&quot;,
+  &quot;color&quot;,
+  &quot;checkbox&quot;,
+  &quot;radio&quot;,
+  &quot;submit&quot;,
+  &quot;image&quot;,
+  &quot;reset&quot;,
+  &quot;button&quot;,
+];
+
+types.forEach(function(type) {
+  test(function() {
+    var input = document.createElement(&quot;input&quot;);
+    input.type = type;
+    assert_equals(input.files, null, &quot;files should be null&quot;);
+  }, &quot;files for input type=&quot; + type);
+});
+
+test(function() {
+  var input = document.createElement(&quot;input&quot;);
+  input.type = &quot;file&quot;;
+  assert_not_equals(input.files, null);
+  assert_true(input.files instanceof FileList, &quot;files should be a FileList&quot;);
+  var files = input.files;
+  assert_equals(input.files, files, &quot;files should return the same object&quot;);
+}, &quot;files for input type=file&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementhiddenexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/hidden-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/hidden-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/hidden-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,13 @@
</span><ins>+Hidden input element
+
+
+PASS Value returns the current value for hidden 
+PASS Setting value changes the current value for hidden 
+PASS files attribute must return null for hidden 
+PASS valueAsDate attribute must return null for hidden 
+PASS valueAsNumber attribute must return NaN for hidden 
+FAIL list attribute must return null for hidden assert_equals: expected (object) null but got (undefined) undefined
+PASS stepDown does not apply for hidden 
+PASS stepUp does not apply for hidden 
+PASS input type=hidden is barred from constraint validation 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementhiddenhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/hidden.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/hidden.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/hidden.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,74 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;title&gt;Hidden input element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Kinuko Yasuda&quot; href=&quot;mailto:kinuko@chromium.org&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#hidden-state-(type=hidden)&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;/head&gt;
+
+  &lt;body&gt;
+    &lt;h1&gt;Hidden input element&lt;/h1&gt;
+    &lt;div style=&quot;display: none&quot;&gt;
+
+    &lt;input id=&quot;hidden&quot; type=&quot;hidden&quot; /&gt;
+    &lt;input id=&quot;hidden_with_value&quot; type=&quot;hidden&quot; value=&quot;foo&quot; /&gt;
+
+    &lt;/div&gt;
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script type=&quot;text/javascript&quot;&gt;
+
+    test(
+      function() {
+        assert_equals(document.getElementById(&quot;hidden&quot;).value, &quot;&quot;);
+        assert_equals(document.getElementById(&quot;hidden_with_value&quot;).value, &quot;foo&quot;);
+      }, &quot;Value returns the current value for hidden&quot;);
+
+    test(
+      function() {
+        document.getElementById(&quot;hidden&quot;).value = &quot;A&quot;;
+        assert_equals(document.getElementById(&quot;hidden&quot;).value, &quot;A&quot;);
+        document.getElementById(&quot;hidden&quot;).value = &quot;B&quot;;
+        assert_equals(document.getElementById(&quot;hidden&quot;).value, &quot;B&quot;);
+      }, &quot;Setting value changes the current value for hidden&quot;);
+
+    test(
+      function() {
+        assert_equals(document.getElementById(&quot;hidden&quot;).files, null);
+      }, &quot;files attribute must return null for hidden&quot;);
+
+    test(
+      function() {
+        assert_equals(document.getElementById(&quot;hidden&quot;).valueAsDate, null);
+      }, &quot;valueAsDate attribute must return null for hidden&quot;);
+
+    test(
+      function() {
+        assert_equals(document.getElementById(&quot;hidden&quot;).valueAsNumber, NaN);
+      }, &quot;valueAsNumber attribute must return NaN for hidden&quot;);
+
+    test(
+      function() {
+        assert_equals(document.getElementById(&quot;hidden&quot;).list, null);
+      }, &quot;list attribute must return null for hidden&quot;);
+
+    test(
+      function() {
+        var el = document.getElementById(&quot;hidden&quot;);
+        assert_throws(&quot;InvalidStateError&quot;, function() { el.stepDown(); }, &quot;&quot;);
+      }, &quot;stepDown does not apply for hidden&quot;);
+
+    test(
+      function() {
+        var el = document.getElementById(&quot;hidden&quot;);
+        assert_throws(&quot;InvalidStateError&quot;, function() { el.stepUp(); }, &quot;&quot;);
+      }, &quot;stepUp does not apply for hidden&quot;);
+
+    test(function(){
+      var el = document.getElementById(&quot;hidden&quot;);
+      assert_false(el.willValidate);
+    }, &quot;input type=hidden is barred from constraint validation&quot;);
+  &lt;/script&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementimage01expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/image01-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/image01-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/image01-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;input type image reference file&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;img src=&quot;/w3c/resources/media/poster.png&quot;/&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementimage01html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/image01.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/image01.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/image01.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;input type image&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#image-button-state-(type=image)&quot;&gt;
+&lt;link rel=&quot;match&quot; href=&quot;image01-ref.html&quot;&gt;
+&lt;input type=image id=image src=&quot;/w3c/resources/media/poster.png&quot;&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementinputtextselection01expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-textselection-01-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-textselection-01-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-textselection-01-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,25 @@
</span><ins>+
+PASS The selection interface members 
+PASS Selection attributes should apply to type text 
+PASS Selection attributes should apply to type search 
+PASS Selection attributes should apply to type url 
+PASS Selection attributes should apply to type tel 
+PASS Selection attributes should apply to type email 
+PASS Selection attributes should apply to type password 
+FAIL Selection attributes should not apply to type hidden assert_throws: Should throw with type hidden function &quot;function () { input.select(); }&quot; did not throw
+FAIL Selection attributes should not apply to type datetime assert_equals: Input type unsupported expected &quot;datetime&quot; but got &quot;text&quot;
+FAIL Selection attributes should not apply to type date assert_equals: Input type unsupported expected &quot;date&quot; but got &quot;text&quot;
+FAIL Selection attributes should not apply to type month assert_equals: Input type unsupported expected &quot;month&quot; but got &quot;text&quot;
+FAIL Selection attributes should not apply to type week assert_equals: Input type unsupported expected &quot;week&quot; but got &quot;text&quot;
+FAIL Selection attributes should not apply to type datetime-local assert_equals: Input type unsupported expected &quot;datetime-local&quot; but got &quot;text&quot;
+FAIL Selection attributes should not apply to type number assert_throws: Should throw with type number function &quot;function () { input.select(); }&quot; did not throw
+FAIL Selection attributes should not apply to type range assert_throws: Should throw with type range function &quot;function () { input.select(); }&quot; did not throw
+FAIL Selection attributes should not apply to type color assert_throws: Should throw with type color function &quot;function () { input.select(); }&quot; did not throw
+FAIL Selection attributes should not apply to type checkbox assert_throws: Should throw with type checkbox function &quot;function () { input.select(); }&quot; did not throw
+FAIL Selection attributes should not apply to type radio assert_throws: Should throw with type radio function &quot;function () { input.select(); }&quot; did not throw
+FAIL Selection attributes should not apply to type button assert_throws: Should throw with type button function &quot;function () { input.select(); }&quot; did not throw
+FAIL Selection attributes should not apply to type file assert_throws: Should throw with type file function &quot;function () { input.select(); }&quot; did not throw
+FAIL Selection attributes should not apply to type submit assert_throws: Should throw with type submit function &quot;function () { input.select(); }&quot; did not throw
+FAIL Selection attributes should not apply to type image assert_throws: Should throw with type image function &quot;function () { input.select(); }&quot; did not throw
+FAIL Selection attributes should not apply to type reset assert_throws: Should throw with type reset function &quot;function () { input.select(); }&quot; did not throw
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementinputtextselection01html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-textselection-01.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-textselection-01.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-textselection-01.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,42 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;title&gt;The selection interface members&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#textFieldSelection&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  var valid = [&quot;text&quot;, &quot;search&quot;, &quot;url&quot;, &quot;tel&quot;, &quot;email&quot;, &quot;password&quot;];
+  var invalid = [&quot;hidden&quot;, &quot;datetime&quot;, &quot;date&quot;, &quot;month&quot;, &quot;week&quot;, &quot;datetime-local&quot;,
+                 &quot;number&quot;, &quot;range&quot;, &quot;color&quot;, &quot;checkbox&quot;, &quot;radio&quot;, &quot;button&quot;,
+                 &quot;file&quot;, &quot;submit&quot;, &quot;image&quot;, &quot;reset&quot;];
+  valid.forEach(function(aType) {
+    test(function() {
+      var input = document.createElement(&quot;input&quot;);
+      input.type = aType;
+      assert_equals(input.type, aType, &quot;Input type unsupported&quot;)
+      input.select();
+      var a = input.selectionStart;
+      input.selectionStart = 0;
+      a = input.selectionEnd;
+      input.selectionEnd = 0;
+      input.setSelectionRange(0, 0);
+    }, &quot;Selection attributes should apply to type &quot; + aType)
+  })
+
+  invalid.forEach(function(aType) {
+    test(function() {
+      var input = document.createElement(&quot;input&quot;);
+      input.type = aType;
+      assert_equals(input.type, aType, &quot;Input type unsupported&quot;)
+      assert_throws(&quot;INVALID_STATE_ERR&quot;, function() { input.select(); }, &quot;Should throw with type &quot; + aType);
+      assert_throws(&quot;INVALID_STATE_ERR&quot;, function() { var a = input.selectionStart; });
+      assert_throws(&quot;INVALID_STATE_ERR&quot;, function() { input.selectionStart = 0; });
+      assert_throws(&quot;INVALID_STATE_ERR&quot;, function() { var a = input.selectionEnd; });
+      assert_throws(&quot;INVALID_STATE_ERR&quot;, function() { input.selectionEnd = 0; });
+      assert_throws(&quot;INVALID_STATE_ERR&quot;, function() { input.setSelectionRange(0, 0); });
+    }, &quot;Selection attributes should not apply to type &quot; + aType)
+  })
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementinputtypebuttonexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-type-button-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-type-button-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-type-button-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+
+PASS default behavior 
+PASS empty value attribute 
+PASS label value 
+PASS mutable element's activation behavior is to do nothing. 
+PASS immutable element has no activation behavior. 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementinputtypebuttonhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-type-button.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-type-button.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-type-button.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,51 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;head&gt;
+&lt;title&gt;input type button&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Takeharu.Oshida&quot; href=&quot;mailto:georgeosddev@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#button-state-(type=button)&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;div id=&quot;hide&quot; style=&quot;display&quot;&gt;
+  &lt;input type=&quot;button&quot;/&gt;
+  &lt;input type=&quot;button&quot; value=&quot;BUTTON&quot;/&gt;
+  &lt;form action=&quot;/&quot; method=&quot;get&quot; onsubmit=&quot;isSubmitted = true;return false;&quot;&gt;
+    &lt;input type=&quot;button&quot; value=&quot;mutable&quot;/&gt;
+  &lt;/form&gt;
+  &lt;form action=&quot;/&quot; method=&quot;get&quot; onsubmit=&quot;isSubmitted = true;return false;&quot;&gt;
+    &lt;input type=&quot;button&quot; value=&quot;immutable&quot; disabled/&gt;
+  &lt;/form&gt;
+&lt;/div&gt;
+&lt;script&gt;
+var isSubmitted = false;
+var buttons = document.getElementsByTagName(&quot;input&quot;);
+
+test(function() {
+  assert_equals(buttons[0].click(), undefined, &quot;The input element represents a button with no default behavior&quot;);
+},&quot;default behavior&quot;);
+
+test(function() {
+  assert_equals(buttons[0].value, &quot;&quot;, &quot;It must be the empty string&quot;);
+},&quot;empty value attribute&quot;);
+
+test(function() {
+  document.getElementById(&quot;hide&quot;).style.display = &quot;block&quot;;
+  assert_not_equals(buttons[0].offsetWidth, buttons[1].offsetWidth, &quot;If the element has a value attribute, the button's label must be the value of that attribute&quot;);
+  document.getElementById(&quot;hide&quot;).style.display = &quot;none&quot;;
+},&quot;label value&quot;);
+
+test(function() {
+  isSubmitted = false;
+  buttons[2].click();
+  assert_equals(isSubmitted, false, &quot;If the element is mutable, the element's activation behavior is to do nothing.&quot;);
+},&quot;mutable element's activation behavior is to do nothing.&quot;);
+
+test(function() {
+  isSubmitted = false;
+  buttons[3].click()
+  assert_equals(isSubmitted, false, &quot;If the element is immutable, the element has no activation behavior.&quot;);
+},&quot;immutable element has no activation behavior.&quot;);
+&lt;/script&gt;
+&lt;/body&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementinputtypecheckboxexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-type-checkbox-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-type-checkbox-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-type-checkbox-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+
+PASS default checkbox has no checkedness state 
+PASS checkbox with initial state set to checked has checkedness state 
+PASS changing the checked attribute to a string sets the checkedness state 
+PASS a checkbox has an indeterminate state set to false onload 
+PASS on setting, a checkbox's indeterminate state must be set to the new value and returns the last value it was set to 
+PASS default/on: on getting, if the element has a value attribute, it must return that attribute's value; otherwise, it must return the string 'on' 
+PASS on getting, if the element has a value attribute, it must return that attribute's value 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementinputtypecheckboxhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-type-checkbox.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-type-checkbox.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-type-checkbox.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,60 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;head&gt;
+&lt;title&gt;input type checkbox&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Gary Gao&quot; href=&quot;mailto:angrytoast@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#checkbox-state-(type=checkbox)&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div style=&quot;display:none;&quot;&gt;
+  &lt;input id=&quot;checkbox_default&quot; type=&quot;checkbox&quot; width=&quot;20&quot; /&gt;
+
+  &lt;input id=&quot;checkbox_checked&quot; type=&quot;checkbox&quot; checked /&gt;
+
+  &lt;input id=&quot;checkbox_indeterminate&quot; type=&quot;checkbox&quot; /&gt;
+
+  &lt;input id=&quot;checkbox_default_value&quot; type=&quot;checkbox&quot; /&gt;
+&lt;/div&gt;
+
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+
+&lt;script&gt;
+  var checkbox_default = document.getElementById('checkbox_default'),
+      checkbox_checked = document.getElementById('checkbox_checked'),
+      checkbox_indeterminate = document.getElementById('checkbox_indeterminate'),
+      checkbox_default_value = document.getElementById('checkbox_default_value');
+
+  test(function() {
+    assert_false(checkbox_default.checked);
+  }, &quot;default checkbox has no checkedness state&quot;);
+
+  test(function() {
+    assert_true(checkbox_checked.checked);
+  }, &quot;checkbox with initial state set to checked has checkedness state&quot;);
+
+  test(function() {
+    checkbox_default.checked = 'chicken'
+    assert_true(checkbox_default.checked);
+  }, &quot;changing the checked attribute to a string sets the checkedness state&quot;);
+
+  test(function() {
+    assert_false(checkbox_indeterminate.indeterminate);
+  }, &quot;a checkbox has an indeterminate state set to false onload&quot;);
+
+  test(function() {
+    checkbox_indeterminate.indeterminate = true,
+    assert_true(checkbox_indeterminate.indeterminate);
+  }, &quot;on setting, a checkbox's indeterminate state must be set to the new value and returns the last value it was set to&quot;);
+
+  test(function() {
+    assert_equals(checkbox_default_value.value, 'on');
+  }, &quot;default/on: on getting, if the element has a value attribute, it must return that attribute's value; otherwise, it must return the string 'on'&quot;);
+
+  test(function() {
+    checkbox_default_value.value = 'chicken'
+    assert_equals(checkbox_default_value.value, 'chicken');
+  }, &quot;on getting, if the element has a value attribute, it must return that attribute's value&quot;);
+&lt;/script&gt;
+
+&lt;/body&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementmonthexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/month-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/month-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/month-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,16 @@
</span><ins>+Inputs Month
+
+
+FAIL month type support on input element assert_equals: expected &quot;month&quot; but got &quot;text&quot;
+FAIL The value attribute, if specified and not empty, must have a value that is a valid month string assert_equals: expected &quot;2011-01&quot; but got &quot;1999-01&quot;
+FAIL The min attribute, if specified, must have a value that is a valid month string. assert_equals: expected &quot;&quot; but got &quot;invalid_min&quot;
+FAIL The max attribute, if specified, must have a value that is a valid month string assert_equals: expected &quot;2099-01&quot; but got &quot;2011-12&quot;
+FAIL User agents must not allow the user to set the value to a non-empty string that is not a valid month string. assert_equals: expected &quot;&quot; but got &quot;invalid-month&quot;
+PASS Month value can be empty string. 
+FAIL When value attribute has two digits year value, the value,which is invalid, must return empty string. assert_equals: expected &quot;&quot; but got &quot;13-06&quot;
+FAIL When value is set with invalid value, the value must return empty string. assert_equals: expected &quot;&quot; but got &quot;invalid value&quot;
+FAIL When value is given invalid value to non-empty valid string, the value must be same as before. assert_equals: expected &quot;2013-05&quot; but got &quot;invalid value&quot;
+FAIL When step attribute is given invalid value, it must ignore the invalid value and use defaul value instead. InvalidStateError: DOM Exception 11
+FAIL Month should be &lt;= 13: If the value of the element is not a valid month string, then set it to the empty string instead. assert_equals: expected &quot;&quot; but got &quot;2013-13&quot;
+FAIL Month should be &gt; 0: If the value of the element is not a valid month string, then set it to the empty string instead.&gt; assert_equals: expected &quot;&quot; but got &quot;2013-00&quot;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementmonthhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/month.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/month.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/month.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,93 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;title&gt;Inputs Month&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Morishita Hiromitsu&quot; href=&quot;mailto:hero@asterisk-works.jp&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;kaseijin&quot; href=&quot;mailto:pcmkas@gmail.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#months&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#month-state-(type=month)&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;h1&gt;Inputs Month&lt;/h1&gt;
+    &lt;div style=&quot;display: none&quot;&gt;
+      &lt;input id=&quot;valid&quot; type=&quot;month&quot; value=&quot;2011-11&quot; min=&quot;2011-01&quot; max=&quot;2011-12&quot; /&gt;
+      &lt;input id=&quot;too_small_value&quot; type=&quot;month&quot; value=&quot;1999-01&quot; min=&quot;2011-01&quot; max=&quot;2011-12&quot;/&gt;
+      &lt;input id=&quot;too_large_value&quot; type=&quot;month&quot; value=&quot;2099-01&quot; min=&quot;2011-01&quot; max=&quot;2011-12&quot;/&gt;
+      &lt;input id=&quot;invalid_value&quot; type=&quot;month&quot; value=&quot;invalid-month&quot; min=&quot;2011-01&quot; max=&quot;2011-12&quot;/&gt;
+      &lt;input id=&quot;invalid_min&quot; type=&quot;month&quot; value=&quot;2011-01&quot; min=&quot;invalid_min&quot; max=&quot;2011-12&quot;/&gt;
+      &lt;input id=&quot;invalid_max&quot; type=&quot;month&quot; value=&quot;2011-01&quot; min=&quot;2011-01&quot; max=&quot;invalid_max&quot;/&gt;
+      &lt;input id=&quot;min_larger_than_max&quot; type=&quot;month&quot; value=&quot;2011-01&quot; min=&quot;2099-01&quot; max=&quot;2011-12&quot;/&gt;
+      &lt;input id=&quot;value_can_be_empty_string&quot; type=&quot;month&quot; value=&quot;2013-06&quot; /&gt;
+      &lt;input id=&quot;invalid_value_with_two_digits_year&quot; type=&quot;month&quot; value=&quot;13-06&quot; /&gt;
+      &lt;input id=&quot;invalid_value_is_set&quot; type=&quot;month&quot; /&gt;
+      &lt;input id=&quot;invalid_value_is_set_to_valid_value&quot; type=&quot;month&quot; value=&quot;2013-05&quot; /&gt;
+      &lt;input id=&quot;step_attribute_is_invalid_value&quot; type=&quot;month&quot; value=&quot;2013-06&quot; step=&quot;invalid_step_value&quot; /&gt;
+      &lt;input id=&quot;invalid_month_too_high&quot; type=&quot;month&quot; value=&quot;2013-13&quot; /&gt;
+      &lt;input id=&quot;invalid_month_too_low&quot; type=&quot;month&quot; value=&quot;2013-00&quot; /&gt;
+    &lt;/div&gt;
+
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+
+    &lt;script&gt;
+      test(function() {
+        assert_equals(document.getElementById(&quot;valid&quot;).type, &quot;month&quot;)
+      }, &quot;month type support on input element&quot;);
+
+      test(function() {
+        assert_equals(document.getElementById(&quot;valid&quot;).value, &quot;2011-11&quot;),
+        assert_equals(document.getElementById(&quot;too_small_value&quot;).value, &quot;2011-01&quot;),
+        assert_equals(document.getElementById(&quot;too_large_value&quot;).value, &quot;2011-12&quot;)
+      }, &quot;The value attribute, if specified and not empty, must have a value that is a valid month string&quot;);
+
+      test(function() {
+        assert_equals(document.getElementById(&quot;valid&quot;).min, &quot;2011-01&quot;),
+        assert_equals(document.getElementById(&quot;invalid_min&quot;).min, &quot;&quot;)
+      }, &quot;The min attribute, if specified, must have a value that is a valid month string.&quot;);
+
+      test(function() {
+        assert_equals(document.getElementById(&quot;valid&quot;).max, &quot;2011-12&quot;),
+        assert_equals(document.getElementById(&quot;min_larger_than_max&quot;).max, &quot;2099-01&quot;),
+        assert_equals(document.getElementById(&quot;invalid_max&quot;).max, &quot;&quot;)
+      }, &quot;The max attribute, if specified, must have a value that is a valid month string&quot;);
+
+      test(function() {
+        assert_equals(document.getElementById(&quot;invalid_value&quot;).value, &quot;&quot;)
+      }, &quot;User agents must not allow the user to set the value to a non-empty string that is not a valid month string.&quot;);
+
+      test(function() {
+        document.getElementById(&quot;value_can_be_empty_string&quot;).value = &quot;&quot;;
+        assert_equals(document.getElementById(&quot;value_can_be_empty_string&quot;).value, &quot;&quot;)
+      }, &quot;Month value can be empty string.&quot;);
+
+      test(function() {
+        assert_equals(document.getElementById(&quot;invalid_value_with_two_digits_year&quot;).value, &quot;&quot;)
+      }, &quot;When value attribute has two digits year value, the value,which is invalid, must return empty string.&quot;);
+
+      test(function() {
+        document.getElementById(&quot;invalid_value_is_set&quot;).value = &quot;invalid value&quot;;
+        assert_equals(document.getElementById(&quot;invalid_value_is_set&quot;).value, &quot;&quot;)
+      }, &quot;When value is set with invalid value, the value must return empty string.&quot;);
+
+      test(function() {
+        document.getElementById(&quot;invalid_value_is_set_to_valid_value&quot;).value = &quot;invalid value&quot;;
+        assert_equals(document.getElementById(&quot;invalid_value_is_set_to_valid_value&quot;).value, &quot;2013-05&quot;)
+      }, &quot;When value is given invalid value to non-empty valid string, the value must be same as before.&quot;);
+
+      test(function() {
+        document.getElementById(&quot;step_attribute_is_invalid_value&quot;).stepUp();
+        assert_equals(document.getElementById(&quot;step_attribute_is_invalid_value&quot;).value, &quot;2013-07&quot;)
+      }, &quot;When step attribute is given invalid value, it must ignore the invalid value and use defaul value instead.&quot;);
+
+      test(function() {
+        assert_equals(document.getElementById(&quot;invalid_month_too_high&quot;).value, &quot;&quot;);
+      }, &quot;Month should be &lt;= 13: If the value of the element is not a valid month string, then set it to the empty string instead.&quot;);
+
+      test(function() {
+        assert_equals(document.getElementById(&quot;invalid_month_too_low&quot;).value, &quot;&quot;);
+      }, &quot;Month should be &gt; 0: If the value of the element is not a valid month string, then set it to the empty string instead.&gt;&quot;);
+    &lt;/script&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementnumberexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/number-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/number-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/number-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,31 @@
</span><ins>+
+PASS empty value 
+PASS value = 11 
+PASS value = 11.12 
+PASS value = -11111 
+PASS value = -11111.123 
+PASS value = 1e2 
+PASS value = 1E2 
+PASS value = 1e+2 
+PASS value = 1e-2 
+PASS value is not a valid floating-point number: 1d+2 
+PASS value not a valid floating-point number: random string 
+PASS Value &gt;= min attribute 
+PASS Value &lt; min attribute 
+PASS Value &lt;= max attribute 
+PASS Value &gt; max attribute 
+PASS value with a leading '.' 
+FAIL value ending with '.' assert_equals: expected &quot;&quot; but got &quot;1.&quot;
+PASS value = -0 
+PASS  value = Infinity 
+PASS value = -Infinity 
+PASS value = NaN 
+FAIL value = 2^53+1 assert_equals: expected &quot;9007199254740992&quot; but got &quot;9007199254740993&quot;
+PASS value &gt;= Number.MAX_VALUE 
+PASS value = 1e 
+FAIL value = +1 assert_equals: expected &quot;1&quot; but got &quot;&quot;
+PASS value = '+' 
+PASS value = '-' 
+FAIL value with a leading whitespace assert_equals: expected &quot;1&quot; but got &quot;&quot;
+FAIL value = 1trailing junk assert_equals: expected &quot;1&quot; but got &quot;&quot;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementnumberhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/number.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/number.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/number.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,53 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Form input type=number&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#password-state-(type=number)&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  var numbers = [
+    {value: &quot;&quot;, expected: &quot;&quot;, testname: &quot;empty value&quot;},
+    {value: &quot;11&quot;, expected: &quot;11&quot;, testname: &quot;value = 11&quot;},
+    {value: &quot;11.12&quot;, expected: &quot;11.12&quot;, testname: &quot;value = 11.12&quot;},
+    {value: &quot;-11111&quot;, expected: &quot;-11111&quot;, testname: &quot;value = -11111&quot;},
+    {value: &quot;-11111.123&quot;, expected: &quot;-11111.123&quot;, testname: &quot;value = -11111.123&quot;},
+    {value: &quot;1e2&quot;, expected: &quot;1e2&quot;, testname: &quot;value = 1e2&quot;},
+    {value: &quot;1E2&quot;, expected: &quot;1E2&quot;, testname: &quot;value = 1E2&quot;},
+    {value: &quot;1e+2&quot;, expected: &quot;1e+2&quot;, testname: &quot;value = 1e+2&quot;},
+    {value: &quot;1e-2&quot;, expected: &quot;1e-2&quot;, testname: &quot;value = 1e-2&quot;},
+    {value: &quot;1d+2&quot;, expected: &quot;&quot;, testname: &quot;value is not a valid floating-point number: 1d+2&quot;},
+    {value: &quot;foobar&quot;, expected: &quot;&quot;, testname: &quot;value not a valid floating-point number: random string&quot;},
+    {value: &quot;11&quot;, attributes: { min: &quot;10&quot; }, expected: &quot;11&quot;, testname: &quot;Value &gt;= min attribute&quot;},
+    {value: &quot;9&quot;, attributes: { min: &quot;10&quot; }, expected: &quot;9&quot;, testname: &quot;Value &lt; min attribute&quot;},
+    {value: &quot;19&quot;, attributes: { max: &quot;20&quot; }, expected: &quot;19&quot;, testname: &quot;Value &lt;= max attribute&quot;},
+    {value: &quot;21&quot;, attributes: { max: &quot;20&quot; }, expected: &quot;21&quot;, testname: &quot;Value &gt; max attribute&quot;},
+    {value: &quot;.1&quot;, expected: &quot;.1&quot;, testname: &quot;value with a leading '.'&quot;},
+    {value: &quot;1.&quot;, expected: &quot;&quot;, testname: &quot;value ending with '.'&quot;},
+    {value: &quot;-0&quot;, expected: &quot;-0&quot;, testname: &quot;value = -0&quot;},
+    {value: &quot;Infinity&quot;, expected: &quot;&quot;, testname: &quot; value = Infinity&quot;},
+    {value: &quot;-Infinity&quot;, expected: &quot;&quot;, testname: &quot;value = -Infinity&quot;},
+    {value: &quot;NaN&quot;, expected: &quot;&quot;, testname: &quot;value = NaN&quot;},
+    {value: &quot;9007199254740993&quot;, expected: &quot;9007199254740992&quot;, testname: &quot;value = 2^53+1&quot;},
+    {value: &quot;2e308&quot;, expected: &quot;&quot;, testname: &quot;value &gt;= Number.MAX_VALUE&quot;},
+    {value: &quot;1e&quot;, expected: &quot;&quot;, testname: &quot;value = 1e&quot;},
+    {value: &quot;+1&quot;, expected: &quot;1&quot;, testname: &quot;value = +1&quot;},
+    {value: &quot;+&quot;, expected: &quot;&quot;, testname: &quot;value = '+'&quot;},
+    {value: &quot;-&quot;, expected: &quot;&quot;, testname: &quot;value = '-'&quot;},
+    {value: &quot; 1&quot;, expected: &quot;1&quot;, testname: &quot;value with a leading whitespace&quot;},
+    {value: &quot;1trailing junk&quot;, expected: &quot;1&quot;, testname: &quot;value = 1trailing junk&quot;}
+  ];
+  for (var i = 0; i &lt; numbers.length; i++) {
+    var w = numbers[i];
+    test(function() {
+      var input = document.createElement(&quot;input&quot;);
+      input.type = &quot;number&quot;;
+      input.value = w.value;
+      for(var attr in w.attributes) {
+        input[attr] = w.attributes[attr];
+      }
+      assert_equals(input.value, w.expected);
+    }, w.testname);
+  }
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementpasswordexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/password-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/password-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/password-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+
+PASS Value returns the current value for password 
+PASS Setting value changes the current value for password, but not the value content attribute 
+PASS Value sanitization algorithm should strip line breaks for password 
+PASS sanitization algorithm doesn't strip leading and trailing whitespaces 
+PASS sanitization algorithm strips line breaks 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementpasswordhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/password.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/password.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/password.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,79 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Password input element&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#password-state-%28type=password%29&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;div style=&quot;display: none&quot;&gt;
+&lt;input id=&quot;password&quot; type=&quot;password&quot; /&gt;
+&lt;input id=password2 type=password value=&quot;password&quot;&gt;
+&lt;input id=&quot;password_with_value&quot; type=&quot;password&quot; value=&quot;foobar&quot; /&gt;
+&lt;/div&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+    setup(function() {
+      window.password = document.getElementById(&quot;password&quot;);
+    });
+
+    test(function() {
+      assert_equals(password.value, &quot;&quot;);
+      assert_equals(document.getElementById(&quot;password_with_value&quot;).value, &quot;foobar&quot;);
+    }, &quot;Value returns the current value for password&quot;);
+
+    test(function() {
+      password.value = &quot;A&quot;;
+      assert_equals(password.value, &quot;A&quot;);
+      assert_equals(password.getAttribute(&quot;value&quot;), null);
+      password.value = &quot;B&quot;;
+      assert_equals(password.value, &quot;B&quot;);
+      assert_equals(password.getAttribute(&quot;value&quot;), null);
+    }, &quot;Setting value changes the current value for password, but not the value content attribute&quot;);
+
+    test(function() {
+      // Any LF (\n) must be stripped.
+      password.value = &quot;\nAB&quot;;
+      assert_equals(password.value, &quot;AB&quot;);
+      password.value = &quot;A\nB&quot;;
+      assert_equals(password.value, &quot;AB&quot;);
+      password.value = &quot;AB\n&quot;;
+      assert_equals(password.value, &quot;AB&quot;);
+
+      // Any CR (\r) must be stripped.
+      password.value = &quot;\rAB&quot;;
+      assert_equals(password.value, &quot;AB&quot;);
+      password.value = &quot;A\rB&quot;;
+      assert_equals(password.value, &quot;AB&quot;);
+      password.value = &quot;AB\r&quot;;
+      assert_equals(password.value, &quot;AB&quot;);
+
+      // Any combinations of LF CR must be stripped.
+      password.value = &quot;\r\nAB&quot;;
+      assert_equals(password.value, &quot;AB&quot;);
+      password.value = &quot;A\r\nB&quot;;
+      assert_equals(password.value, &quot;AB&quot;);
+      password.value = &quot;AB\r\n&quot;;
+      assert_equals(password.value, &quot;AB&quot;);
+      password.value = &quot;\r\nA\n\rB\r\n&quot;;
+      assert_equals(password.value, &quot;AB&quot;);
+    }, &quot;Value sanitization algorithm should strip line breaks for password&quot;);
+
+  var pass = document.getElementById('password2');
+
+  test(function(){
+    assert_equals(pass.value, &quot;password&quot;);
+    pass.value = &quot;  pass  word  &quot;;
+    assert_equals(pass.value, &quot;  pass  word  &quot;);
+  }, &quot;sanitization algorithm doesn't strip leading and trailing whitespaces&quot;);
+
+  test(function(){
+    pass.value = &quot;pass\u000Aword&quot;;
+    assert_equals(pass.value, &quot;password&quot;);
+    pass.value = &quot;\u000Apassword\u000A&quot;;
+    assert_equals(pass.value, &quot;password&quot;);
+    pass.value = &quot;pass\u000Dword&quot;;
+    assert_equals(pass.value, &quot;password&quot;);
+    pass.value = &quot;\u000Dpassword\u000D&quot;;
+    assert_equals(pass.value, &quot;password&quot;);
+  }, &quot;sanitization algorithm strips line breaks&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementpattern_attributeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/pattern_attribute-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/pattern_attribute-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/pattern_attribute-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+Pattern Attribute
+
+
+PASS pattern attribute support on input element 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementpattern_attributehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/pattern_attribute.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/pattern_attribute.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/pattern_attribute.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,34 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+
+  &lt;head&gt;
+    &lt;title&gt;Pattern Attribute&lt;/title&gt;
+    &lt;meta name=viewport content=&quot;width=device-width, maximum-scale=1.0, user-scalable=no&quot; /&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Fabrice Clari&quot; href=&quot;mailto:f.clari@inno-group.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Dimitri Bocquet&quot; href=&quot;mailto:Dimitri.Bocquet@mosquito-fp7.eu&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#attr-input-pattern&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;/head&gt;
+
+  &lt;body&gt;
+
+
+      &lt;h1&gt;Pattern Attribute&lt;/h1&gt;
+      &lt;div style=&quot;display: none&quot;&gt;
+      &lt;input pattern=&quot;[a-z]{3}&quot; value=&quot;abcd&quot; title=&quot;three letters max&quot;/&gt;
+    &lt;/div&gt;
+
+    &lt;div id=&quot;log&quot;&gt;
+    &lt;/div&gt;
+
+  &lt;script type=&quot;text/javascript&quot;&gt;
+
+
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[0].getAttribute(&quot;pattern&quot;), &quot;[a-z]{3}&quot;)}, &quot;pattern attribute support on input element&quot;);
+
+  &lt;/script&gt;
+
+  &lt;/body&gt;
+
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementradioexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/radio-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/radio-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/radio-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,11 @@
</span><ins>+               
+
+FAIL click on mutable radio fires the input event assert_true: expected true got false
+FAIL click on mutable radio fires the change event assert_true: event should be trusted expected true got undefined
+PASS click on non-mutable radio doesn't fire the input event 
+PASS click on non-mutable radio doesn't fire the change event 
+FAIL canceled activation steps on unchecked radio assert_false: expected false got true
+PASS only one control of a radio button group can have its checkedness set to true 
+FAIL radio inputs with name attributes groüp2 and groÜp2 belong to the same radio button group assert_false: expected false got true
+PASS changing the name of a radio input element and setting its checkedness to true makes all the other elements' checkedness in the same radio button group be set to false 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementradiogroupnamecaseexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/radio-groupname-case-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/radio-groupname-case-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/radio-groupname-case-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+                                          
+
+FAIL radio button group name = sImPlE assert_false: expected false got true
+FAIL radio button group name = paSSfield-killroyß assert_false: expected false got true
+FAIL radio button group name = глупый assert_false: expected false got true
+FAIL radio button group name = åωk assert_false: expected false got true
+FAIL radio button group name = blah1 assert_false: expected false got true
+FAIL radio button group name = tÉdz5アパートFi assert_false: expected false got true
+FAIL radio button group name = ΣΣ assert_false: expected false got true
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementradiogroupnamecasehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/radio-groupname-case.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/radio-groupname-case.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/radio-groupname-case.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,75 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;radio group name compatibility caseless&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;http://people.mozilla.org/~jdaggett/tests/radiobuttonnamecase.html&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;input id=r1 type=&quot;radio&quot; name=&quot;sImPlE&quot;&gt;
+&lt;input id=r2 type=&quot;radio&quot; name=&quot;simple&quot;&gt;
+&lt;input id=r3 type=&quot;radio&quot; name=&quot;SIMPLE&quot;&gt;
+
+&lt;input id=r4 type=&quot;radio&quot; name=&quot;paSSfield-killroyß&quot;&gt;
+&lt;input id=r5 type=&quot;radio&quot; name=&quot;passfield-killroyß&quot;&gt;
+&lt;input id=r6 type=&quot;radio&quot; name=&quot;PASSFIELD-KILLROYß&quot;&gt;
+&lt;input id=r7 type=&quot;radio&quot; name=&quot;paſſfield-killroyß&quot;&gt;
+&lt;input id=r8 type=&quot;radio&quot; name=&quot;passfield-&amp;#x212a;illroyß&quot;&gt;
+&lt;input id=r9 type=&quot;radio&quot; name=&quot;paßfield-killroyß&quot;&gt;
+&lt;input id=r10 type=&quot;radio&quot; name=&quot;paẞfield-killroyß&quot;&gt;
+&lt;input id=r11 type=&quot;radio&quot; name=&quot;passfield-killroyẞ&quot;&gt;
+&lt;input id=r12 type=&quot;radio&quot; name=&quot;passfield-killroyß&quot;&gt;
+&lt;input id=r13 type=&quot;radio&quot; name=&quot;passfıeld-killroyß&quot;&gt;
+&lt;input id=r14 type=&quot;radio&quot; name=&quot;passfİeld-killroyß&quot;&gt;
+
+&lt;input id=r15 type=&quot;radio&quot; name=&quot;глупый&quot;&gt;
+&lt;input id=r16 type=&quot;radio&quot; name=&quot;глупы&amp;#x438;&amp;#x306;&quot;&gt;
+&lt;input id=r17 type=&quot;radio&quot; name=&quot;ГЛУПЫЙ&quot;&gt;
+&lt;input id=r18 type=&quot;radio&quot; name=&quot;ГЛУПЫ&amp;#x418;&amp;#x306;&quot;&gt;
+
+&lt;input id=r19 type=&quot;radio&quot; name=&quot;åωk&quot;&gt;
+&lt;input id=r20 type=&quot;radio&quot; name=&quot;ÅΩK&quot;&gt;
+&lt;input id=r21 type=&quot;radio&quot; name=&quot;&amp;#x212b;ωk&quot;&gt;
+&lt;input id=r22 type=&quot;radio&quot; name=&quot;å&amp;#x2126;k&quot;&gt;
+&lt;input id=r23 type=&quot;radio&quot; name=&quot;åω&amp;#x212a;&quot;&gt;
+
+&lt;input id=r24 type=&quot;radio&quot; name=&quot;blah1&quot;&gt;
+&lt;input id=r25 type=&quot;radio&quot; name=&quot;blah&amp;#x2460;&quot;&gt;
+&lt;input id=r26 type=&quot;radio&quot; name=&quot;bl&amp;#x24b6;h1&quot;&gt;
+&lt;input id=r27 type=&quot;radio&quot; name=&quot;bl&amp;#x24d0;h1&quot;&gt;
+
+&lt;input id=r28 type=&quot;radio&quot; name=&quot;t&amp;Eacute;dz5アパートFi&quot;&gt;
+&lt;input id=r29 type=&quot;radio&quot; name=&quot;T&amp;Eacute;DZ5アパートFi&quot;&gt;
+&lt;input id=r30 type=&quot;radio&quot; name=&quot;T&amp;eacute;&amp;#x01F1;&amp;#x2075;アパートFi&quot;&gt;
+&lt;input id=r31 type=&quot;radio&quot; name=&quot;t&amp;Eacute;dz5&amp;#x3300;Fi&quot;&gt;
+&lt;input id=r32 type=&quot;radio&quot; name=&quot;t&amp;Eacute;dz5&amp;#x30A2;&amp;#x30CF;&amp;#x309A;&amp;#x30FC;&amp;#x30C8;Fi&quot;&gt;
+&lt;input id=r33 type=&quot;radio&quot; name=&quot;t&amp;Eacute;dz5&amp;#x30A2;&amp;#x30D1;&amp;#x30FC;&amp;#x30C8;Fi&quot;&gt;
+&lt;input id=r34 type=&quot;radio&quot; name=&quot;T&amp;Eacute;DZ⁵アパートFi&quot;&gt;
+&lt;input id=r35 type=&quot;radio&quot; name=&quot;T&amp;Eacute;DZ5アパートfi&quot;&gt;
+
+&lt;input id=r36 type=&quot;radio&quot; name=&quot;ΣΣ&quot;&gt;
+&lt;input id=r37 type=&quot;radio&quot; name=&quot;σς&quot;&gt;
+&lt;script&gt;
+  var groups = [[&quot;r1&quot; ,&quot;r2&quot;, &quot;r3&quot;],
+                [&quot;r4&quot;, &quot;r5&quot;, &quot;r6&quot;, &quot;r7&quot;, &quot;r8&quot;, &quot;r9&quot;, &quot;r10&quot;, &quot;r11&quot;, &quot;r12&quot;, &quot;r13&quot;, &quot;r14&quot;],
+                [&quot;r15&quot;, &quot;r16&quot;, &quot;r17&quot;, &quot;r18&quot;],
+                [&quot;r19&quot;, &quot;r20&quot;, &quot;r21&quot;, &quot;r22&quot;, &quot;r23&quot;],
+                [&quot;r24&quot;, &quot;r25&quot;, &quot;r26&quot;, &quot;r27&quot;],
+                [&quot;r28&quot;, &quot;r29&quot;, &quot;r30&quot;, &quot;r31&quot;, &quot;r32&quot;, &quot;r33&quot;, &quot;r34&quot;, &quot;r35&quot;],
+                [&quot;r36&quot;, &quot;r37&quot;]],
+      groupName = [&quot;sImPlE&quot;, &quot;paSSfield-killroyß&quot;, &quot;глупый&quot;, &quot;åωk&quot;, &quot;blah1&quot;, &quot;tÉdz5アパートFi&quot;, &quot;ΣΣ&quot;];
+  groups.forEach(function(group, index) {
+    test(function(){
+      group.forEach(function(radioId) {
+        assert_false(document.getElementById(radioId).checked);
+      });
+      for (var i = 0; i &lt; group.length; i++) {
+        document.getElementById(group[i]).checked = true;
+        assert_true(document.getElementById(group[i]).checked);
+        for (var j = 0; j &lt; group.length; j++) {
+          if (j != i) assert_false(document.getElementById(group[j]).checked);
+        }
+      }
+    }, &quot;radio button group name = &quot; + groupName[index]);
+  });
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementradiohtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/radio.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/radio.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/radio.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,137 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;input type radio&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#radio-button-state-(type=radio)&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;input type=radio name=group1 id=radio1&gt;
+&lt;input type=radio name=group1 id=radio2&gt;
+
+&lt;input type=radio name=groüp2 id=radio3&gt;
+&lt;input type=radio name=groÜp2 id=radio4&gt;
+
+&lt;input type=radio id=radio5&gt;
+&lt;input type=radio id=radio6 disabled&gt;
+
+&lt;input type=radio id=radio71 checked&gt;
+&lt;input type=radio id=radio72&gt;
+
+&lt;input type=radio name=group3 id=radio8 checked&gt;
+&lt;input type=radio name=group3 id=radio9&gt;
+&lt;input type=radio name=group4 id=radio10&gt;
+&lt;input type=radio name=group4 id=radio11 checked&gt;
+
+
+&lt;script&gt;
+  var radio1 = document.getElementById('radio1'),
+      radio2 = document.getElementById('radio2'),
+      radio3 = document.getElementById('radio3'),
+      radio4 = document.getElementById('radio4'),
+      radio5 = document.getElementById('radio5'),
+      radio6 = document.getElementById('radio6'),
+      radio71 = document.getElementById('radio71'),
+      radio72 = document.getElementById('radio72'),
+      radio8 = document.getElementById('radio8'),
+      radio9 = document.getElementById('radio9'),
+      radio10 = document.getElementById('radio10'),
+      radio11 = document.getElementById('radio11'),
+      t1 = async_test(&quot;click on mutable radio fires the input event&quot;),
+      t2 = async_test(&quot;click on mutable radio fires the change event&quot;),
+      t3 = async_test(&quot;click on non-mutable radio doesn't fire the input event&quot;),
+      t4 = async_test(&quot;click on non-mutable radio doesn't fire the change event&quot;),
+      t5 = async_test(&quot;canceled activation steps on unchecked radio&quot;),
+      input_fired = false,
+      change_fired = false;
+
+  test(function(){
+    assert_false(radio1.checked);
+    assert_false(radio2.checked);
+    radio1.checked = true;
+    assert_true(radio1.checked);
+    assert_false(radio2.checked);
+    radio2.checked = true;
+    assert_false(radio1.checked);
+    assert_true(radio2.checked);
+  }, &quot;only one control of a radio button group can have its checkedness set to true&quot;);
+
+  test(function(){
+    assert_false(radio3.checked);
+    assert_false(radio4.checked);
+    radio3.checked = true;
+    assert_true(radio3.checked);
+    assert_false(radio4.checked);
+    radio4.checked = true;
+    assert_false(radio3.checked);
+    assert_true(radio4.checked);
+  }, &quot;radio inputs with name attributes groüp2 and groÜp2 belong to the same radio button group&quot;);
+
+  test(function(){
+    assert_true(radio8.checked);
+    assert_false(radio9.checked);
+    assert_false(radio10.checked);
+    assert_true(radio11.checked);
+    radio9.name=&quot;group4&quot;;
+    radio9.checked = true;
+    assert_true(radio8.checked);
+    assert_true(radio9.checked);
+    assert_false(radio10.checked);
+    assert_false(radio11.checked);
+  }, &quot;changing the name of a radio input element and setting its checkedness to true makes all the other elements' checkedness in the same radio button group be set to false&quot;);
+
+  radio5.oninput= t1.step_func(function(e) {
+    input_fired = true;
+    assert_true(e.bubbles, &quot;event should bubble&quot;)
+    assert_true(e.isTrusted, &quot;event should be trusted&quot;);
+    assert_false(e.cancelable, &quot;event shoud not be cancelable&quot;);
+  });
+
+  radio5.onchange = t2.step_func(function(e) {
+    change_fired = true;
+    assert_true(e.bubbles, &quot;event should bubble&quot;)
+    assert_true(e.isTrusted, &quot;event should be trusted&quot;);
+    assert_false(e.cancelable, &quot;event shoud not be cancelable&quot;);
+  });
+
+  radio6.oninput= t3.step_func_done(function(e) {
+    assert_unreached(&quot;event input fired&quot;);
+  });
+
+  radio6.onchange = t4.step_func_done(function(e) {
+    assert_unreached(&quot;event change fired&quot;);
+  });
+
+  t1.step(function() {
+    radio5.click();
+    assert_true(input_fired);
+    t1.done();
+  });
+
+  t2.step(function() {
+    assert_true(change_fired);
+    t2.done();
+  })
+
+  t3.step(function(){
+    radio6.click();
+    t3.done();
+    t4.done();
+  });
+
+  radio72.onclick = t5.step_func_done(function(e){
+    assert_false(radio71.checked);
+    assert_true(radio72.checked);
+    e.preventDefault();
+    assert_false(radio71.checked);
+    assert_true(radio72.checked);
+  });
+
+  t5.step(function(){
+    assert_true(radio71.checked);
+    assert_false(radio72.checked);
+    radio72.click();
+    assert_true(radio71.checked);
+    assert_false(radio72.checked);
+  });
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementrange2expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/range-2-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/range-2-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/range-2-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+
+PASS range input value set to '' 
+PASS range input value set to an integer 
+PASS range input value equals 50 
+PASS range input value equals 100 
+PASS range input value equals 2 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementrange2html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/range-2.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/range-2.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/range-2.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,43 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;range input Tests&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Microsoft&quot; href=&quot;http://www.microsoft.com&quot; /&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;input type=&quot;range&quot; id=&quot;r00&quot; min=&quot;0&quot; max=&quot;100&quot; step=&quot;20&quot; value=&quot;40&quot; style=&quot;display:none&quot;&gt;
+&lt;input type=&quot;range&quot; id=&quot;r01&quot; min=&quot;0&quot; max=&quot;1&quot; step=&quot;.1&quot; value=&quot;.2&quot; style=&quot;display:none&quot;&gt;
+&lt;input type=&quot;range&quot; id=&quot;r02&quot; style=&quot;display:none&quot;&gt;
+&lt;input type=&quot;range&quot; id=&quot;r03&quot; style=&quot;display:none&quot;&gt;
+&lt;input type=&quot;range&quot; id=&quot;r04&quot; style=&quot;display:none&quot;&gt;
+
+&lt;script&gt;
+test(function rangeElementTest0() {
+  document.getElementById('r00').value = &quot;&quot;;
+  assert_equals(document.getElementById('r00').type, &quot;range&quot;);
+  assert_equals(document.getElementById('r00').value, &quot;60&quot;);
+}, &quot;range input value set to ''&quot;);
+
+test(function rangeElementTest1() {
+  document.getElementById('r01').value = .6;
+  assert_equals(document.getElementById('r01').type, &quot;range&quot;);
+  assert_equals(document.getElementById('r01').value, &quot;0.6&quot;);
+}, &quot;range input value set to an integer&quot;);
+
+test(function rangeElementTest2() {
+  assert_equals(document.getElementById('r02').type, &quot;range&quot;);
+  assert_equals(document.getElementById('r02').value, &quot;50&quot;);
+}, &quot;range input value equals 50&quot;);
+
+test(function rangeElementTest3() {
+  document.getElementById('r03').value = 200;
+  assert_equals(document.getElementById('r03').type, &quot;range&quot;);
+  assert_equals(document.getElementById('r03').value, &quot;100&quot;);
+}, &quot;range input value equals 100&quot;);
+
+test(function rangeElementTest4() {
+  document.getElementById('r04').value = 2.1;
+  assert_equals(document.getElementById('r04').type, &quot;range&quot;);
+  assert_equals(document.getElementById('r04').value, &quot;2&quot;);
+}, &quot;range input value equals 2&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementrangeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/range-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/range-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/range-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,26 @@
</span><ins>+Input Range
+
+
+PASS range type support on input element 
+PASS min attribute support on input element 
+PASS max attribute support on input element 
+FAIL Illegal value of min attribute assert_equals: expected &quot;0&quot; but got &quot;ab&quot;
+FAIL Illegal value of max attribute assert_equals: expected &quot;100&quot; but got &quot;f&quot;
+PASS Converting an illegal string to the default value 
+FAIL Converting an illegal string to the default step assert_equals: expected &quot;1&quot; but got &quot;xyz&quot;
+PASS the value is set to min when a smaller value than min attribute is given 
+PASS the value is set to max when a larger value than max attribute is given 
+FAIL default value of min attribute in input type=range assert_equals: expected &quot;0&quot; but got &quot;&quot;
+FAIL default value of max attribute in input type=range assert_equals: expected &quot;100&quot; but got &quot;&quot;
+PASS default value when min and max attributes are given (= min plus half the difference between min and max) 
+PASS default value with step control when both min and max attributes are given 
+FAIL default value when both min and max attributes are given, while min &gt; max assert_equals: expected &quot;2&quot; but got &quot;51&quot;
+PASS The default step scale factor is 1, unless min attribute has non-integer value 
+PASS Step scale factor behavior when min attribute has integer value but max attribute is non-integer  
+FAIL The default scale factor is 1 even if step attribute is explicitly set to non-integer value, unless min attribute has non-integer value assert_equals: expected &quot;1&quot; but got &quot;0.5&quot;
+PASS Solving the step mismatch 
+PASS Performing stepUp() 
+PASS Performing stepDown() 
+FAIL Performing stepUp() beyond the value of the max attribute InvalidStateError: DOM Exception 11
+FAIL Performing stepDown() beyond the value of the min attribute InvalidStateError: DOM Exception 11
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementrangehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/range.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/range.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/range.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,276 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+
+  &lt;head&gt;
+    &lt;title&gt;Input Range&lt;/title&gt;
+    &lt;meta name=viewport content=&quot;width=device-width, maximum-scale=1.0, user-scalable=no&quot; /&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Fabrice Clari&quot; href=&quot;mailto:f.clari@inno-group.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Dimitri Bocquet&quot; href=&quot;mailto:Dimitri.Bocquet@mosquito-fp7.eu&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Tomoyuki SHIMIZU&quot; href=&quot;mailto:tomoyuki.labs@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-input-element&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;/head&gt;
+
+  &lt;body&gt;
+
+
+    &lt;h1&gt;Input Range&lt;/h1&gt;
+    &lt;div style=&quot;display:none&quot;&gt;
+      &lt;input type=&quot;range&quot; id=&quot;range_basic&quot; min=0 max=5 /&gt;
+      &lt;input type=&quot;range&quot; id=&quot;value_smaller_than_min&quot; min=0 max=5 value=-10 /&gt;
+      &lt;input type=&quot;range&quot; id=&quot;value_larger_than_max&quot; min=0 max=5 value=7 /&gt;
+      &lt;input type=&quot;range&quot; id=&quot;empty_attributes&quot; /&gt;
+      &lt;input type=&quot;range&quot; id=&quot;value_not_specified&quot; min=2 max=6 /&gt;
+      &lt;input type=&quot;range&quot; id=&quot;control_step_mismatch&quot; min=0 max=7 step=2 /&gt;
+      &lt;input type=&quot;range&quot; id=&quot;max_smaller_than_min&quot; min=2 max=-3 /&gt;
+      &lt;input type=&quot;range&quot; id=&quot;default_step_scale_factor_1&quot; min=5 max=12.6 value=6.7 /&gt;
+      &lt;input type=&quot;range&quot; id=&quot;default_step_scale_factor_2&quot; min=5.3 max=12 value=6.7 /&gt;
+      &lt;input type=&quot;range&quot; id=&quot;default_step_scale_factor_3&quot;min=5 max=12.6 step=0.5 value=6.7 /&gt;
+      &lt;input type=&quot;range&quot; id=&quot;float_step_scale_factor&quot; min=5.3 max=12 step=0.5 value=6.7 /&gt;
+      &lt;input type=&quot;range&quot; id=&quot;stepup&quot; min=3 max=14 value=6 step=3 /&gt;
+      &lt;input type=&quot;range&quot; id=&quot;stepdown&quot; min=3 max=11 value=9 step=3 /&gt;
+      &lt;input type=&quot;range&quot; id=&quot;stepup_beyond_max&quot; min=3 max=14 value=9 step=3 /&gt;
+      &lt;input type=&quot;range&quot; id=&quot;stepdown_beyond_min&quot; min=3 max=11 value=6 step=3 /&gt;
+      &lt;input type=&quot;range&quot; id=&quot;illegal_min_and_max&quot; min=&quot;ab&quot; max=&quot;f&quot; /&gt;
+      &lt;input type=&quot;range&quot; id=&quot;illegal_value_and_step&quot; min=0 max=5 value=&quot;ppp&quot; step=&quot;xyz&quot; /&gt;
+    &lt;/div&gt;
+
+    &lt;div id=&quot;log&quot;&gt;
+    &lt;/div&gt;
+
+    &lt;script type=&quot;text/javascript&quot;&gt;
+
+      test(
+        function() {
+          assert_equals(document.getElementById('range_basic').type, &quot;range&quot;);
+        },
+        &quot;range type support on input element&quot;,
+        {
+          &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-type&quot;
+        }
+      );
+
+      test(
+        function() {
+          assert_equals(document.getElementById('range_basic').min, &quot;0&quot;)
+        },
+        &quot;min attribute support on input element&quot;,
+        {
+          &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-min&quot;
+        }
+      );
+
+      test(
+        function() {
+          assert_equals(document.getElementById('range_basic').max, &quot;5&quot;)
+        },
+        &quot;max attribute support on input element&quot;,
+        {
+          &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-max&quot;
+        }
+      );
+
+      // HTML5 spec says the default vaules of min and max attributes are 0 and 100 respectively,
+      // however, Chrome, Opera and Firefox would not give any default value at all...
+      test(
+        function() {
+          assert_equals(document.getElementById('illegal_min_and_max').min, &quot;0&quot;)
+        },
+        &quot;Illegal value of min attribute&quot;,
+        {
+          &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#range-state-(type=range)&quot;
+        }
+      );
+
+      test(
+        function() {
+          assert_equals(document.getElementById('illegal_min_and_max').max, &quot;100&quot;)
+        },
+        &quot;Illegal value of max attribute&quot;,
+        { &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#range-state-(type=range)&quot; }
+      );
+
+      test(
+        function() {
+          assert_equals(document.getElementById('illegal_value_and_step').value, &quot;3&quot;)
+        },
+        &quot;Converting an illegal string to the default value&quot;,
+        {
+          &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#range-state-(type=range)&quot;
+        }
+      );
+
+      test(
+        function() {
+          assert_equals(document.getElementById('illegal_value_and_step').step, &quot;1&quot;)
+        },
+        &quot;Converting an illegal string to the default step&quot;,
+        { &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#range-state-(type=range)&quot; }
+      );
+
+      test(
+        function() {
+          assert_equals(document.getElementById('value_smaller_than_min').value, &quot;0&quot;)
+        },
+        &quot;the value is set to min when a smaller value than min attribute is given&quot;,
+        {
+          &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#range-state-(type=range)&quot;
+        }
+      );
+
+      test(
+        function() {
+          assert_equals(document.getElementById('value_larger_than_max').value, &quot;5&quot;)
+        },
+        &quot;the value is set to max when a larger value than max attribute is given&quot;,
+        {
+          &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#range-state-(type=range)&quot;
+        }
+      );
+
+      test(
+        function() {
+          assert_equals(document.getElementById('empty_attributes').min, &quot;0&quot;)
+        },
+        &quot;default value of min attribute in input type=range&quot;,
+        { &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-min&quot; }
+      );
+
+      test(
+        function() {
+          assert_equals(document.getElementById('empty_attributes').max, &quot;100&quot;)
+        },
+        &quot;default value of max attribute in input type=range&quot;,
+        {
+          &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-max&quot;
+        }
+      );
+
+      test(
+        function() {
+          assert_equals(document.getElementById('value_not_specified').value, &quot;4&quot;)
+        },
+        &quot;default value when min and max attributes are given (= min plus half the difference between min and max)&quot;,
+        {
+          &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#range-state-(type=range)&quot;
+        }
+      );
+
+      test(
+        function() {
+          assert_equals(document.getElementById('control_step_mismatch').value, &quot;4&quot;)
+        },
+        &quot;default value with step control when both min and max attributes are given&quot;,
+        {
+          &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#range-state-(type=range)&quot;
+        }
+      );
+
+      // Chrome would result in different value out of the range between min and max. Why?
+      test(
+        function() {
+          assert_equals(document.getElementById('max_smaller_than_min').value, &quot;2&quot;)
+        },
+        &quot;default value when both min and max attributes are given, while min &gt; max&quot;,
+        {
+          &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#range-state-(type=range)&quot;
+        }
+      );
+
+      test(
+        function() {
+          assert_equals(document.getElementById('default_step_scale_factor_1').value, &quot;7&quot;)
+        },
+        &quot;The default step scale factor is 1, unless min attribute has non-integer value&quot;,
+        {
+          &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#range-state-(type=range)&quot;
+        }
+      );
+
+      test(
+        function() {
+          assert_equals(document.getElementById('default_step_scale_factor_2').value, &quot;6.3&quot;)
+        },
+        &quot;Step scale factor behavior when min attribute has integer value but max attribute is non-integer &quot;,
+        {
+          &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#range-state-(type=range)&quot; }
+      );
+
+      test(
+        function() {
+          assert_equals(document.getElementById('default_step_scale_factor_3').step, &quot;1&quot;)
+        },
+        &quot;The default scale factor is 1 even if step attribute is explicitly set to non-integer value, unless min attribute has non-integer value&quot;,
+        {
+          &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#range-state-(type=range)&quot;
+        }
+      );
+
+      test(
+        function() {
+          assert_equals(document.getElementById('float_step_scale_factor').value, &quot;6.8&quot;)
+        },
+        &quot;Solving the step mismatch&quot;,
+        {
+          &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#range-state-(type=range)&quot;
+        }
+      );
+
+      // Firefox Nightly (24.0a1) would result in the possible maximum value in this range... (i.e. 12)
+      test(
+        function() {
+          var e = document.getElementById('stepup');
+          e.stepUp();
+          assert_equals(e.value, &quot;9&quot;)
+        },
+        &quot;Performing stepUp()&quot;,
+        {
+          &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-stepup&quot;
+        }
+      );
+
+      // Firefox Nightly (24.0a1) would result in the possible minimum value in this range... (i.e. 3)
+      test(
+        function() {
+          var e = document.getElementById('stepdown');
+          e.stepDown();
+          assert_equals(e.value, &quot;6&quot;)
+        },
+        &quot;Performing stepDown()&quot;,
+        {
+          &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-stepdown&quot;
+        }
+      );
+
+      // Chrome and Opera would throw DOM Exception 11 (InvalidStateError)
+      // Firefox Nightly gives the correct result
+      test(
+        function() {
+          var e = document.getElementById('stepup_beyond_max');
+          e.stepUp(2);
+          assert_equals(e.value, &quot;12&quot;)
+        },
+        &quot;Performing stepUp() beyond the value of the max attribute&quot;,
+        {
+          &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-stepup&quot;
+        }
+      );
+
+      // Chrome and Opera would throw DOM Exception 11 (InvalidStateError)
+      // Firefox Nightly gives the correct result
+      test(
+        function() {
+          var e = document.getElementById('stepdown_beyond_min');
+          e.stepDown(2);
+          assert_equals(e.value, &quot;3&quot;)
+        }, &quot;Performing stepDown() beyond the value of the min attribute&quot;, {
+          &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-stepdown&quot;
+        }
+      );
+
+    &lt;/script&gt;
+
+  &lt;/body&gt;
+
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementrequired_attributeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/required_attribute-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/required_attribute-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/required_attribute-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+Required Attribute
+
+
+PASS required attribute support on input element 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementrequired_attributehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/required_attribute.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/required_attribute.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/required_attribute.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,34 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+
+  &lt;head&gt;
+    &lt;title&gt;Required Attribute&lt;/title&gt;
+    &lt;meta name=viewport content=&quot;width=device-width, maximum-scale=1.0, user-scalable=no&quot; /&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Fabrice Clari&quot; href=&quot;mailto:f.clari@inno-group.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Dimitri Bocquet&quot; href=&quot;mailto:Dimitri.Bocquet@mosquito-fp7.eu&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#attr-input-required&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;/head&gt;
+
+  &lt;body&gt;
+
+
+      &lt;h1&gt;Required Attribute&lt;/h1&gt;
+      &lt;div style=&quot;display: none&quot;&gt;
+      &lt;input type=&quot;text&quot; required=&quot;required&quot; /&gt;
+    &lt;/div&gt;
+
+    &lt;div id=&quot;log&quot;&gt;
+    &lt;/div&gt;
+
+  &lt;script type=&quot;text/javascript&quot;&gt;
+
+
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[0].getAttribute(&quot;required&quot;), &quot;required&quot;)}, &quot;required attribute support on input element&quot;);
+
+  &lt;/script&gt;
+
+  &lt;/body&gt;
+
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementresetexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/reset-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/reset-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/reset-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+    
+
+  
+
+
+
+
+
+
+
+
+
+PASS reset button only resets the form owner 
+PASS the element is barred from constraint validation 
+PASS clicking on a disabled reset does nothing 
+PASS reset button resets controls associated with their form using the form element pointer 
+PASS reset button resets controls associated with a form using the form attribute 
+PASS reset button associated with a form using the form attribute resets all the form's controls 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementresethtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/reset.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/reset.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/reset.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,113 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;input type reset&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#reset-button-state-(type=reset)&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;form&gt;
+  &lt;input type=text id=input1 value=&quot;foobar&quot;&gt;
+  &lt;input type=text id=input2&gt;
+  &lt;input type=reset id=r1&gt;
+&lt;/form&gt;
+
+&lt;input type=text id=input3 value=&quot;barfoo&quot;&gt;
+
+&lt;table&gt;
+  &lt;form&gt;
+    &lt;tr&gt;
+      &lt;td&gt;
+        &lt;input type=text id=input4 value=&quot;foobar&quot;&gt;
+        &lt;input type=reset id=r2&gt;
+      &lt;/td&gt;
+    &lt;/tr&gt;
+  &lt;/form&gt;
+&lt;/table&gt;
+
+&lt;div&gt;
+  &lt;form&gt;
+    &lt;input type=text id=input5 value=&quot;foobar&quot;&gt;
+  &lt;/div&gt;
+  &lt;input type=reset id=r3&gt;
+&lt;/form&gt;
+
+&lt;div&gt;
+  &lt;form&gt;
+    &lt;input type=reset id=r4&gt;
+  &lt;/div&gt;
+  &lt;input type=text id=input6 value=&quot;foobar&quot;&gt;
+&lt;/form&gt;
+
+&lt;form id=form5&gt;
+  &lt;input type=reset id=r5&gt;
+&lt;/form&gt;
+&lt;input form=form5 type=text id=input7 value=&quot;foobar&quot;&gt;
+
+&lt;form id=form6&gt;
+  &lt;input type=text id=input8 value=&quot;foobar&quot;&gt;
+&lt;/form&gt;
+&lt;input type=reset form=form6 id=r6&gt;
+
+&lt;script&gt;
+  var input1 = document.getElementById('input1'),
+      input2 = document.getElementById('input2'),
+      input3 = document.getElementById('input3'),
+      input7 = document.getElementById('input7'),
+      input8 = document.getElementById('input8'),
+      r1 = document.getElementById('r1');
+
+  test(function(){
+    assert_equals(input1.value, &quot;foobar&quot;);
+    assert_equals(input2.value, &quot;&quot;);
+    assert_equals(input3.value, &quot;barfoo&quot;);
+    input1.value = &quot;foobar1&quot;;
+    input2.value = &quot;notempty&quot;;
+    input3.value = &quot;barfoo1&quot;;
+    assert_equals(input1.value, &quot;foobar1&quot;);
+    assert_equals(input2.value, &quot;notempty&quot;);
+    assert_equals(input3.value, &quot;barfoo1&quot;);
+    r1.click();
+    assert_equals(input1.value, &quot;foobar&quot;);
+    assert_equals(input2.value, &quot;&quot;);
+    assert_equals(input3.value, &quot;barfoo1&quot;);
+  }, &quot;reset button only resets the form owner&quot;);
+
+  test(function(){
+    assert_false(r1.willValidate);
+  }, &quot;the element is barred from constraint validation&quot;);
+
+  test(function(){
+    assert_equals(input1.value, &quot;foobar&quot;);
+    assert_equals(input2.value, &quot;&quot;);
+    assert_equals(input3.value, &quot;barfoo1&quot;);
+    r1.disabled = true;
+    r1.click();
+    assert_equals(input1.value, &quot;foobar&quot;);
+    assert_equals(input2.value, &quot;&quot;);
+    assert_equals(input3.value, &quot;barfoo1&quot;);
+  }, &quot;clicking on a disabled reset does nothing&quot;);
+
+  function testReset(inputId, buttonId) {
+    var inp = document.getElementById(inputId);
+    assert_equals(inp.value, &quot;foobar&quot;);
+    inp.value = &quot;barfoo&quot;;
+    assert_equals(inp.value, &quot;barfoo&quot;);
+    document.getElementById(buttonId).click();
+    assert_equals(inp.value, &quot;foobar&quot;);
+  }
+
+  test(function(){
+    testReset(&quot;input4&quot;, &quot;r2&quot;);
+    testReset(&quot;input5&quot;, &quot;r3&quot;);
+    testReset(&quot;input6&quot;, &quot;r4&quot;);
+  }, &quot;reset button resets controls associated with their form using the form element pointer&quot;);
+
+  test(function(){
+    testReset(&quot;input7&quot;, &quot;r5&quot;);
+  }, &quot;reset button resets controls associated with a form using the form attribute&quot;);
+
+  test(function(){
+    testReset(&quot;input8&quot;, &quot;r6&quot;);
+  }, &quot;reset button associated with a form using the form attribute resets all the form's controls&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementsearch_inputexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/search_input-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/search_input-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/search_input-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+Search Input
+
+
+PASS search type support on input element 
+PASS placeholder attribute support on input element 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementsearch_inputhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/search_input.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/search_input.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/search_input.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,35 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+
+  &lt;head&gt;
+    &lt;title&gt;Search Input&lt;/title&gt;
+     &lt;meta name=viewport content=&quot;width=device-width, maximum-scale=1.0, user-scalable=no&quot; /&gt;
+     &lt;link rel=&quot;author&quot; title=&quot;Fabrice Clari&quot; href=&quot;mailto:f.clari@inno-group.com&quot;&gt;
+     &lt;link rel=&quot;author&quot; title=&quot;Dimitri Bocquet&quot; href=&quot;mailto:Dimitri.Bocquet@mosquito-fp7.eu&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-input-element&quot;&gt;
+   &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;/head&gt;
+
+  &lt;body&gt;
+
+
+      &lt;h1&gt;Search Input&lt;/h1&gt;
+      &lt;input type=&quot;search&quot; style=&quot;display:none&quot; placeholder=&quot;Search...&quot; /&gt;
+
+    &lt;div id=&quot;log&quot;&gt;
+    &lt;/div&gt;
+
+  &lt;script type=&quot;text/javascript&quot;&gt;
+
+
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[0].type, &quot;search&quot;)}, &quot;search type support on input element&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-type&quot; });
+    test(function() {assert_equals(document.getElementsByTagName(&quot;input&quot;)[0].placeholder, &quot;Search...&quot;)}, &quot;placeholder attribute support on input element&quot;, {
+      &quot;help&quot; : &quot;https://html.spec.whatwg.org/multipage/#dom-input-placeholder&quot; });
+
+  &lt;/script&gt;
+
+  &lt;/body&gt;
+
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementtelephoneexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/telephone-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/telephone-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/telephone-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+Input tel
+
+      
+
+PASS tel type supported on input element 
+PASS User agents must not allow users to insert &quot;LF&quot; (U+000A) 
+PASS User agents must not allow users to insert &quot;CR&quot; (U+000D) 
+PASS The value attribute, if specified, must have a value that contains no &quot;LF&quot; (U+000A) 
+PASS The value attribute, if specified, must have a value that contains no &quot;CR&quot; (U+000D) 
+PASS The value sanitization algorithm is as follows: Strip line breaks from the value 
+PASS Element can accept the phone number with plus sign(country code) 
+PASS Element can accept the phone number with hash mark(extension number) 
+PASS Element can accept the phone number with hyphen 
+PASS Element can accept the phone number with dots 
+PASS Element can accept the phone number with whitespace 
+PASS Element can accept the phone number with leading &amp; following whitespaces 
+PASS Element can accept the phone number with parentheses(area code) 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementtelephonehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/telephone.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/telephone.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/telephone.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,84 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+  &lt;title&gt;Input tel&lt;/title&gt;
+  &lt;link rel=&quot;author&quot; title=&quot;Kazuki Kanamori&quot; href=&quot;mailto:yogurito@gmail.com&quot;&gt;
+  &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#telephone-state-(type=tel)&quot;&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+  &lt;h1&gt;Input tel&lt;/h1&gt;
+  &lt;input type=&quot;tel&quot; id=&quot;novalue&quot; /&gt;
+  &lt;input type=&quot;tel&quot; id=&quot;value_with_LF&quot; value=&quot;0&amp;#x000A;1&quot; /&gt;
+  &lt;input type=&quot;tel&quot; id=&quot;value_with_CR&quot; value=&quot;0&amp;#x000D;1&quot; /&gt;
+  &lt;input type=&quot;tel&quot; id=&quot;value_with_CRLF&quot; value=&quot;0&amp;#x000A;&amp;#x000D;1&quot; /&gt;
+  &lt;div id=&quot;log&quot;&gt;
+  &lt;/div&gt;
+
+  &lt;script type=&quot;text/javascript&quot;&gt;
+    var element = document.getElementById('novalue');
+    test(function(){
+      assert_equals(element.type, 'tel');
+    }, 'tel type supported on input element');
+    test(function(){
+      element.value = '0\u000A1';
+      assert_equals(element.value, '01');
+    }, 'User agents must not allow users to insert &quot;LF&quot; (U+000A)');
+    test(function(){
+      element.value = '0\u000D1';
+      assert_equals(element.value, '01');
+    }, 'User agents must not allow users to insert &quot;CR&quot; (U+000D)');
+
+    element = document.getElementById('value_with_LF');
+    test(function(){
+      assert_equals(element.value, '01');
+    }, 'The value attribute, if specified, must have a value that contains no &quot;LF&quot; (U+000A)');
+
+    element = document.getElementById('value_with_CR');
+    test(function(){
+      assert_equals(element.value, '01');
+    }, 'The value attribute, if specified, must have a value that contains no &quot;CR&quot; (U+000D)');
+
+    test(function(){
+      element = document.getElementById('novalue');
+      element.value = '0\u000D\u000A1';
+      assert_equals(element.value, '01');
+
+      element = document.getElementById('value_with_CRLF');
+      assert_equals(element.value, '01');
+    }, 'The value sanitization algorithm is as follows: Strip line breaks from the value');
+
+    element = document.getElementById('novalue');
+    test(function(){
+      element.value = '+811234';
+      assert_equals(element.value, '+811234');
+    }, 'Element can accept the phone number with plus sign(country code)');
+    test(function(){
+      element.value = '1234#5678';
+      assert_equals(element.value, '1234#5678');
+    }, 'Element can accept the phone number with hash mark(extension number)');
+    test(function(){
+      element.value = '123-456-789';
+      assert_equals(element.value, '123-456-789');
+    }, 'Element can accept the phone number with hyphen');
+    test(function(){
+      element.value = '123.456.789';
+      assert_equals(element.value, '123.456.789');
+    }, 'Element can accept the phone number with dots');
+    test(function(){
+      element.value = '1 23 4';
+      assert_equals(element.value, '1 23 4');
+    }, 'Element can accept the phone number with whitespace');
+    test(function(){
+      element.value = ' 1234 ';
+      assert_equals(element.value, ' 1234 ');
+    }, 'Element can accept the phone number with leading &amp; following whitespaces');
+    test(function(){
+      element.value = '(03)12345678';
+      assert_equals(element.value, '(03)12345678');
+    }, 'Element can accept the phone number with parentheses(area code)');
+  &lt;/script&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementtextexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/text-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/text-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/text-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,22 @@
</span><ins>+Text input element
+
+
+PASS Value returns the current value for text 
+PASS Setting value changes the current value for text 
+PASS Value sanitization algorithm should strip line breaks for text 
+PASS files attribute must return null for text 
+PASS valueAsDate attribute must return null for text 
+PASS valueAsNumber attribute must return NaN for text 
+FAIL list attribute must return null for text assert_equals: expected (object) null but got (undefined) undefined
+PASS stepDown does not apply for text 
+PASS stepUp does not apply for text 
+PASS Value returns the current value for search 
+PASS Setting value changes the current value for search 
+PASS Value sanitization algorithm should strip line breaks for search 
+PASS files attribute must return null for search 
+PASS valueAsDate attribute must return null for search 
+PASS valueAsNumber attribute must return NaN for search 
+FAIL list attribute must return null for search assert_equals: expected (object) null but got (undefined) undefined
+PASS stepDown does not apply for search 
+PASS stepUp does not apply for search 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementtexthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/text.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/text.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/text.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,104 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;title&gt;Text input element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Kinuko Yasuda&quot; href=&quot;mailto:kinuko@chromium.org&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#text-(type=text)-state-and-search-state-(type=search)&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;/head&gt;
+
+  &lt;body&gt;
+    &lt;h1&gt;Text input element&lt;/h1&gt;
+    &lt;div style=&quot;display: none&quot;&gt;
+
+    &lt;input id=&quot;text&quot; type=&quot;text&quot; /&gt;
+    &lt;input id=&quot;text_with_value&quot; type=&quot;text&quot; value=&quot;foo&quot; /&gt;
+
+    &lt;input id=&quot;search&quot; type=&quot;search&quot; /&gt;
+    &lt;input id=&quot;search_with_value&quot; type=&quot;search&quot; value=&quot;foo&quot; /&gt;
+
+    &lt;/div&gt;
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script type=&quot;text/javascript&quot;&gt;
+    var types = [ 'text', 'search' ];
+
+    for (var i = 0; i &lt; types.length; ++i) {
+      test(
+        function() {
+          assert_equals(document.getElementById(types[i]).value, &quot;&quot;);
+          assert_equals(document.getElementById(types[i] + &quot;_with_value&quot;).value, &quot;foo&quot;);
+        }, &quot;Value returns the current value for &quot; + types[i]);
+
+    test(
+      function() {
+        document.getElementById(types[i]).value = &quot;A&quot;;
+        assert_equals(document.getElementById(types[i]).value, &quot;A&quot;);
+        document.getElementById(types[i]).value = &quot;B&quot;;
+      }, &quot;Setting value changes the current value for &quot; + types[i]);
+
+    test(
+      function() {
+        // Any LF (\n) must be stripped.
+        document.getElementById(types[i]).value = &quot;\nAB&quot;;
+        assert_equals(document.getElementById(types[i]).value, &quot;AB&quot;);
+        document.getElementById(types[i]).value = &quot;A\nB&quot;;
+        assert_equals(document.getElementById(types[i]).value, &quot;AB&quot;);
+        document.getElementById(types[i]).value = &quot;AB\n&quot;;
+        assert_equals(document.getElementById(types[i]).value, &quot;AB&quot;);
+
+        // Any CR (\r) must be stripped.
+        document.getElementById(types[i]).value = &quot;\rAB&quot;;
+        assert_equals(document.getElementById(types[i]).value, &quot;AB&quot;);
+        document.getElementById(types[i]).value = &quot;A\rB&quot;;
+        assert_equals(document.getElementById(types[i]).value, &quot;AB&quot;);
+        document.getElementById(types[i]).value = &quot;AB\r&quot;;
+        assert_equals(document.getElementById(types[i]).value, &quot;AB&quot;);
+
+        // Any combinations of LF CR must be stripped.
+        document.getElementById(types[i]).value = &quot;\r\nAB&quot;;
+        assert_equals(document.getElementById(types[i]).value, &quot;AB&quot;);
+        document.getElementById(types[i]).value = &quot;A\r\nB&quot;;
+        assert_equals(document.getElementById(types[i]).value, &quot;AB&quot;);
+        document.getElementById(types[i]).value = &quot;AB\r\n&quot;;
+        assert_equals(document.getElementById(types[i]).value, &quot;AB&quot;);
+        document.getElementById(types[i]).value = &quot;\r\nA\n\rB\r\n&quot;;
+        assert_equals(document.getElementById(types[i]).value, &quot;AB&quot;);
+      }, &quot;Value sanitization algorithm should strip line breaks for &quot; + types[i]);
+
+      test(
+        function() {
+          assert_equals(document.getElementById(types[i]).files, null);
+        }, &quot;files attribute must return null for &quot; + types[i]);
+
+      test(
+        function() {
+          assert_equals(document.getElementById(types[i]).valueAsDate, null);
+        }, &quot;valueAsDate attribute must return null for &quot; + types[i]);
+
+      test(
+        function() {
+          assert_equals(document.getElementById(types[i]).valueAsNumber, NaN);
+        }, &quot;valueAsNumber attribute must return NaN for &quot; + types[i]);
+
+      test(
+        function() {
+          assert_equals(document.getElementById(&quot;text&quot;).list, null);
+        }, &quot;list attribute must return null for &quot; + types[i]);
+
+      test(
+        function() {
+          var el = document.getElementById(types[i]);
+          assert_throws(&quot;InvalidStateError&quot;, function() { el.stepDown(); }, &quot;&quot;);
+        }, &quot;stepDown does not apply for &quot; + types[i]);
+
+      test(
+        function() {
+          var el = document.getElementById(types[i]);
+          assert_throws(&quot;InvalidStateError&quot;, function() { el.stepUp(); }, &quot;&quot;);
+        }, &quot;stepUp does not apply for &quot; + types[i]);
+    }
+
+  &lt;/script&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementtime2expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/time-2-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/time-2-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/time-2-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+
+PASS empty value 
+PASS Valid value: value should be 00:00 
+PASS Valid value: value should be 00:00:00 
+PASS Valid value: value should be 00:00:00.0 
+PASS Valid value: value should be 00:00:00.00 
+PASS Valid value: value should be 00:00:00.000 
+FAIL Invalid value: fraction should have one, two or three ASCII digits. Value should be empty assert_equals: expected &quot;&quot; but got &quot;00:00:00.0000&quot;
+FAIL Invalid value: hour should have two ASCII digits. Value should be empty assert_equals: expected &quot;&quot; but got &quot;0:00:00.000&quot;
+FAIL Invalid value: minutes should have two ASCII digits. Value should be empty assert_equals: expected &quot;&quot; but got &quot;00:0:00.000&quot;
+FAIL Invalid value: seconds should have two ASCII digits. Value should be empty assert_equals: expected &quot;&quot; but got &quot;00:00:0.000&quot;
+FAIL Invalid value: hour &gt; 23. Value should be empty assert_equals: expected &quot;&quot; but got &quot;24:00:00.000&quot;
+FAIL Invalid value: minute &gt; 59. Value should be empty assert_equals: expected &quot;&quot; but got &quot;00:60:00.000&quot;
+FAIL Invalid value: second &gt; 59. Value should be empty assert_equals: expected &quot;&quot; but got &quot;00:00:60.000&quot;
+PASS Value &gt;= min attribute 
+FAIL Value &lt; min attribute assert_equals: expected &quot;12:00:00.001&quot; but got &quot;12:00:00.000&quot;
+PASS Value &lt;= max attribute 
+FAIL Value &gt; max attribute assert_equals: expected &quot;12:00:00.000&quot; but got &quot;12:00:00.001&quot;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementtime2html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/time-2.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/time-2.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/time-2.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,42 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Form input type=time&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/multipage/common-microsyntaxes.html#times&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/multipage/states-of-the-type-attribute.html#time-state-(type=time)&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  var times = [
+    {value: &quot;&quot;, expected: &quot;&quot;, testname: &quot;empty value&quot;},
+    {value: &quot;00:00&quot;, expected: &quot;00:00&quot;, testname: &quot;Valid value: value should be 00:00&quot;},
+    {value: &quot;00:00:00&quot;, expected: &quot;00:00:00&quot;, testname: &quot;Valid value: value should be 00:00:00&quot;},
+    {value: &quot;00:00:00.0&quot;, expected: &quot;00:00:00.0&quot;, testname: &quot;Valid value: value should be 00:00:00.0&quot;},
+    {value: &quot;00:00:00.00&quot;, expected: &quot;00:00:00.00&quot;, testname: &quot;Valid value: value should be 00:00:00.00&quot;},
+    {value: &quot;00:00:00.000&quot;, expected: &quot;00:00:00.000&quot;, testname: &quot;Valid value: value should be 00:00:00.000&quot;},
+    {value: &quot;00:00:00.0000&quot;, expected: &quot;&quot;, testname: &quot;Invalid value: fraction should have one, two or three ASCII digits. Value should be empty&quot;},
+    {value: &quot;0:00:00.000&quot;, expected: &quot;&quot;, testname: &quot;Invalid value: hour should have two ASCII digits. Value should be empty&quot;},
+    {value: &quot;00:0:00.000&quot;, expected: &quot;&quot;, testname: &quot;Invalid value: minutes should have two ASCII digits. Value should be empty&quot;},
+    {value: &quot;00:00:0.000&quot;, expected: &quot;&quot;, testname: &quot;Invalid value: seconds should have two ASCII digits. Value should be empty&quot;},
+    {value: &quot;24:00:00.000&quot;, expected: &quot;&quot;, testname: &quot;Invalid value: hour &gt; 23. Value should be empty&quot;},
+    {value: &quot;00:60:00.000&quot;, expected: &quot;&quot;, testname: &quot;Invalid value: minute &gt; 59. Value should be empty&quot;},
+    {value: &quot;00:00:60.000&quot;, expected: &quot;&quot;, testname: &quot;Invalid value: second &gt; 59. Value should be empty&quot;},
+    {value: &quot;12:00:00.001&quot;, attributes: { min: &quot;12:00:00.000&quot; }, expected: &quot;12:00:00.001&quot;, testname: &quot;Value &gt;= min attribute&quot;},
+    {value: &quot;12:00:00.000&quot;, attributes: { min: &quot;12:00:00.001&quot; }, expected: &quot;12:00:00.001&quot;, testname: &quot;Value &lt; min attribute&quot;},
+    {value: &quot;12:00:00.000&quot;, attributes: { max: &quot;12:00:00.001&quot; }, expected: &quot;12:00:00.000&quot;, testname: &quot;Value &lt;= max attribute&quot;},
+    {value: &quot;12:00:00.001&quot;, attributes: { max: &quot;12:00:00.000&quot; }, expected: &quot;12:00:00.000&quot;, testname: &quot;Value &gt; max attribute&quot;}
+  ];
+  for (var i = 0; i &lt; times.length; i++) {
+    var w = times[i];
+    test(function() {
+      var input = document.createElement(&quot;input&quot;);
+      input.type = &quot;time&quot;;
+      input.value = w.value;
+      for(var attr in w.attributes) {
+        input[attr] = w.attributes[attr];
+      }
+      assert_equals(input.value, w.expected);
+    }, w.testname);
+  }
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementtimeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/time-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/time-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/time-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,36 @@
</span><ins>+Input Time
+
+
+PASS time element of default time value 
+PASS step attribute on default value check 
+PASS max  attribute on default value check 
+PASS min  attribute on default value check 
+FAIL type attribute support on input element assert_equals: expected &quot;time&quot; but got &quot;text&quot;
+PASS max attribute support on input element 
+PASS min attribute support on input element 
+PASS step attribute support on input element 
+PASS stepUp function support on input Element 
+PASS stepDown function support on input Element 
+FAIL stepUp step value empty on default step value  InvalidStateError: DOM Exception 11
+FAIL stepDown step value empty default step value InvalidStateError: DOM Exception 11
+FAIL stepUp on step value minus InvalidStateError: DOM Exception 11
+FAIL stepDown on step value minus InvalidStateError: DOM Exception 11
+FAIL stepUp on step value zero  InvalidStateError: DOM Exception 11
+FAIL stepDown on step value zero  InvalidStateError: DOM Exception 11
+FAIL stepUp on step value 24 hour InvalidStateError: DOM Exception 11
+FAIL stepDown on step value 24 hour  InvalidStateError: DOM Exception 11
+FAIL stepUp on step value hour   InvalidStateError: DOM Exception 11
+FAIL stepDown on step value hour  InvalidStateError: DOM Exception 11
+FAIL stepUp on step value second  InvalidStateError: DOM Exception 11
+FAIL stepDown on step value second  InvalidStateError: DOM Exception 11
+FAIL stepUp on step value miri second  InvalidStateError: DOM Exception 11
+FAIL stepDown on step value miri second  InvalidStateError: DOM Exception 11
+FAIL stepUp argment 2 times InvalidStateError: DOM Exception 11
+FAIL stepDown argment 2 times InvalidStateError: DOM Exception 11
+FAIL stepUp stop because it exceeds the maximum value InvalidStateError: DOM Exception 11
+FAIL stepDown Stop so lower than the minimum value InvalidStateError: DOM Exception 11
+FAIL stop at border on stepUp InvalidStateError: DOM Exception 11
+FAIL stop at border on stepDown InvalidStateError: DOM Exception 11
+FAIL  empty value of stepUp InvalidStateError: DOM Exception 11
+FAIL set value on not time format value assert_equals: expected &quot;&quot; but got &quot;hh:mi:ss.sss&quot;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementtimehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/time.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/time.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/time.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,207 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+
+  &lt;head&gt;
+    &lt;title&gt;Input Time&lt;/title&gt;
+     &lt;meta name=viewport content=&quot;width=device-width, maximum-scale=1.0, user-scalable=no&quot; /&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-input-element&quot;&gt;
+   &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;/head&gt;
+
+  &lt;body&gt;
+      &lt;h1&gt;Input Time&lt;/h1&gt;
+      &lt;div style=&quot;display:none;&quot;&gt;
+              &lt;input type=&quot;time &quot;id=&quot;chkDefaultValue&quot; /&gt;
+              &lt;input type=&quot;time&quot; id=&quot;chkStep&quot; /&gt;
+              &lt;input type=&quot;time&quot; id=&quot;chkSetValueTest&quot; /&gt;
+              &lt;input type=&quot;time&quot; id=&quot;chkSupportAttribute&quot; min=&quot;01:01:01.001&quot; max=&quot;12:12:12.012&quot; step=&quot;600&quot; /&gt;
+      &lt;/div&gt;
+    &lt;div id=&quot;log&quot;&gt;
+    &lt;/div&gt;
+
+  &lt;script type=&quot;text/javascript&quot;&gt;
+
+/* check default value */
+test(function(){ assert_equals(document.getElementById(&quot;chkDefaultValue&quot;).value, &quot;&quot;);
+}, &quot;time element of default time value&quot;);
+test(function(){assert_equals(document.getElementById('chkStep').step, &quot;&quot;);
+}, &quot;step attribute on default value check&quot;);
+test(function(){assert_equals(document.getElementById('chkDefaultValue').max, &quot;&quot;);
+}, &quot;max  attribute on default value check&quot;)
+test(function(){assert_equals(document.getElementById('chkDefaultValue').max, &quot;&quot;);
+}, &quot;min  attribute on default value check&quot;)
+
+/* simple attribute test*/
+test(function(){assert_equals(document.getElementById(&quot;chkSupportAttribute&quot;).type,&quot;time&quot;);}
+  , &quot;type attribute support on input element&quot;);
+test(function(){assert_equals(document.getElementById('chkSupportAttribute').min, &quot;01:01:01.001&quot;)}
+  , &quot;max attribute support on input element&quot;);
+test(function(){assert_equals(document.getElementById('chkSupportAttribute').max, &quot;12:12:12.012&quot;)}
+  , &quot;min attribute support on input element&quot;);
+test(function(){assert_equals(document.getElementById(&quot;chkSupportAttribute&quot;).step, &quot;600&quot;)}
+  , &quot;step attribute support on input element&quot;);
+
+/* check step up and down */
+var _StepTest = document.getElementById(&quot;chkStep&quot;);
+test(function(){ assert_true(typeof(_StepTest.stepUp) ===&quot;function&quot; ) }   , &quot;stepUp function support on input Element&quot;);
+test(function(){ assert_true(typeof(_StepTest.stepDown) ===&quot;function&quot; ) } , &quot;stepDown function support on input Element&quot;);
+
+test(function(){
+  _StepTest.value = &quot;12:00&quot;;
+  _StepTest.step = &quot;&quot;;
+  _StepTest.stepUp();
+  assert_equals(_StepTest.value,&quot;12:01&quot;);
+} , &quot;stepUp step value empty on default step value &quot;);
+
+test(function(){
+  _StepTest.value = &quot;12:00&quot;;
+  _StepTest.step = &quot;&quot;;
+  _StepTest.stepDown();
+  assert_equals(_StepTest.value,&quot;11:59&quot;);
+}, &quot;stepDown step value empty default step value&quot;);
+
+test(function(){
+  _StepTest.value = &quot;12:00&quot;;
+  _StepTest.step = &quot;-600&quot;;
+  _StepTest.stepUp();
+  assert_equals(_StepTest.value, &quot;12:01&quot;);
+},&quot;stepUp on step value minus&quot;);
+test(function(){
+  _StepTest.value = &quot;12:00&quot;;
+  _StepTest.step = &quot;-600&quot;;
+  _StepTest.stepDown();
+  assert_equals(_StepTest.value, &quot;11:59&quot;);
+},&quot;stepDown on step value minus&quot;);
+
+test(function(){
+  _StepTest.value = &quot;12:00&quot;;
+  _StepTest.step = &quot;0&quot;;
+  _StepTest.stepUp();
+  assert_equals(_StepTest.value, &quot;12:01&quot;);
+} , &quot;stepUp on step value zero &quot;);
+test(function(){
+  _StepTest.value = &quot;12:00&quot;;
+  _StepTest.step = &quot;0&quot;;
+  _StepTest.stepDown();
+  assert_equals(_StepTest.value, &quot;11:59&quot;);
+} , &quot;stepDown on step value zero &quot;);
+
+test(function(){
+  _StepTest.value = &quot;00:00&quot;;
+  _StepTest.step = &quot;86399&quot;;
+  _StepTest.stepUp();
+  assert_equals(_StepTest.value, &quot;23:59:59&quot;);
+} , &quot;stepUp on step value 24 hour&quot;);
+test(function(){
+  _StepTest.value = &quot;23:59:59&quot;;
+  _StepTest.step = &quot;86399&quot;;
+  _StepTest.stepDown();
+  assert_equals(_StepTest.value, &quot;00:00:00&quot;);
+} , &quot;stepDown on step value 24 hour &quot;);
+
+test(function(){
+  _StepTest.value = &quot;12:00&quot;;
+  _StepTest.step = &quot;3600&quot;;
+  _StepTest.stepUp();
+  assert_equals(_StepTest.value, &quot;13:00&quot;);
+} , &quot;stepUp on step value hour  &quot;);
+test(function(){
+  _StepTest.value = &quot;12:00&quot;;
+  _StepTest.step = &quot;3600&quot;;
+  _StepTest.stepDown();
+  assert_equals(_StepTest.value, &quot;11:00&quot;);
+} , &quot;stepDown on step value hour &quot;);
+
+test(function(){
+  _StepTest.value = &quot;12:00&quot;;
+  _StepTest.step = &quot;1&quot;;
+  _StepTest.stepUp();
+  assert_equals(_StepTest.value, &quot;12:00:01&quot;);
+} , &quot;stepUp on step value second &quot;);
+test(function(){
+  _StepTest.value = &quot;12:00&quot;;
+  _StepTest.step = &quot;1&quot;;
+  _StepTest.stepDown();
+  assert_equals(_StepTest.value, &quot;11:59:59&quot;);
+} , &quot;stepDown on step value second &quot;);
+
+test(function(){
+  _StepTest.value = &quot;12:00&quot;;
+  _StepTest.step = &quot;0.001&quot;;
+  _StepTest.stepUp();
+  assert_equals(_StepTest.value, &quot;12:00:00.001&quot;);
+} , &quot;stepUp on step value miri second &quot;);
+test(function(){
+  _StepTest.value = &quot;12:00&quot;;
+  _StepTest.step = &quot;0.001&quot;;
+  _StepTest.stepDown();
+  assert_equals(_StepTest.value, &quot;11:59:59.999&quot;);
+} , &quot;stepDown on step value miri second &quot;);
+
+test(function(){
+  _StepTest.value = &quot;13:00:00&quot;;
+  _StepTest.step = &quot;1&quot;;
+  _StepTest.stepUp(2);
+  assert_equals(_StepTest.value, &quot;13:00:02&quot;);
+}, &quot;stepUp argment 2 times&quot;);
+test(function(){
+  _StepTest.value = &quot;13:00:00&quot;;
+  _StepTest.step = &quot;1&quot;;
+  _StepTest.stepDown(2);
+  assert_equals(_StepTest.value, &quot;12:59:58&quot;);
+}, &quot;stepDown argment 2 times&quot;);
+
+test(function(){
+  _StepTest.max = &quot;15:00&quot;;
+  _StepTest.value = &quot;15:00&quot;;
+  _StepTest.stepUp();
+  assert_equals(_StepTest.value, &quot;15:00&quot;);
+  _StepTest.max = &quot;&quot;;
+} , &quot;stepUp stop because it exceeds the maximum value&quot;);
+test(function(){
+  _StepTest.min = &quot;13:00&quot;;
+  _StepTest.value = &quot;13:00&quot;;
+  _StepTest.stepDown();
+  assert_equals(_StepTest.value, &quot;13:00&quot;);
+  _StepTest.min=&quot;&quot;;
+} , &quot;stepDown Stop so lower than the minimum value&quot;);
+
+test(function(){
+  _StepTest.max = &quot;15:01&quot;;
+  _StepTest.value = &quot;15:00&quot;;
+  _StepTest.step = &quot;120&quot;;
+  _StepTest.stepUp();
+  assert_equals(_StepTest.value, &quot;15:01&quot;);
+  _StepTest.max = &quot;&quot;;
+} , &quot;stop at border on stepUp&quot;);
+test(function(){
+  _StepTest.min = &quot;12:59&quot;;
+  _StepTest.value = &quot;13:00&quot;;
+  _StepTest.step = &quot;120&quot;;
+  _StepTest.stepDown();
+  assert_equals(_StepTest.value, &quot;12:59&quot;);
+  _StepTest.min=&quot;&quot;;
+} , &quot;stop at border on stepDown&quot;);
+
+test(function(){
+  _StepTest.value = &quot;&quot;;
+  _StepTest.step = &quot;60&quot;;
+  _StepTest.stepUp();
+  assert_equals(_StepTest.value, &quot;00:01&quot;);
+} , &quot; empty value of stepUp&quot;);
+
+
+/* set value test */
+test(function(){
+  var _time = document.getElementById(&quot;chkSetValueTest&quot;);
+  _time.value = &quot;12:00:00.000&quot;;
+  assert_equals(_time.value, &quot;12:00:00.000&quot;);
+  _time.value = &quot;hh:mi:ss.sss&quot;;
+  assert_equals(_time.value, &quot;&quot;);
+}, &quot;set value on not time format value&quot;);
+
+
+  &lt;/script&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementtypechangestateexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/type-change-state-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/type-change-state-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/type-change-state-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,464 @@
</span><ins>+
+PASS change state from hidden to text 
+PASS change state from hidden to search 
+PASS change state from hidden to tel 
+FAIL change state from hidden to url assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;  foobar  &quot;
+PASS change state from hidden to email 
+PASS change state from hidden to password 
+FAIL change state from hidden to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from hidden to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from hidden to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from hidden to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from hidden to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from hidden to number 
+PASS change state from hidden to range 
+PASS change state from hidden to color 
+PASS change state from hidden to checkbox 
+PASS change state from hidden to radio 
+PASS change state from hidden to file 
+PASS change state from hidden to submit 
+PASS change state from hidden to image 
+PASS change state from hidden to reset 
+PASS change state from hidden to button 
+FAIL change state from text to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+PASS change state from text to search 
+PASS change state from text to tel 
+FAIL change state from text to url assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;  foobar  &quot;
+PASS change state from text to email 
+PASS change state from text to password 
+FAIL change state from text to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from text to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from text to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from text to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from text to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from text to number 
+PASS change state from text to range 
+PASS change state from text to color 
+FAIL change state from text to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from text to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from text to file assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from text to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from text to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from text to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from text to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from search to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+PASS change state from search to text 
+PASS change state from search to tel 
+FAIL change state from search to url assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;  foobar  &quot;
+PASS change state from search to email 
+PASS change state from search to password 
+FAIL change state from search to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from search to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from search to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from search to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from search to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from search to number 
+PASS change state from search to range 
+PASS change state from search to color 
+FAIL change state from search to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from search to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from search to file assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from search to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from search to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from search to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from search to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from tel to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+PASS change state from tel to text 
+PASS change state from tel to search 
+FAIL change state from tel to url assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;  foobar  &quot;
+PASS change state from tel to email 
+PASS change state from tel to password 
+FAIL change state from tel to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from tel to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from tel to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from tel to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from tel to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from tel to number 
+PASS change state from tel to range 
+PASS change state from tel to color 
+FAIL change state from tel to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from tel to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from tel to file assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from tel to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from tel to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from tel to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from tel to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from url to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+PASS change state from url to text 
+PASS change state from url to search 
+PASS change state from url to tel 
+PASS change state from url to email 
+PASS change state from url to password 
+FAIL change state from url to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from url to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from url to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from url to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from url to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from url to number 
+PASS change state from url to range 
+PASS change state from url to color 
+FAIL change state from url to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from url to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from url to file assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from url to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from url to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from url to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from url to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from email to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;foobar&quot;
+FAIL change state from email to text assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;foobar&quot;
+FAIL change state from email to search assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;foobar&quot;
+FAIL change state from email to tel assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;foobar&quot;
+PASS change state from email to url 
+FAIL change state from email to password assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;foobar&quot;
+FAIL change state from email to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;foobar&quot;
+FAIL change state from email to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;foobar&quot;
+FAIL change state from email to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;foobar&quot;
+FAIL change state from email to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;foobar&quot;
+FAIL change state from email to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;foobar&quot;
+PASS change state from email to number 
+PASS change state from email to range 
+PASS change state from email to color 
+FAIL change state from email to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;foobar&quot;
+FAIL change state from email to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;foobar&quot;
+FAIL change state from email to file assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;foobar&quot;
+FAIL change state from email to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;foobar&quot;
+FAIL change state from email to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;foobar&quot;
+FAIL change state from email to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;foobar&quot;
+FAIL change state from email to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;foobar&quot;
+FAIL change state from password to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+PASS change state from password to text 
+PASS change state from password to search 
+PASS change state from password to tel 
+FAIL change state from password to url assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;  foobar  &quot;
+PASS change state from password to email 
+FAIL change state from password to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from password to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from password to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from password to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from password to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from password to number 
+PASS change state from password to range 
+PASS change state from password to color 
+FAIL change state from password to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from password to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from password to file assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from password to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from password to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from password to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from password to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from datetime to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+PASS change state from datetime to text 
+PASS change state from datetime to search 
+PASS change state from datetime to tel 
+FAIL change state from datetime to url assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;  foobar  &quot;
+PASS change state from datetime to email 
+PASS change state from datetime to password 
+FAIL change state from datetime to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from datetime to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from datetime to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from datetime to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from datetime to number 
+PASS change state from datetime to range 
+PASS change state from datetime to color 
+FAIL change state from datetime to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from datetime to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from datetime to file assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from datetime to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from datetime to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from datetime to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from datetime to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from date to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+PASS change state from date to text 
+PASS change state from date to search 
+PASS change state from date to tel 
+FAIL change state from date to url assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;  foobar  &quot;
+PASS change state from date to email 
+PASS change state from date to password 
+FAIL change state from date to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from date to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from date to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from date to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from date to number 
+PASS change state from date to range 
+PASS change state from date to color 
+FAIL change state from date to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from date to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from date to file assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from date to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from date to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from date to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from date to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from month to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+PASS change state from month to text 
+PASS change state from month to search 
+PASS change state from month to tel 
+FAIL change state from month to url assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;  foobar  &quot;
+PASS change state from month to email 
+PASS change state from month to password 
+FAIL change state from month to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from month to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from month to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from month to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from month to number 
+PASS change state from month to range 
+PASS change state from month to color 
+FAIL change state from month to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from month to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from month to file assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from month to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from month to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from month to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from month to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from week to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+PASS change state from week to text 
+PASS change state from week to search 
+PASS change state from week to tel 
+FAIL change state from week to url assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;  foobar  &quot;
+PASS change state from week to email 
+PASS change state from week to password 
+FAIL change state from week to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from week to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from week to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from week to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from week to number 
+PASS change state from week to range 
+PASS change state from week to color 
+FAIL change state from week to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from week to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from week to file assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from week to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from week to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from week to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from week to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from time to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+PASS change state from time to text 
+PASS change state from time to search 
+PASS change state from time to tel 
+FAIL change state from time to url assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;  foobar  &quot;
+PASS change state from time to email 
+PASS change state from time to password 
+FAIL change state from time to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from time to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from time to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from time to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from time to number 
+PASS change state from time to range 
+PASS change state from time to color 
+FAIL change state from time to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from time to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from time to file assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from time to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from time to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from time to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from time to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;  foobar  &quot;
+FAIL change state from number to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;&quot;
+FAIL change state from number to text assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;&quot;
+FAIL change state from number to search assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;&quot;
+FAIL change state from number to tel assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;&quot;
+FAIL change state from number to url assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;&quot;
+FAIL change state from number to email assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;&quot;
+FAIL change state from number to password assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;&quot;
+PASS change state from number to datetime 
+PASS change state from number to date 
+PASS change state from number to month 
+PASS change state from number to week 
+PASS change state from number to time 
+PASS change state from number to range 
+PASS change state from number to color 
+FAIL change state from number to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;&quot;
+FAIL change state from number to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;&quot;
+FAIL change state from number to file assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;&quot;
+FAIL change state from number to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;&quot;
+FAIL change state from number to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;&quot;
+FAIL change state from number to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;&quot;
+FAIL change state from number to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;&quot;
+FAIL change state from range to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;50&quot;
+FAIL change state from range to text assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;50&quot;
+FAIL change state from range to search assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;50&quot;
+FAIL change state from range to tel assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;50&quot;
+FAIL change state from range to url assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;50&quot;
+FAIL change state from range to email assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;50&quot;
+FAIL change state from range to password assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;50&quot;
+FAIL change state from range to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;50&quot;
+FAIL change state from range to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;50&quot;
+FAIL change state from range to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;50&quot;
+FAIL change state from range to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;50&quot;
+FAIL change state from range to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;50&quot;
+FAIL change state from range to number assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;50&quot;
+PASS change state from range to color 
+FAIL change state from range to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;50&quot;
+FAIL change state from range to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;50&quot;
+FAIL change state from range to file assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;50&quot;
+FAIL change state from range to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;50&quot;
+FAIL change state from range to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;50&quot;
+FAIL change state from range to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;50&quot;
+FAIL change state from range to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;50&quot;
+FAIL change state from color to hidden assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;#000000&quot;
+FAIL change state from color to text assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;#000000&quot;
+FAIL change state from color to search assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;#000000&quot;
+FAIL change state from color to tel assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;#000000&quot;
+FAIL change state from color to url assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;#000000&quot;
+FAIL change state from color to email assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;#000000&quot;
+FAIL change state from color to password assert_equals: input.value should be   foobar   after change of state expected &quot;  foobar  &quot; but got &quot;#000000&quot;
+FAIL change state from color to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;#000000&quot;
+FAIL change state from color to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;#000000&quot;
+FAIL change state from color to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;#000000&quot;
+FAIL change state from color to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;#000000&quot;
+FAIL change state from color to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;#000000&quot;
+PASS change state from color to number 
+PASS change state from color to range 
+FAIL change state from color to checkbox assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;#000000&quot;
+FAIL change state from color to radio assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;#000000&quot;
+FAIL change state from color to file assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;#000000&quot;
+FAIL change state from color to submit assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;#000000&quot;
+FAIL change state from color to image assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;#000000&quot;
+FAIL change state from color to reset assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;#000000&quot;
+FAIL change state from color to button assert_equals: input.value should be '  foo\rbar  ' after change of state expected &quot;  foo\rbar  &quot; but got &quot;#000000&quot;
+PASS change state from checkbox to hidden 
+PASS change state from checkbox to text 
+PASS change state from checkbox to search 
+PASS change state from checkbox to tel 
+FAIL change state from checkbox to url assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;  foobar  &quot;
+PASS change state from checkbox to email 
+PASS change state from checkbox to password 
+FAIL change state from checkbox to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from checkbox to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from checkbox to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from checkbox to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from checkbox to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from checkbox to number 
+PASS change state from checkbox to range 
+PASS change state from checkbox to color 
+PASS change state from checkbox to radio 
+PASS change state from checkbox to file 
+PASS change state from checkbox to submit 
+PASS change state from checkbox to image 
+PASS change state from checkbox to reset 
+PASS change state from checkbox to button 
+PASS change state from radio to hidden 
+PASS change state from radio to text 
+PASS change state from radio to search 
+PASS change state from radio to tel 
+FAIL change state from radio to url assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;  foobar  &quot;
+PASS change state from radio to email 
+PASS change state from radio to password 
+FAIL change state from radio to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from radio to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from radio to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from radio to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from radio to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from radio to number 
+PASS change state from radio to range 
+PASS change state from radio to color 
+PASS change state from radio to checkbox 
+PASS change state from radio to file 
+PASS change state from radio to submit 
+PASS change state from radio to image 
+PASS change state from radio to reset 
+PASS change state from radio to button 
+PASS change state from file to hidden 
+PASS change state from file to text 
+PASS change state from file to search 
+PASS change state from file to tel 
+PASS change state from file to url 
+PASS change state from file to email 
+PASS change state from file to password 
+PASS change state from file to datetime 
+PASS change state from file to date 
+PASS change state from file to month 
+PASS change state from file to week 
+PASS change state from file to time 
+PASS change state from file to number 
+PASS change state from file to range 
+PASS change state from file to color 
+PASS change state from file to checkbox 
+PASS change state from file to radio 
+PASS change state from file to submit 
+PASS change state from file to image 
+PASS change state from file to reset 
+PASS change state from file to button 
+PASS change state from submit to hidden 
+PASS change state from submit to text 
+PASS change state from submit to search 
+PASS change state from submit to tel 
+FAIL change state from submit to url assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;  foobar  &quot;
+PASS change state from submit to email 
+PASS change state from submit to password 
+FAIL change state from submit to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from submit to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from submit to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from submit to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from submit to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from submit to number 
+PASS change state from submit to range 
+PASS change state from submit to color 
+PASS change state from submit to checkbox 
+PASS change state from submit to radio 
+PASS change state from submit to file 
+PASS change state from submit to image 
+PASS change state from submit to reset 
+PASS change state from submit to button 
+PASS change state from image to hidden 
+PASS change state from image to text 
+PASS change state from image to search 
+PASS change state from image to tel 
+FAIL change state from image to url assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;  foobar  &quot;
+PASS change state from image to email 
+PASS change state from image to password 
+FAIL change state from image to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from image to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from image to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from image to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from image to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from image to number 
+PASS change state from image to range 
+PASS change state from image to color 
+PASS change state from image to checkbox 
+PASS change state from image to radio 
+PASS change state from image to file 
+PASS change state from image to submit 
+PASS change state from image to reset 
+PASS change state from image to button 
+PASS change state from reset to hidden 
+PASS change state from reset to text 
+PASS change state from reset to search 
+PASS change state from reset to tel 
+FAIL change state from reset to url assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;  foobar  &quot;
+PASS change state from reset to email 
+PASS change state from reset to password 
+FAIL change state from reset to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from reset to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from reset to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from reset to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from reset to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from reset to number 
+PASS change state from reset to range 
+PASS change state from reset to color 
+PASS change state from reset to checkbox 
+PASS change state from reset to radio 
+PASS change state from reset to file 
+PASS change state from reset to submit 
+PASS change state from reset to image 
+PASS change state from reset to button 
+PASS change state from button to hidden 
+PASS change state from button to text 
+PASS change state from button to search 
+PASS change state from button to tel 
+FAIL change state from button to url assert_equals: input.value should be foobar after change of state expected &quot;foobar&quot; but got &quot;  foobar  &quot;
+PASS change state from button to email 
+PASS change state from button to password 
+FAIL change state from button to datetime assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from button to date assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from button to month assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from button to week assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+FAIL change state from button to time assert_equals: input.value should be  after change of state expected &quot;&quot; but got &quot;  foobar  &quot;
+PASS change state from button to number 
+PASS change state from button to range 
+PASS change state from button to color 
+PASS change state from button to checkbox 
+PASS change state from button to radio 
+PASS change state from button to file 
+PASS change state from button to submit 
+PASS change state from button to image 
+PASS change state from button to reset 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementtypechangestatehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/type-change-state.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/type-change-state.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/type-change-state.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,58 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Input element's type attribute changes state&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#the-input-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  var types = [
+    { type: &quot;hidden&quot; },
+    { type: &quot;text&quot;, sanitizedValue: &quot;  foobar  &quot; },
+    { type: &quot;search&quot;, sanitizedValue: &quot;  foobar  &quot; },
+    { type: &quot;tel&quot;, sanitizedValue: &quot;  foobar  &quot; },
+    { type: &quot;url&quot;, sanitizedValue: &quot;foobar&quot; },
+    { type: &quot;email&quot;, sanitizedValue: &quot;foobar&quot; },
+    { type: &quot;password&quot;, sanitizedValue: &quot;  foobar  &quot; },
+    { type: &quot;datetime&quot;, sanitizedValue: &quot;&quot; },
+    { type: &quot;date&quot;, sanitizedValue: &quot;&quot; },
+    { type: &quot;month&quot;, sanitizedValue: &quot;&quot; },
+    { type: &quot;week&quot;, sanitizedValue: &quot;&quot; },
+    { type: &quot;time&quot;, sanitizedValue: &quot;&quot; },
+    { type: &quot;number&quot;, sanitizedValue: &quot;&quot; },
+    { type: &quot;range&quot;, sanitizedValue: &quot;50&quot; },
+    { type: &quot;color&quot;, sanitizedValue: &quot;#000000&quot; },
+    { type: &quot;checkbox&quot; },
+    { type: &quot;radio&quot; },
+    { type: &quot;file&quot; },
+    { type: &quot;submit&quot; },
+    { type: &quot;image&quot; },
+    { type: &quot;reset&quot; },
+    { type: &quot;button&quot; }
+  ];
+  for (var i = 0; i &lt; types.length; i++) {
+    for (var j = 0; j &lt; types.length; j++) {
+      if (types[i] != types[j]) {
+        test(function() {
+          var input = document.createElement(&quot;input&quot;);
+          input.type = types[i].type;
+          if (types[i].type === &quot;file&quot;) {
+            assert_throws(&quot;INVALID_STATE_ERR&quot;, function() {
+              input.value = &quot;  foo\rbar  &quot;;
+            });
+            assert_equals(input.value, &quot;&quot;);
+          } else {
+            input.value = &quot;  foo\rbar  &quot;;
+            input.type = types[j].type;  // change state
+            if (types[j].sanitizedValue || types[j].sanitizedValue === &quot;&quot;) {
+              assert_equals(input.value, types[j].sanitizedValue, &quot;input.value should be &quot; + types[j].sanitizedValue + &quot; after change of state&quot;);
+            } else {
+              assert_equals(input.value, &quot;  foo\rbar  &quot;, &quot;input.value should be '  foo\\rbar  ' after change of state&quot;);
+            }
+          }
+        }, &quot;change state from &quot; + types[i].type + &quot; to &quot; + types[j].type);
+      }
+    }
+  }
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementurlexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/url-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/url-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/url-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+Input url
+
+
+PASS url type supported on input element 
+PASS The value must not be set with &quot;LF&quot; (U+000A) or &quot;CR&quot; (U+000D) 
+PASS The value sanitization algorithm is as follows: Strip line breaks from the value 
+FAIL The value sanitization algorithm is as follows: Strip leading and trailing whitespace from the value. assert_equals: expected &quot;aa&quot; but got &quot; aa &quot;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementurlhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/url.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/url.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/url.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,59 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+  &lt;title&gt;Input url&lt;/title&gt;
+  &lt;link rel=&quot;author&quot; title=&quot;Hyeonseok Shin&quot; href=&quot;mailto:hyeonseok@gmail.com&quot;&gt;
+  &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#url-state-%28type=url%29&quot;&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+  &lt;h1&gt;Input url&lt;/h1&gt;
+  &lt;div style=&quot;display: none&quot;&gt;
+  &lt;input type=&quot;url&quot; id=&quot;type_support&quot; /&gt;
+  &lt;input type=&quot;url&quot; id=&quot;set_value_LF&quot; /&gt;
+  &lt;input type=&quot;url&quot; id=&quot;set_value_CR&quot; /&gt;
+  &lt;input type=&quot;url&quot; id=&quot;set_value_CRLF&quot; /&gt;
+  &lt;input type=&quot;url&quot; id=&quot;value_with_CRLF&quot; value=&quot;a&amp;#x000D;&amp;#x000A;a&quot; /&gt;
+  &lt;input type=&quot;url&quot; id=&quot;value_with_leading_trailing_white_space&quot; value=&quot; aa &quot; /&gt;
+  &lt;input type=&quot;url&quot; id=&quot;value_with_leading_trailing_inner_white_space&quot; value=&quot; a a &quot; /&gt;
+  &lt;/div&gt;
+  &lt;div id=&quot;log&quot;&gt;
+  &lt;/div&gt;
+
+  &lt;script type=&quot;text/javascript&quot;&gt;
+    test(function(){
+      var element = document.getElementById('type_support');
+      assert_equals(element.type, 'url');
+    }, 'url type supported on input element');
+
+    test(function(){
+      var element = document.getElementById('set_value_LF');
+      element.value = 'a\u000Aa';
+      assert_equals(element.value, 'aa');
+
+      element = document.getElementById('set_value_CR');
+      element.value = 'a\u000Da';
+      assert_equals(element.value, 'aa');
+
+      element = document.getElementById('set_value_CRLF');
+      element.value = 'a\u000D\u000Aa';
+      assert_equals(element.value, 'aa');
+    }, 'The value must not be set with &quot;LF&quot; (U+000A) or &quot;CR&quot; (U+000D)');
+
+    test(function(){
+      var element = document.getElementById('value_with_CRLF');
+      assert_equals(element.value, 'aa');
+    }, 'The value sanitization algorithm is as follows: Strip line breaks from the value');
+
+    test(function(){
+      var element = document.getElementById('value_with_leading_trailing_white_space');
+      assert_equals(element.value, 'aa');
+
+      element = document.getElementById('value_with_leading_trailing_inner_white_space');
+      assert_equals(element.value, 'a a');
+    }, 'The value sanitization algorithm is as follows: Strip leading and trailing whitespace from the value.');
+  &lt;/script&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementvalueModeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/valueMode-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/valueMode-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/valueMode-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,44 @@
</span><ins>+
+FAIL value IDL attribute of input type hidden without value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type hidden with value attribute assert_equals: expected &quot;bar&quot; but got &quot;foo&quot;
+PASS value IDL attribute of input type text without value attribute 
+PASS value IDL attribute of input type text with value attribute 
+PASS value IDL attribute of input type search without value attribute 
+PASS value IDL attribute of input type search with value attribute 
+PASS value IDL attribute of input type tel without value attribute 
+PASS value IDL attribute of input type tel with value attribute 
+PASS value IDL attribute of input type url without value attribute 
+PASS value IDL attribute of input type url with value attribute 
+PASS value IDL attribute of input type email without value attribute 
+PASS value IDL attribute of input type email with value attribute 
+PASS value IDL attribute of input type password without value attribute 
+PASS value IDL attribute of input type password with value attribute 
+FAIL value IDL attribute of input type datetime without value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type datetime with value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type date without value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type date with value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type month without value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type month with value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type week without value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type week with value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type time without value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type time with value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+PASS value IDL attribute of input type number without value attribute 
+PASS value IDL attribute of input type number with value attribute 
+PASS value IDL attribute of input type range without value attribute 
+PASS value IDL attribute of input type range with value attribute 
+PASS value IDL attribute of input type color without value attribute 
+PASS value IDL attribute of input type color with value attribute 
+FAIL value IDL attribute of input type checkbox without value attribute assert_equals: expected &quot;on&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type checkbox with value attribute assert_equals: expected &quot;bar&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type radio without value attribute assert_equals: expected &quot;on&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type radio with value attribute assert_equals: expected &quot;bar&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type submit without value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type submit with value attribute assert_equals: expected &quot;bar&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type image without value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type image with value attribute assert_equals: expected &quot;bar&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type reset without value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type reset with value attribute assert_equals: expected &quot;bar&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type button without value attribute assert_equals: expected &quot;&quot; but got &quot;foo&quot;
+FAIL value IDL attribute of input type button with value attribute assert_equals: expected &quot;bar&quot; but got &quot;foo&quot;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementvalueModehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/valueMode.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/valueMode.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/valueMode.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,72 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Input element value mode&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  var types = [
+    { type: &quot;hidden&quot;, mode: &quot;default&quot; },
+    { type: &quot;text&quot;, mode: &quot;value&quot;, sanitizedValue: &quot;foo&quot; },
+    { type: &quot;search&quot;, mode: &quot;value&quot;, sanitizedValue: &quot;foo&quot; },
+    { type: &quot;tel&quot;, mode: &quot;value&quot;, sanitizedValue: &quot;foo&quot; },
+    { type: &quot;url&quot;, mode: &quot;value&quot;, sanitizedValue: &quot;foo&quot; },
+    { type: &quot;email&quot;, mode: &quot;value&quot;, sanitizedValue: &quot;foo&quot; },
+    { type: &quot;password&quot;, mode: &quot;value&quot;, sanitizedValue: &quot;foo&quot; },
+    { type: &quot;datetime&quot;, mode: &quot;value&quot;, sanitizedValue: &quot;&quot; },
+    { type: &quot;date&quot;, mode: &quot;value&quot;, sanitizedValue: &quot;&quot; },
+    { type: &quot;month&quot;, mode: &quot;value&quot;, sanitizedValue: &quot;&quot; },
+    { type: &quot;week&quot;, mode: &quot;value&quot;, sanitizedValue: &quot;&quot; },
+    { type: &quot;time&quot;, mode: &quot;value&quot;, sanitizedValue: &quot;&quot; },
+    { type: &quot;number&quot;, mode: &quot;value&quot;, sanitizedValue: &quot;&quot; },
+    { type: &quot;range&quot;, mode: &quot;value&quot;, sanitizedValue: &quot;50&quot; },
+    { type: &quot;color&quot;, mode: &quot;value&quot;, sanitizedValue: &quot;#000000&quot; },
+    { type: &quot;checkbox&quot;, mode: &quot;default/on&quot; },
+    { type: &quot;radio&quot;, mode: &quot;default/on&quot; },
+    { type: &quot;submit&quot;, mode: &quot;default&quot; },
+    { type: &quot;image&quot;, mode: &quot;default&quot; },
+    { type: &quot;reset&quot;, mode: &quot;default&quot; },
+    { type: &quot;button&quot;, mode: &quot;default&quot; }
+  ];
+  for (var i = 0; i &lt; types.length; i++) {
+    test(function() {
+      var input = document.createElement(&quot;input&quot;),
+          expected;
+      input.type = types[i].type;
+      input.value = &quot;foo&quot;;
+      switch(types[i].mode) {
+        case &quot;default&quot;:
+          expected = &quot;&quot;;
+          break;
+        case &quot;default/on&quot;:
+          expected = &quot;on&quot;;
+          break;
+        case &quot;value&quot;:
+          expected = types[i].sanitizedValue;
+          break;
+      }
+      assert_equals(input.value, expected);
+    }, &quot;value IDL attribute of input type &quot; + types[i].type + &quot; without value attribute&quot;);
+
+    test(function() {
+      var input = document.createElement(&quot;input&quot;),
+          expected;
+      input.type = types[i].type;
+      input.setAttribute(&quot;value&quot;, &quot;bar&quot;);
+      input.value = &quot;foo&quot;;
+      switch(types[i].mode) {
+        case &quot;default&quot;:
+          expected = &quot;bar&quot;;
+          break;
+        case &quot;default/on&quot;:
+          expected = &quot;bar&quot;;
+          break;
+        case &quot;value&quot;:
+          expected = types[i].sanitizedValue;
+          break;
+      }
+      assert_equals(input.value, expected);
+    }, &quot;value IDL attribute of input type &quot; + types[i].type + &quot; with value attribute&quot;);
+  }
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,53 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/button.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/checkbox.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/checked.xhtml
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/color.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/contains.json
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/date.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime-2.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime-local.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/datetime.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/email.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/files.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/hidden.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/image01-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/image01.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-textselection-01.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-type-button.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/input-type-checkbox.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/month.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/number.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/password.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/pattern_attribute.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/radio-groupname-case.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/radio.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/range-2.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/range.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/required_attribute.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/reset.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/search_input.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/telephone.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/text.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/time-2.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/time.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/type-change-state.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/url.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/valueMode.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/week.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementweekexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/week-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/week-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/week-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,15 @@
</span><ins>+
+PASS empty value 
+PASS Valid value: Value should be 2014-W52 
+FAIL 2014 has 52 weeks: Value should be empty assert_equals: expected &quot;&quot; but got &quot;2014-W53&quot;
+PASS 2015 has 53 weeks: Value should be 2015-W53 
+FAIL Invalid value: year only assert_equals: expected &quot;&quot; but got &quot;2014&quot;
+FAIL Invalid value: no week number assert_equals: expected &quot;&quot; but got &quot;2014W&quot;
+FAIL Invalid value: no '-' (U+002D) assert_equals: expected &quot;&quot; but got &quot;2014W52&quot;
+FAIL Invalid value: yearless week assert_equals: expected &quot;&quot; but got &quot;-W52&quot;
+FAIL Invalid value: yearless week and no '-' (U+002D) assert_equals: expected &quot;&quot; but got &quot;W52&quot;
+PASS Value &gt;= min attribute 
+FAIL Value &lt; min attribute assert_equals: expected &quot;2014-W02&quot; but got &quot;2014-W01&quot;
+PASS Value &lt;= max attribute 
+FAIL Value &gt; max attribute assert_equals: expected &quot;2014-W11&quot; but got &quot;2014-W12&quot;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheinputelementweekhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/week.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/week.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-input-element/week.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,38 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Form input type=week&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#weeks&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#week-state-(type=week)&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  var weeks = [
+    {value: &quot;&quot;, expected: &quot;&quot;, testname: &quot;empty value&quot;},
+    {value: &quot;2014-W52&quot;, expected: &quot;2014-W52&quot;, testname: &quot;Valid value: Value should be 2014-W52&quot;},
+    {value: &quot;2014-W53&quot;, expected: &quot;&quot;, testname: &quot;2014 has 52 weeks: Value should be empty&quot;},
+    {value: &quot;2015-W53&quot;, expected: &quot;2015-W53&quot;, testname: &quot;2015 has 53 weeks: Value should be 2015-W53&quot;},
+    {value: &quot;2014&quot;, expected: &quot;&quot;, testname: &quot;Invalid value: year only&quot;},
+    {value: &quot;2014W&quot;, expected: &quot;&quot;, testname: &quot;Invalid value: no week number&quot;},
+    {value: &quot;2014W52&quot;, expected: &quot;&quot;, testname: &quot;Invalid value: no '-' (U+002D)&quot;},
+    {value: &quot;-W52&quot;, expected: &quot;&quot;, testname: &quot;Invalid value: yearless week&quot;},
+    {value: &quot;W52&quot;, expected: &quot;&quot;, testname: &quot;Invalid value: yearless week and no '-' (U+002D)&quot;},
+    {value: &quot;2014-W03&quot;, attributes: { min: &quot;2014-W02&quot; }, expected: &quot;2014-W03&quot;, testname: &quot;Value &gt;= min attribute&quot;},
+    {value: &quot;2014-W01&quot;, attributes: { min: &quot;2014-W02&quot; }, expected: &quot;2014-W02&quot;, testname: &quot;Value &lt; min attribute&quot;},
+    {value: &quot;2014-W10&quot;, attributes: { max: &quot;2014-W11&quot; }, expected: &quot;2014-W10&quot;, testname: &quot;Value &lt;= max attribute&quot;},
+    {value: &quot;2014-W12&quot;, attributes: { max: &quot;2014-W11&quot; }, expected: &quot;2014-W11&quot;, testname: &quot;Value &gt; max attribute&quot;}
+  ];
+  for (var i = 0; i &lt; weeks.length; i++) {
+    var w = weeks[i];
+    test(function() {
+      var input = document.createElement(&quot;input&quot;);
+      input.type = &quot;week&quot;;
+      input.value = w.value;
+      for(var attr in w.attributes) {
+        input[attr] = w.attributes[attr];
+      }
+      assert_equals(input.value, w.expected);
+    }, w.testname);
+  }
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthelabelelementlabelattributesexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-label-element/label-attributes-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-label-element/label-attributes-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-label-element/label-attributes-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,14 @@
</span><ins>+
+PASS A label element with a 'for' attribute should only be associated with a labelable element. 
+FAIL A label element not in a document can not label any element in the document. assert_not_equals: A label element not in a document should not label an element in a document. got disallowed value Element node &lt;input id=&quot;test1&quot;&gt;&lt;/input&gt;
+PASS The labeled control for a label element that has no 'for' attribute is the first labelable element which is a descendant of that label element. 
+PASS The 'for' attribute points to an inexistent id. 
+PASS A non-control follows by a control with same ID. 
+PASS The 'for' attribute is an empty string. 
+PASS A form control has multiple labels. 
+PASS A form control has no label 1. 
+PASS A form control has no label 2. 
+PASS A label's form attribute should return its form owner. 
+PASS Check that the labels property of a form control with no label returns a zero-length NodeList. 
+PASS A label's htmlFor attribute must reflect the for content attribute 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthelabelelementlabelattributeshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-label-element/label-attributes.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-label-element/label-attributes.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-label-element/label-attributes.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,128 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;HTML Test: The label element&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;form id=&quot;fm&quot; style=&quot;display:none&quot;&gt;
+  &lt;label id=&quot;lbl0&quot; for=&quot;test0&quot;&gt;&lt;/label&gt;
+  &lt;b id=&quot;test0&quot;&gt;&lt;/b&gt;
+
+  &lt;input id=&quot;test1&quot;&gt;&lt;/input&gt;
+
+  &lt;label id=&quot;lbl1&quot;&gt;
+    &lt;a id=&quot;test2&quot;&gt;&lt;/a&gt;
+    &lt;div&gt;&lt;input id=&quot;test3&quot;&gt;&lt;/div&gt;
+    &lt;input id=&quot;test4&quot;&gt;
+  &lt;/label&gt;
+
+  &lt;label id=&quot;lbl2&quot; for=&quot;testx&quot;&gt;
+    &lt;input id=&quot;test5&quot;&gt;
+  &lt;/label&gt;
+
+  &lt;label id=&quot;lbl3&quot; for=&quot;test6&quot;&gt;
+    &lt;b id=&quot;test6&quot;&gt;&lt;/b&gt;
+    &lt;input id=&quot;test6&quot; class=&quot;class1&quot;&gt;
+  &lt;/label&gt;
+
+  &lt;label id=&quot;lbl4&quot; for=&quot;&quot;&gt;
+    &lt;input id=&quot;&quot; class=&quot;class2&quot;&gt;
+  &lt;/label&gt;
+
+  &lt;label id=&quot;lbl5&quot; for=&quot;test7&quot;&gt;&lt;/label&gt;
+  &lt;input id=&quot;test7&quot;&gt;
+&lt;/form&gt;
+
+&lt;label id=&quot;lbl6&quot; for=&quot;test7&quot;&gt;&lt;/label&gt;
+
+&lt;script&gt;
+
+  //control attribute
+  test(function () {
+    assert_not_equals(document.getElementById(&quot;lbl0&quot;).control, document.getElementById(&quot;test0&quot;),
+                      &quot;An element that's not a labelable element can't be a label element's labeled control.&quot;);
+    assert_equals(document.getElementById(&quot;lbl0&quot;).control, null,
+                  &quot;A label element whose 'for' attribute doesn't reference any labelable element shouldn't have any labeled control.&quot;);
+  }, &quot;A label element with a 'for' attribute should only be associated with a labelable element.&quot;);
+
+  test(function () {
+    var label = document.createElement(&quot;label&quot;);
+    label.htmlFor = &quot;test1&quot;;
+    assert_not_equals(label.control, document.getElementById(&quot;test1&quot;),
+                      &quot;A label element not in a document should not label an element in a document.&quot;);
+    document.body.appendChild(label);
+    assert_equals(label.control, document.getElementById(&quot;test1&quot;));
+  }, &quot;A label element not in a document can not label any element in the document.&quot;);
+
+  test(function () {
+    assert_equals(document.getElementById(&quot;lbl1&quot;).control, document.getElementById(&quot;test3&quot;),
+                  &quot;The first labelable descendant of a label element should be its labeled control.&quot;);
+
+    var input = document.createElement(&quot;input&quot;);
+    document.getElementById(&quot;lbl1&quot;).insertBefore(input, document.getElementById(&quot;test2&quot;));
+    assert_equals(document.getElementById(&quot;lbl1&quot;).control, input,
+                  &quot;The first labelable descendant of a label element in tree order should be its labeled control.&quot;);
+  }, &quot;The labeled control for a label element that has no 'for' attribute is the first labelable element which is a descendant of that label element.&quot;);
+
+  test(function () {
+    assert_equals(document.getElementById(&quot;lbl2&quot;).control, null,
+                  &quot;The label's 'control' property should return null if its 'for' attribute points to an inexistent element.&quot;);
+  }, &quot;The 'for' attribute points to an inexistent id.&quot;);
+
+  test(function () {
+    assert_equals(document.getElementById(&quot;lbl3&quot;).control, null, &quot;The label should have no control associated.&quot;);
+    assert_equals(document.querySelector(&quot;.class1&quot;).labels.length, 0);
+  }, &quot;A non-control follows by a control with same ID.&quot;);
+
+  test(function () {
+    assert_equals(document.getElementById(&quot;lbl4&quot;).control, null,
+                  &quot;A label element with an empty 'for' attribute should not associate with anything.&quot;);
+  }, &quot;The 'for' attribute is an empty string.&quot;);
+
+  //labels attribute
+  test(function () {
+    var labels = document.getElementById(&quot;test7&quot;).labels;
+    assert_true(labels instanceof NodeList,
+                &quot;A form control's 'labels' property should be an instance of a NodeList.&quot;);
+    assert_equals(labels.length, 2,
+                  &quot;The number of labels associated with a form control should be the number of label elements for which it is a labeled control.&quot;);
+    assert_array_equals(labels, [document.getElementById(&quot;lbl5&quot;), document.getElementById(&quot;lbl6&quot;)],
+                        &quot;The labels for a form control should be returned in tree order.&quot;);
+
+    var newLabel = document.createElement(&quot;label&quot;);
+    newLabel.htmlFor = &quot;test7&quot;;
+    document.getElementById(&quot;fm&quot;).insertBefore(newLabel, document.getElementById(&quot;lbl0&quot;));
+    assert_array_equals(document.getElementById(&quot;test7&quot;).labels, [newLabel, document.getElementById(&quot;lbl5&quot;), document.getElementById(&quot;lbl6&quot;)],
+                        &quot;The labels for a form control should be returned in tree order.&quot;);
+  }, &quot;A form control has multiple labels.&quot;);
+
+  test(function () {
+    var labels = document.getElementById(&quot;test4&quot;).labels;
+    assert_true(labels instanceof NodeList, &quot;A form control's 'labels' property should be an instance of a NodeList.&quot;);
+    assert_equals(labels.length, 0, &quot;The number of labels should be 0 if the associated form control isn't referenced by any &lt;label&gt;.&quot;);
+  }, &quot;A form control has no label 1.&quot;);
+
+  test(function () {
+    assert_equals(document.getElementById(&quot;test5&quot;).labels.length, 0,
+                  &quot;The number of labels should be 0 if the form control has an ancestor label elment that the for attribute points to another control.&quot;);
+    assert_equals(document.getElementById(&quot;lbl2&quot;).control, null,
+                  &quot;The labeled cotrol should be associated with the control whose ID is equal to the value of the 'for' attribute.&quot;);
+  }, &quot;A form control has no label 2.&quot;);
+
+  // form attribute
+  test(function () {
+    assert_equals(document.getElementById(&quot;lbl0&quot;).form, document.getElementById(&quot;fm&quot;),
+                  &quot;The 'form' property for a label with a form owner should return the form owner.&quot;);
+  }, &quot;A label's form attribute should return its form owner.&quot;);
+
+  test(function () {
+    assert_equals(document.getElementById(&quot;lbl6&quot;).form, null,
+                  &quot;The 'form' property for a label without a form owner should return null.&quot;);
+  }, &quot;Check that the labels property of a form control with no label returns a zero-length NodeList.&quot;);
+
+  // htmlFor attribute
+  test(function () {
+    assert_equals(document.getElementById(&quot;lbl2&quot;).htmlFor, &quot;testx&quot;);
+  }, &quot;A label's htmlFor attribute must reflect the for content attribute&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthelabelelementlabelableelementsexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-label-element/labelable-elements-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-label-element/labelable-elements-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-label-element/labelable-elements-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,15 @@
</span><ins>+
+PASS Check if the output element is a labelable element 
+PASS Check if the progress element is a labelable element 
+PASS Check if the select element is a labelable element 
+PASS Check if the textarea element is a labelable form-element 
+PASS Check if the button element is a labelable element 
+PASS Check if the hidden input element is not a labelable element. 
+PASS Check if the input element in radio state is a labelable element 
+PASS Check if the keygen element is a labelable element 
+PASS Check if the meter element is a labelable element 
+PASS Check if the fieldset element is not a labelable element 
+PASS Check if the label element is not a labelable element 
+PASS Check if the object element is not a labelable element 
+PASS Check if the img element is not a labelable element 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthelabelelementlabelableelementshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-label-element/labelable-elements.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-label-element/labelable-elements.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-label-element/labelable-elements.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,96 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;HTML Test: labelable elements&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;form style=&quot;display:none&quot;&gt;
+  &lt;output id=&quot;testoutput&quot;&gt;&lt;/output&gt;
+  &lt;label id=&quot;lbl0&quot; for=&quot;testoutput&quot;&gt;&lt;/label&gt;
+  &lt;progress id=&quot;testprogress&quot;&gt;&lt;/progress&gt;
+  &lt;label id=&quot;lbl1&quot; for=&quot;testprogress&quot;&gt;&lt;/label&gt;
+  &lt;select id=&quot;testselect&quot;&gt;&lt;/select&gt;
+  &lt;label id=&quot;lbl2&quot; for=&quot;testselect&quot;&gt;&lt;/label&gt;
+  &lt;textarea id=&quot;testarea&quot;&gt;&lt;/textarea&gt;
+  &lt;label id=&quot;lbl3&quot; for=&quot;testarea&quot;&gt;&lt;/label&gt;
+  &lt;button id=&quot;testButton&quot;&gt;&lt;/button&gt;
+  &lt;label id=&quot;lbl4&quot; for=&quot;testButton&quot;&gt;&lt;/label&gt;
+  &lt;input type=&quot;hidden&quot; id=&quot;testHidden&quot;&gt;
+  &lt;label id=&quot;lbl5&quot; for=&quot;testHidden&quot;&gt;&lt;/label&gt;
+  &lt;input type=&quot;radio&quot; id=&quot;testRadio&quot;&gt;
+  &lt;label id=&quot;lbl6&quot; for=&quot;testRadio&quot;&gt;&lt;/label&gt;
+  &lt;keygen id=&quot;testkeygen&quot;&gt;
+  &lt;label id=&quot;lbl7&quot; for=&quot;testkeygen&quot;&gt;&lt;/label&gt;
+  &lt;meter id=&quot;testmeter&quot;&gt;&lt;/meter&gt;
+  &lt;label id=&quot;lbl8&quot; for=&quot;testmeter&quot;&gt;&lt;/label&gt;
+
+  &lt;fieldset id=&quot;testfieldset&quot;&gt;&lt;/fieldset&gt;
+  &lt;label id=&quot;lbl9&quot; for=&quot;testfieldset&quot;&gt;&lt;/label&gt;
+  &lt;label id=&quot;testlabel&quot;&gt;&lt;/label&gt;
+  &lt;label id=&quot;lbl10&quot; for=&quot;testlabel&quot;&gt;&lt;/label&gt;
+  &lt;object id=&quot;testobject&quot;&gt;&lt;/object&gt;
+  &lt;label id=&quot;lbl11&quot; for=&quot;testobject&quot;&gt;&lt;/label&gt;
+  &lt;img id=&quot;testimg&quot;&gt;
+  &lt;label id=&quot;lbl12&quot; for=&quot;testimg&quot;&gt;&lt;/label&gt;
+&lt;/form&gt;
+
+&lt;script&gt;
+
+test(function() {
+  assert_equals(document.getElementById(&quot;lbl0&quot;).control.id, &quot;testoutput&quot;, &quot;An output element should be labelable.&quot;);
+}, &quot;Check if the output element is a labelable element&quot;);
+
+test(function() {
+  assert_equals(document.getElementById(&quot;lbl1&quot;).control.id, &quot;testprogress&quot;, &quot;A progress element should be labelable.&quot;);
+}, &quot;Check if the progress element is a labelable element&quot;);
+
+test(function() {
+  assert_equals(document.getElementById(&quot;lbl2&quot;).control.id, &quot;testselect&quot;, &quot;A select element should be labelable.&quot;);
+}, &quot;Check if the select element is a labelable element&quot;);
+
+test(function() {
+  assert_equals(document.getElementById(&quot;lbl3&quot;).control.id, &quot;testarea&quot;, &quot;A textarea element should be labelable.&quot;);
+}, &quot;Check if the textarea element is a labelable form-element&quot;);
+
+test(function() {
+  assert_equals(document.getElementById(&quot;lbl4&quot;).control.id, &quot;testButton&quot;, &quot;A button element should be labelable.&quot;);
+}, &quot;Check if the button element is a labelable element&quot;);
+
+test(function() {
+  assert_equals(document.getElementById(&quot;lbl5&quot;).control, null, &quot;An input element in hidden state should not be labelable.&quot;);
+}, &quot;Check if the hidden input element is not a labelable element.&quot;);
+
+test(function() {
+  assert_equals(document.getElementById(&quot;lbl6&quot;).control.id, &quot;testRadio&quot;, &quot;An input  element in radio state should be labelable.&quot;);
+}, &quot;Check if the input element in radio state is a labelable element&quot;);
+
+test(function() {
+  assert_equals(document.getElementById(&quot;lbl7&quot;).control.id, &quot;testkeygen&quot;, &quot;A keygen element should be labelable.&quot;);
+}, &quot;Check if the keygen element is a labelable element&quot;);
+
+test(function() {
+  assert_equals(document.getElementById(&quot;lbl8&quot;).control.id, &quot;testmeter&quot;, &quot;A meter element should be labelable.&quot;);
+}, &quot;Check if the meter element is a labelable element&quot;);
+
+test(function() {
+  assert_not_equals(document.getElementById(&quot;lbl9&quot;).control, document.getElementById(&quot;testfieldset&quot;));
+  assert_equals(document.getElementById(&quot;lbl9&quot;).control, null, &quot;A fieldset element should not be labelable.&quot;);
+}, &quot;Check if the fieldset element is not a labelable element&quot;);
+
+test(function() {
+  assert_not_equals(document.getElementById(&quot;lbl9&quot;).control, document.getElementById(&quot;testlabel&quot;));
+  assert_equals(document.getElementById(&quot;lbl10&quot;).control, null, &quot;A label element should not be labelable.&quot;);
+}, &quot;Check if the label element is not a labelable element&quot;);
+
+test(function() {
+  assert_not_equals(document.getElementById(&quot;lbl9&quot;).control, document.getElementById(&quot;testobject&quot;));
+  assert_equals(document.getElementById(&quot;lbl11&quot;).control, null, &quot;An object element should not be labelable.&quot;);
+}, &quot;Check if the object element is not a labelable element&quot;);
+
+test(function() {
+  assert_not_equals(document.getElementById(&quot;lbl9&quot;).control, document.getElementById(&quot;testimg&quot;));
+  assert_equals(document.getElementById(&quot;lbl12&quot;).control, null, &quot;An img element should not be labelable.&quot;);
+}, &quot;Check if the img element is not a labelable element&quot;);
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthelabelelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-label-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-label-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-label-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-label-element/label-attributes.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-label-element/labelable-elements.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthelegendelementlegendformexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-legend-element/legend-form-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-legend-element/legend-form-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-legend-element/legend-form-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS Check if legend.form return null when legend has no fieldset element as its parent 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthelegendelementlegendformhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-legend-element/legend-form.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-legend-element/legend-form.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-legend-element/legend-form.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,23 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;HTMLLegendElement Test: form&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+
+&lt;div style=&quot;display:none&quot;&gt;
+  &lt;form id=&quot;testform&quot;&gt;
+    &lt;legend id=&quot;testlegend&quot;&gt;radio&lt;/legend&gt;
+  &lt;/form&gt;
+&lt;/div&gt;
+
+&lt;script&gt;
+
+test(function () {
+  var legendEle = document.getElementById(&quot;testlegend&quot;);
+  assert_equals(legendEle.form, null);
+}, &quot;Check if legend.form return null when legend has no fieldset element as its parent&quot;);
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthelegendelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-legend-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-legend-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-legend-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-legend-element/legend-form.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthemeterelementmeterexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-meter-element/meter-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-meter-element/meter-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-meter-element/meter-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,54 @@
</span><ins>+Meter Element
+
+
+PASS Default values 
+PASS Setting values to min, max, low, high and optimum 
+FAIL Invalid floating-point number values NotSupportedError: DOM Exception 9
+PASS max &lt; min 
+PASS value &lt; min 
+PASS value &gt; max 
+PASS low &lt; min 
+PASS low &gt; max 
+PASS high &lt; low 
+PASS high &gt; max 
+PASS optimum &lt; min 
+PASS optimum &gt; max 
+PASS value must be 0 when a string is given 
+PASS default value of min is 0 
+PASS If min is not specified and value is smaller than the default value of min (i.e. 0), the actual value must be 0 
+PASS default value of max is 1.0 
+PASS If max is not specified and value is larger than the default value of max (i.e. 1.0), the actual value must be 1.0 
+PASS If a value smaller than 1.0 is given to min and max is not specified, max must be the same value as its default value (i.e. 1.0) 
+PASS If a value smaller than 1.0 is given to min, max is not specified, and value is larger than the default value of max (i.e. 1.0), the actual value must be 1.0 
+PASS If a value larger than or equal to 1.0 is given to min and max is not specified, max must be the same value as min 
+PASS If a value larger than or equal to 1.0 is given to min and max is not specified, the actual value must be the same value as min 
+PASS If a value smaller than 0 is given to max and min is not specified, min must be be the same value as its default value (i.e. 0) 
+PASS If a value smaller than 0 is given to max and min is not specified, max must be be the same value as the default value of min (i.e. 0) 
+PASS If a value smaller than 0 is given to max and min is not specified, the actual value must be be the same value as the default value of min (i.e. 0) 
+PASS If a value larger than or equal to 0 is given to max and min is not specified, max must be the same value as the default value of min (i.e. 0) 
+PASS If a value larger than or equal to 0 is given to max and min is not specified, min must be the same value as its default value (i.e. 0) 
+PASS If a value larger than or equal to 0 is given to max and min is not specified, the actual value must be the same value as the default value of min (i.e. 0) 
+PASS min must be 0 when a string is given 
+PASS If a string is given to min and value is smaller than the default value of min (i.e. 0), the actual value must be 0 
+PASS max must be 1.0 when a string is given 
+PASS If a string is given to max and value is larger than the default value of min (i.e. 1.0), the actual value must be 1.0 
+PASS giving a string to low must not affect the actual value 
+PASS high must equal max when a string is given to high 
+PASS giving a string to high must not affect the actual value 
+PASS value must not be smaller than min 
+PASS value must not be larger than max 
+PASS default low and high values equal min and max, respectively 
+PASS default low and high values equal 0 and 1.0 respectively, if both low and high are not specified 
+PASS low must not be smaller than min 
+PASS low must not be larger than max 
+PASS high must not be smaller than min 
+PASS high must not be larger than max 
+PASS If min is not specified, low must not be smaller than default value of min (i.e. 0) 
+PASS If a value smaller than low is given to high, it must be set to the same value as low 
+PASS If max is not specified, high must not be larger than default value of max (i.e. 1.0) 
+PASS optimum smaller than min 
+PASS optimum (smaller than min) must not affect min and the actual value 
+PASS optimum smaller than max 
+PASS optimum (larger than max) must not affect max and the actual value 
+PASS default optimum value is the midpoint between min and max 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthemeterelementmeterhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-meter-element/meter.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-meter-element/meter.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-meter-element/meter.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,242 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;title&gt;The meter element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Tomoyuki SHIMIZU&quot; href=&quot;mailto:tomoyuki.labs@gmail.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-meter-element&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;h1&gt;Meter Element&lt;/h1&gt;
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+    &lt;div style=&quot;display: none;&quot;&gt;
+      &lt;meter id=&quot;meter_illegal_value&quot; value=&quot;abc&quot;&gt;&lt;/meter&gt;
+      &lt;meter id=&quot;meter_without_min&quot; value=&quot;-10&quot;&gt;&lt;/meter&gt;
+      &lt;meter id=&quot;meter_without_max&quot; value=&quot;10&quot;&gt;&lt;/meter&gt;
+      &lt;meter id=&quot;meter_min_without_max_1&quot; value=&quot;10&quot; min=&quot;-3.1&quot;&gt;&lt;/meter&gt;
+      &lt;meter id=&quot;meter_min_without_max_2&quot; value=&quot;210&quot; min=&quot;12.1&quot;&gt;&lt;/meter&gt;
+      &lt;meter id=&quot;meter_max_without_min_1&quot; value=&quot;-10&quot; max=&quot;-5342.55&quot;&gt;&lt;/meter&gt;
+      &lt;meter id=&quot;meter_max_without_min_2&quot; value=&quot;210&quot; max=&quot;-9.9&quot;&gt;&lt;/meter&gt;
+      &lt;meter id=&quot;meter_illegal_min&quot; value=&quot;-2&quot; min=&quot;hugfe&quot;&gt;&lt;/meter&gt;
+      &lt;meter id=&quot;meter_illegal_max&quot; value=&quot;2.4&quot; max=&quot;min&quot;&gt;&lt;/meter&gt;
+      &lt;meter id=&quot;meter_illegal_low_with_min&quot; value=&quot;-20&quot;  min=&quot;-10.3&quot; low=&quot;ahuge&quot;&gt;&lt;/meter&gt;
+      &lt;meter id=&quot;meter_illegal_high_with_max&quot; value=&quot;2.4&quot; high=&quot;old&quot; max=&quot;1.5&quot;&gt;&lt;/meter&gt;
+      &lt;meter id=&quot;meter_smaller_than_min&quot; value=&quot;-10&quot; min=&quot;4.5&quot;&gt;&lt;/meter&gt;
+      &lt;meter id=&quot;meter_larger_than_max&quot; value=&quot;2345.53&quot; max=&quot;52.02&quot;&gt;&lt;/meter&gt;
+      &lt;meter id=&quot;meter_default_low_and_high_1&quot; value=&quot;40&quot; min=&quot;-12.3&quot; max=&quot;3.4&quot;&gt;&lt;/meter&gt;
+      &lt;meter id=&quot;meter_default_low_and_high_2&quot; value=&quot;23&quot;&gt;&lt;/meter&gt;
+      &lt;meter id=&quot;meter_low_smaller_than_min&quot; value=&quot;-4&quot; min=&quot;12.3&quot; low=&quot;34&quot;&gt;&lt;/meter&gt;
+      &lt;meter id=&quot;meter_low_larger_than_max&quot; value=&quot;-1&quot; min=&quot;-50&quot; low=&quot;-5&quot; max=&quot;-34.5&quot;&gt;&lt;/meter&gt;
+      &lt;meter id=&quot;meter_high_smaller_than_min&quot; value=&quot;-4&quot; min=&quot;12.3&quot; high=&quot;34&quot;&gt;&lt;/meter&gt;
+      &lt;meter id=&quot;meter_high_larger_than_max&quot; value=&quot;-1&quot; min=&quot;-50&quot; high=&quot;-5&quot; max=&quot;-34.5&quot;&gt;&lt;/meter&gt;
+      &lt;meter id=&quot;meter_high_smaller_than_low&quot; value=&quot;-9&quot; min=&quot;-20&quot; low=&quot;-10.3&quot; high=&quot;-15.2&quot; max=&quot;-2&quot;&gt;&lt;/meter&gt;
+      &lt;meter id=&quot;meter_low_without_min&quot; value=&quot;-1&quot; low=&quot;-5&quot;&gt;&lt;/meter&gt;
+      &lt;meter id=&quot;meter_high_without_max&quot; value=&quot;50000&quot; high=&quot;4&quot;&gt;&lt;/meter&gt;
+      &lt;meter id=&quot;meter_optimum_smaller_than_min&quot; value=&quot;-8&quot; optimum=&quot;-4&quot;&gt;&lt;/meter&gt;
+      &lt;meter id=&quot;meter_optimum_larger_than_max&quot; value=&quot;324&quot; optimum=&quot;4.6&quot;&gt;&lt;/meter&gt;
+      &lt;meter id=&quot;meter_default_optimum&quot; value=&quot;10&quot; min=&quot;-132.35&quot; max=&quot;33.423&quot;&gt;&lt;/meter&gt;
+    &lt;/div&gt;
+    &lt;script&gt;
+      var meters = [
+        {value: 0, expectedValue: 0, expectedMin: 0, expectedMax: 1.0, expectedLow: 0, expectedHigh: 1.0, expectedOptimum: 0.5, testname: &quot;Default values&quot;},
+        {value: 3, expectedValue: 3, min: -10.1, expectedMin: -10.1, max: 10.1, expectedMax: 10.1, low: -9.1, expectedLow: -9.1, high: 9.1, expectedHigh: 9.1, optimum: 3, expectedOptimum: 3, testname: &quot;Setting values to min, max, low, high and optimum&quot;},
+        {value: &quot;foobar&quot;, expectedValue: 0, min: &quot;foobar&quot;, expectedMin: 0, max: &quot;foobar&quot;, expectedMax: 1.0, low: &quot;foobar&quot;, expectedLow: 0, high: &quot;foobar&quot;, expectedHigh: 1.0, optimum: &quot;foobar&quot;, expectedOptimum: 0.5, testname: &quot;Invalid floating-point number values&quot;},
+        {value: 0, expectedValue: 0, min: 0, expectedMin: 0, max: -1.0, expectedMax: 0, expectedLow: 0, expectedHigh: 0, expectedOptimum: 0, testname: &quot;max &lt; min&quot;},
+        {value: 0, expectedValue: 10, min: 10, expectedMin: 10, max: 20, expectedMax: 20, expectedLow: 10, expectedHigh: 20, expectedOptimum: 15, testname: &quot;value &lt; min&quot;},
+        {value: 30, expectedValue: 20, min: 10, expectedMin: 10, max: 20, expectedMax: 20, expectedLow: 10, expectedHigh: 20, expectedOptimum: 15, testname: &quot;value &gt; max&quot;},
+        {value: 15, expectedValue: 15, min: 10, expectedMin: 10, max: 20, expectedMax: 20, low: 5, expectedLow: 10, expectedHigh: 20, expectedOptimum: 15, testname: &quot;low &lt; min&quot;},
+        {value: 15, expectedValue: 15, min: 10, expectedMin: 10, max: 20, expectedMax: 20, low: 25, expectedLow: 20, expectedHigh: 20, expectedOptimum: 15, testname: &quot;low &gt; max&quot;},
+        {value: 15, expectedValue: 15, min: 10, expectedMin: 10, max: 20, expectedMax: 20, low: 12, expectedLow: 12, high: 10, expectedHigh: 12, expectedOptimum: 15, testname: &quot;high &lt; low&quot;},
+        {value: 15, expectedValue: 15, min: 10, expectedMin: 10, max: 20, expectedMax: 20, low: 10, expectedLow: 10, high: 22, expectedHigh: 20, expectedOptimum: 15, testname: &quot;high &gt; max&quot;},
+        {value: 15, expectedValue: 15, min: 10, expectedMin: 10, max: 20, expectedMax: 20, expectedLow: 10, expectedHigh: 20, optimum: 9, expectedOptimum: 10, testname: &quot;optimum &lt; min&quot;},
+        {value: 15, expectedValue: 15, min: 10, expectedMin: 10, max: 20, expectedMax: 20, expectedLow: 10, expectedHigh: 20, optimum: 21, expectedOptimum: 20, testname: &quot;optimum &gt; max&quot;}
+      ];
+      for (var i = 0; i &lt; meters.length; i++) {
+        var m = meters[i];
+        test(function() {
+          var meter = document.createElement(&quot;meter&quot;);
+          meter.value = m.value;
+          if (m.min) meter.min= m.min;
+          if (m.max) meter.max = m.max;
+          if (m.low) meter.low = m.low;
+          if (m.high) meter.high = m.high;
+          if (m.optimum) meter.optimum = m.optimum;
+          assert_equals(meter.value, m.expectedValue, &quot;meter value&quot;);
+          assert_equals(meter.min, m.expectedMin, &quot;min value&quot;);
+          assert_equals(meter.max, m.expectedMax, &quot;max value&quot;);
+          assert_equals(meter.low, m.expectedLow, &quot;low value&quot;);
+          assert_equals(meter.high, m.expectedHigh, &quot;high value&quot;);
+          assert_equals(meter.optimum, m.expectedOptimum, &quot;optimum value&quot;);
+        }, m.testname);
+      }
+
+    &lt;/script&gt;
+    &lt;script type=&quot;text/javascript&quot;&gt;
+      test(function() {
+          assert_equals(document.getElementById('meter_illegal_value').value, 0);
+        }, &quot;value must be 0 when a string is given&quot;);
+
+      test(function() {
+          assert_equals(document.getElementById('meter_without_min').min, 0);
+        }, &quot;default value of min is 0&quot;);
+
+      test(function() {
+          assert_equals(document.getElementById('meter_without_min').value, 0);
+        }, &quot;If min is not specified and value is smaller than the default value of min (i.e. 0), the actual value must be 0&quot;);
+
+      test(function() {
+          assert_equals(document.getElementById('meter_without_max').max, 1.0);
+        }, &quot;default value of max is 1.0&quot;);
+
+      test(function() {
+          assert_equals(document.getElementById('meter_without_max').value, 1.0);
+        }, &quot;If max is not specified and value is larger than the default value of max (i.e. 1.0), the actual value must be 1.0&quot;);
+
+      test(function() {
+          assert_equals(document.getElementById('meter_min_without_max_1').max, 1.0);
+        }, &quot;If a value smaller than 1.0 is given to min and max is not specified, max must be the same value as its default value (i.e. 1.0)&quot;);
+
+      test(function() {
+          assert_equals(document.getElementById('meter_min_without_max_1').value, 1.0);
+        }, &quot;If a value smaller than 1.0 is given to min, max is not specified, and value is larger than the default value of max (i.e. 1.0), the actual value must be 1.0&quot;);
+
+      test(function() {
+          assert_equals(document.getElementById('meter_min_without_max_2').max, 12.1);
+        }, &quot;If a value larger than or equal to 1.0 is given to min and max is not specified, max must be the same value as min&quot;);
+
+      test(function() {
+          assert_equals(document.getElementById('meter_min_without_max_2').value, 12.1);
+        }, &quot;If a value larger than or equal to 1.0 is given to min and max is not specified, the actual value must be the same value as min&quot;);
+
+      test(function() {
+          assert_equals(document.getElementById('meter_max_without_min_1').min, 0);
+        }, &quot;If a value smaller than 0 is given to max and min is not specified, min must be be the same value as its default value (i.e. 0)&quot;);
+
+      test(function() {
+          assert_equals(document.getElementById('meter_max_without_min_1').max, 0);
+        }, &quot;If a value smaller than 0 is given to max and min is not specified, max must be be the same value as the default value of min (i.e. 0)&quot;);
+
+      test(function() {
+          assert_equals(document.getElementById('meter_max_without_min_1').value, 0);
+        }, &quot;If a value smaller than 0 is given to max and min is not specified, the actual value must be be the same value as the default value of min (i.e. 0)&quot;);
+
+      test(function() {
+          assert_equals(document.getElementById('meter_max_without_min_2').max, 0);
+        }, &quot;If a value larger than or equal to 0 is given to max and min is not specified, max must be the same value as the default value of min (i.e. 0)&quot;);
+
+      test(function() {
+          assert_equals(document.getElementById('meter_max_without_min_2').min, 0);
+        }, &quot;If a value larger than or equal to 0 is given to max and min is not specified, min must be the same value as its default value (i.e. 0)&quot;);
+
+      test(function() {
+          assert_equals(document.getElementById('meter_max_without_min_2').value, 0);
+        }, &quot;If a value larger than or equal to 0 is given to max and min is not specified, the actual value must be the same value as the default value of min (i.e. 0)&quot;);
+
+      test(function() {
+          assert_equals(document.getElementById('meter_illegal_min').min, 0);
+        }, &quot;min must be 0 when a string is given&quot;);
+
+      test(function() {
+          assert_equals(document.getElementById('meter_illegal_min').value, 0);
+        }, &quot;If a string is given to min and value is smaller than the default value of min (i.e. 0), the actual value must be 0&quot;);
+
+      test(function() {
+          assert_equals(document.getElementById('meter_illegal_max').max, 1.0);
+        }, &quot;max must be 1.0 when a string is given&quot;);
+
+      test(function() {
+          assert_equals(document.getElementById('meter_illegal_max').value, 1.0);
+        }, &quot;If a string is given to max and value is larger than the default value of min (i.e. 1.0), the actual value must be 1.0&quot;);
+
+      test(function() {
+          assert_equals(document.getElementById('meter_illegal_low_with_min').low, -10.3);
+        }, &quot;giving a string to low must not affect the actual value&quot;);
+
+      test(function() {
+          assert_equals(document.getElementById('meter_illegal_high_with_max').high, 1.5);
+        }, &quot;high must equal max when a string is given to high&quot;);
+
+      test(function() {
+          assert_equals(document.getElementById('meter_illegal_high_with_max').value, 1.5);
+        }, &quot;giving a string to high must not affect the actual value&quot;);
+
+      test(function() {
+          assert_equals(document.getElementById('meter_smaller_than_min').value, 4.5);
+        }, &quot;value must not be smaller than min&quot;);
+
+      test(function() {
+          assert_equals(document.getElementById('meter_larger_than_max').value, 52.02);
+        }, &quot;value must not be larger than max&quot;);
+
+      test(function() {
+          var e = document.getElementById('meter_default_low_and_high_1');
+          assert_array_equals([e.low,e.high], [-12.3,3.4]);
+        }, &quot;default low and high values equal min and max, respectively&quot;);
+
+      test(function() {
+          var e = document.getElementById('meter_default_low_and_high_2');
+          assert_array_equals([e.low,e.high], [0,1.0]);
+        }, &quot;default low and high values equal 0 and 1.0 respectively, if both low and high are not specified&quot;);
+
+      test(function() {
+          var e = document.getElementById('meter_low_smaller_than_min');
+          assert_array_equals([e.low,e.min,e.value], [12.3,12.3,12.3]);
+        }, &quot;low must not be smaller than min&quot;);
+
+      test(function() {
+          var e = document.getElementById('meter_low_larger_than_max');
+          assert_array_equals([e.low,e.max,e.value], [-34.5,-34.5,-34.5]);
+        }, &quot;low must not be larger than max&quot;);
+
+      test(function() {
+          var e = document.getElementById('meter_high_smaller_than_min');
+          assert_array_equals([e.high,e.min,e.value], [12.3,12.3,12.3]);
+        }, &quot;high must not be smaller than min&quot;);
+
+      test(function() {
+          var e = document.getElementById('meter_high_larger_than_max');
+          assert_array_equals([e.high,e.max,e.value], [-34.5,-34.5,-34.5]);
+        }, &quot;high must not be larger than max&quot;);
+
+      test(function() {
+          var e = document.getElementById('meter_low_without_min');
+          assert_array_equals([e.low,e.min,e.value], [0,0,0]);
+        }, &quot;If min is not specified, low must not be smaller than default value of min (i.e. 0)&quot;);
+
+      test(function() {
+          var e = document.getElementById('meter_high_smaller_than_low');
+          assert_array_equals([e.low,e.high,e.value], [-10.3,-10.3,-9]);
+        }, &quot;If a value smaller than low is given to high, it must be set to the same value as low&quot;);
+
+      test(function() {
+          var e = document.getElementById('meter_high_without_max');
+          assert_array_equals([e.high,e.value], [1.0,1.0]);
+        }, &quot;If max is not specified, high must not be larger than default value of max (i.e. 1.0)&quot;);
+
+      test(function() {
+          assert_equals(document.getElementById('meter_optimum_smaller_than_min').optimum, 0);
+        }, &quot;optimum smaller than min&quot;);
+
+      test(function() {
+          var e = document.getElementById('meter_optimum_smaller_than_min');
+          assert_array_equals([e.min,e.value], [0,0]);
+        }, &quot;optimum (smaller than min) must not affect min and the actual value&quot;);
+
+      test(function() {
+          assert_equals(document.getElementById('meter_optimum_larger_than_max').optimum, 1.0);
+        }, &quot;optimum smaller than max&quot;);
+
+      test(function() {
+          var e = document.getElementById('meter_optimum_larger_than_max');
+          assert_array_equals([e.max,e.value], [1.0,1.0]);
+        }, &quot;optimum (larger than max) must not affect max and the actual value&quot;);
+
+      test(function() {
+          var e = document.getElementById('meter_default_optimum');
+          assert_equals(e.optimum, (e.max + e.min) / 2);
+        }, &quot;default optimum value is the midpoint between min and max&quot;);
+    &lt;/script&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthemeterelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-meter-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-meter-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-meter-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-meter-element/meter.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptionlabelexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-label-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-label-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-label-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,14 @@
</span><ins>+
+PASS No children, no label 
+PASS No children, empty label 
+PASS No children, label 
+PASS No children, namespaced label 
+PASS Single child, no label 
+PASS Single child, empty label 
+PASS Single child, label 
+PASS Single child, namespaced label 
+PASS Two children, no label 
+PASS Two children, empty label 
+PASS Two children, label 
+PASS Two children, namespaced label 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptionlabelvaluejs"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-label-value.js (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-label-value.js                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-label-value.js        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,82 @@
</span><ins>+function test_option(member) {
+  test(function() {
+    var option = document.createElement(&quot;option&quot;);
+    assert_equals(option[member], &quot;&quot;);
+  }, &quot;No children, no &quot; + member);
+
+  test(function() {
+    var option = document.createElement(&quot;option&quot;);
+    option.setAttribute(member, &quot;&quot;)
+    assert_equals(option[member], &quot;&quot;);
+  }, &quot;No children, empty &quot; + member);
+
+  test(function() {
+    var option = document.createElement(&quot;option&quot;);
+    option.setAttribute(member, member)
+    assert_equals(option[member], member);
+  }, &quot;No children, &quot; + member);
+
+  test(function() {
+    var option = document.createElement(&quot;option&quot;);
+    option.setAttributeNS(&quot;http://www.example.com/&quot;, member, member)
+    assert_equals(option[member], &quot;&quot;);
+  }, &quot;No children, namespaced &quot; + member);
+
+  test(function() {
+    var option = document.createElement(&quot;option&quot;);
+    option.appendChild(document.createTextNode(&quot; child &quot;));
+    assert_equals(option[member], &quot;child&quot;);
+  }, &quot;Single child, no &quot; + member);
+
+  test(function() {
+    var option = document.createElement(&quot;option&quot;);
+    option.appendChild(document.createTextNode(&quot; child &quot;));
+    option.setAttribute(member, &quot;&quot;)
+    assert_equals(option[member], &quot;&quot;);
+  }, &quot;Single child, empty &quot; + member);
+
+  test(function() {
+    var option = document.createElement(&quot;option&quot;);
+    option.appendChild(document.createTextNode(&quot; child &quot;));
+    option.setAttribute(member, member)
+    assert_equals(option[member], member);
+  }, &quot;Single child, &quot; + member);
+
+  test(function() {
+    var option = document.createElement(&quot;option&quot;);
+    option.appendChild(document.createTextNode(&quot; child &quot;));
+    option.setAttributeNS(&quot;http://www.example.com/&quot;, member, member)
+    assert_equals(option[member], &quot;child&quot;);
+  }, &quot;Single child, namespaced &quot; + member);
+
+  test(function() {
+    var option = document.createElement(&quot;option&quot;);
+    option.appendChild(document.createTextNode(&quot; child &quot;));
+    option.appendChild(document.createTextNode(&quot; node &quot;));
+    assert_equals(option[member], &quot;child node&quot;);
+  }, &quot;Two children, no &quot; + member);
+
+  test(function() {
+    var option = document.createElement(&quot;option&quot;);
+    option.appendChild(document.createTextNode(&quot; child &quot;));
+    option.appendChild(document.createTextNode(&quot; node &quot;));
+    option.setAttribute(member, &quot;&quot;)
+    assert_equals(option[member], &quot;&quot;);
+  }, &quot;Two children, empty &quot; + member);
+
+  test(function() {
+    var option = document.createElement(&quot;option&quot;);
+    option.appendChild(document.createTextNode(&quot; child &quot;));
+    option.appendChild(document.createTextNode(&quot; node &quot;));
+    option.setAttribute(member, member)
+    assert_equals(option[member], member);
+  }, &quot;Two children, &quot; + member);
+
+  test(function() {
+    var option = document.createElement(&quot;option&quot;);
+    option.appendChild(document.createTextNode(&quot; child &quot;));
+    option.appendChild(document.createTextNode(&quot; node &quot;));
+    option.setAttributeNS(&quot;http://www.example.com/&quot;, member, member)
+    assert_equals(option[member], &quot;child node&quot;);
+  }, &quot;Two children, namespaced &quot; + member);
+}
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptionlabelhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-label.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-label.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-label.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,12 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;HTMLOptionElement.label&lt;/title&gt;
+&lt;link rel=author title=Ms2ger href=&quot;mailto:Ms2ger@gmail.com&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#dom-option-label&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=option-label-value.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test_option(&quot;label&quot;)
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptiontextbackslashexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-backslash-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-backslash-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-backslash-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+
+FAIL Test for the backslash sign in option.text assert_equals: expected &quot;\\&quot; but got &quot;¥&quot;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptiontextbackslashhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-backslash.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-backslash.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-backslash.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,15 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;meta charset=EUC-JP&gt;
+&lt;title&gt;Test for the backslash sign in option.text&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;select id=test&gt;&lt;option&gt;\&lt;/option&gt;&lt;/select&gt;
+&lt;script&gt;
+test(function() {
+  var select = document.getElementById(&quot;test&quot;);
+  var option = select.firstChild;
+  assert_equals(option.text, &quot;\\&quot;);
+  assert_equals(option.textContent, &quot;\\&quot;);
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptiontextlabelexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-label-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-label-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-label-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+FAIL Option with non-empty label. assert_equals: expected &quot;text&quot; but got &quot;label&quot;
+PASS Option with empty label. 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptiontextlabelhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-label.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-label.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-label.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,23 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;HTMLOptionElement.text&lt;/title&gt;
+&lt;link rel=author title=Ms2ger href=&quot;mailto:Ms2ger@gmail.com&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#dom-option-text&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  var option = document.createElement(&quot;option&quot;);
+  option.setAttribute(&quot;label&quot;, &quot;label&quot;);
+  option.textContent = &quot;text&quot;;
+  assert_equals(option.text, &quot;text&quot;);
+}, &quot;Option with non-empty label.&quot;);
+
+test(function() {
+  var option = document.createElement(&quot;option&quot;);
+  option.setAttribute(&quot;label&quot;, &quot;&quot;);
+  option.textContent = &quot;text&quot;;
+  assert_equals(option.text, &quot;text&quot;);
+}, &quot;Option with empty label.&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptiontextrecurseexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-recurse-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-recurse-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-recurse-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,11 @@
</span><ins>+
+PASS option.text should recurse 
+PASS option.text should not recurse into HTML script elements 
+PASS option.text should not recurse into SVG script elements 
+PASS option.text should recurse into MathML script elements 
+PASS option.text should recurse into null script elements 
+PASS option.text should work if a child of the option ends with a script 
+PASS option.text should work if the option is in an HTML script element 
+PASS option.text should work if the option is in an SVG script element 
+PASS option.text should work if the option is in a MathML script element 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptiontextrecursehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-recurse.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-recurse.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-recurse.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,77 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;HTMLOptionElement.text&lt;/title&gt;
+&lt;link rel=author title=Ms2ger href=&quot;mailto:Ms2ger@gmail.com&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#dom-option-text&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  var option = document.createElement(&quot;option&quot;);
+  option.appendChild(document.createElement(&quot;font&quot;))
+        .appendChild(document.createTextNode(&quot; font &quot;));
+  assert_equals(option.text, &quot;font&quot;);
+}, &quot;option.text should recurse&quot;);
+
+test(function() {
+  var option = document.createElement(&quot;option&quot;);
+  option.appendChild(document.createTextNode(&quot; before &quot;));
+  option.appendChild(document.createElement(&quot;script&quot;))
+        .appendChild(document.createTextNode(&quot; script &quot;));
+  option.appendChild(document.createTextNode(&quot; after &quot;));
+  assert_equals(option.text, &quot;before after&quot;);
+}, &quot;option.text should not recurse into HTML script elements&quot;);
+test(function() {
+  var option = document.createElement(&quot;option&quot;);
+  option.appendChild(document.createTextNode(&quot; before &quot;));
+  option.appendChild(document.createElementNS(&quot;http://www.w3.org/2000/svg&quot;, &quot;script&quot;))
+        .appendChild(document.createTextNode(&quot; script &quot;));
+  option.appendChild(document.createTextNode(&quot; after &quot;));
+  assert_equals(option.text, &quot;before after&quot;);
+}, &quot;option.text should not recurse into SVG script elements&quot;);
+test(function() {
+  var option = document.createElement(&quot;option&quot;);
+  option.appendChild(document.createTextNode(&quot; before &quot;));
+  option.appendChild(document.createElementNS(&quot;http://www.w3.org/1998/Math/MathML&quot;, &quot;script&quot;))
+        .appendChild(document.createTextNode(&quot; script &quot;));
+  option.appendChild(document.createTextNode(&quot; after &quot;));
+  assert_equals(option.text, &quot;before script after&quot;);
+}, &quot;option.text should recurse into MathML script elements&quot;);
+test(function() {
+  var option = document.createElement(&quot;option&quot;);
+  option.appendChild(document.createTextNode(&quot; before &quot;));
+  option.appendChild(document.createElementNS(null, &quot;script&quot;))
+        .appendChild(document.createTextNode(&quot; script &quot;));
+  option.appendChild(document.createTextNode(&quot; after &quot;));
+  assert_equals(option.text, &quot;before script after&quot;);
+}, &quot;option.text should recurse into null script elements&quot;);
+test(function() {
+  var option = document.createElement(&quot;option&quot;);
+  var span = option.appendChild(document.createElement(&quot;span&quot;));
+  span.appendChild(document.createTextNode(&quot; Some &quot;));
+  span.appendChild(document.createElement(&quot;script&quot;))
+      .appendChild(document.createTextNode(&quot; script &quot;));
+  option.appendChild(document.createTextNode(&quot; Text &quot;));
+  assert_equals(option.text, &quot;Some Text&quot;);
+}, &quot;option.text should work if a child of the option ends with a script&quot;);
+
+test(function() {
+  var script = document.createElement(&quot;script&quot;);
+  var option = script.appendChild(document.createElement(&quot;option&quot;));
+  option.appendChild(document.createTextNode(&quot;text&quot;));
+  assert_equals(option.text, &quot;text&quot;);
+}, &quot;option.text should work if the option is in an HTML script element&quot;);
+test(function() {
+  var script = document.createElementNS(&quot;http://www.w3.org/2000/svg&quot;, &quot;script&quot;);
+  var option = script.appendChild(document.createElement(&quot;option&quot;));
+  option.appendChild(document.createTextNode(&quot;text&quot;));
+  assert_equals(option.text, &quot;text&quot;);
+}, &quot;option.text should work if the option is in an SVG script element&quot;);
+test(function() {
+  var script = document.createElementNS(&quot;http://www.w3.org/1998/Math/MathML&quot;, &quot;script&quot;);
+  var option = script.appendChild(document.createElement(&quot;option&quot;));
+  option.appendChild(document.createTextNode(&quot;text&quot;));
+  assert_equals(option.text, &quot;text&quot;);
+}, &quot;option.text should work if the option is in a MathML script element&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptiontextspacesexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-spaces-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-spaces-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-spaces-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,52 @@
</span><ins>+
+PASS HTMLOptionElement.text 
+PASS option.text should strip leading space characters (&quot; &quot;) 
+PASS option.text should strip leading space characters (&quot;\t&quot;) 
+PASS option.text should strip leading space characters (&quot;\n&quot;) 
+PASS option.text should strip leading space characters (&quot;\f&quot;) 
+PASS option.text should strip leading space characters (&quot;\r&quot;) 
+PASS option.text should strip trailing space characters (&quot; &quot;) 
+PASS option.text should strip trailing space characters (&quot;\t&quot;) 
+PASS option.text should strip trailing space characters (&quot;\n&quot;) 
+PASS option.text should strip trailing space characters (&quot;\f&quot;) 
+PASS option.text should strip trailing space characters (&quot;\r&quot;) 
+PASS option.text should strip leading and trailing space characters (&quot; &quot;) 
+PASS option.text should strip leading and trailing space characters (&quot;\t&quot;) 
+PASS option.text should strip leading and trailing space characters (&quot;\n&quot;) 
+PASS option.text should strip leading and trailing space characters (&quot;\f&quot;) 
+PASS option.text should strip leading and trailing space characters (&quot;\r&quot;) 
+PASS option.text should replace single internal space characters (&quot; &quot;) 
+PASS option.text should replace single internal space characters (&quot;\t&quot;) 
+PASS option.text should replace single internal space characters (&quot;\n&quot;) 
+PASS option.text should replace single internal space characters (&quot;\f&quot;) 
+PASS option.text should replace single internal space characters (&quot;\r&quot;) 
+PASS option.text should replace multiple internal space characters (&quot; &quot;, &quot; &quot;) 
+PASS option.text should replace multiple internal space characters (&quot; &quot;, &quot;\t&quot;) 
+PASS option.text should replace multiple internal space characters (&quot; &quot;, &quot;\n&quot;) 
+PASS option.text should replace multiple internal space characters (&quot; &quot;, &quot;\f&quot;) 
+PASS option.text should replace multiple internal space characters (&quot; &quot;, &quot;\r&quot;) 
+PASS option.text should replace multiple internal space characters (&quot;\t&quot;, &quot; &quot;) 
+PASS option.text should replace multiple internal space characters (&quot;\t&quot;, &quot;\t&quot;) 
+PASS option.text should replace multiple internal space characters (&quot;\t&quot;, &quot;\n&quot;) 
+PASS option.text should replace multiple internal space characters (&quot;\t&quot;, &quot;\f&quot;) 
+PASS option.text should replace multiple internal space characters (&quot;\t&quot;, &quot;\r&quot;) 
+PASS option.text should replace multiple internal space characters (&quot;\n&quot;, &quot; &quot;) 
+PASS option.text should replace multiple internal space characters (&quot;\n&quot;, &quot;\t&quot;) 
+PASS option.text should replace multiple internal space characters (&quot;\n&quot;, &quot;\n&quot;) 
+PASS option.text should replace multiple internal space characters (&quot;\n&quot;, &quot;\f&quot;) 
+PASS option.text should replace multiple internal space characters (&quot;\n&quot;, &quot;\r&quot;) 
+PASS option.text should replace multiple internal space characters (&quot;\f&quot;, &quot; &quot;) 
+PASS option.text should replace multiple internal space characters (&quot;\f&quot;, &quot;\t&quot;) 
+PASS option.text should replace multiple internal space characters (&quot;\f&quot;, &quot;\n&quot;) 
+PASS option.text should replace multiple internal space characters (&quot;\f&quot;, &quot;\f&quot;) 
+PASS option.text should replace multiple internal space characters (&quot;\f&quot;, &quot;\r&quot;) 
+PASS option.text should replace multiple internal space characters (&quot;\r&quot;, &quot; &quot;) 
+PASS option.text should replace multiple internal space characters (&quot;\r&quot;, &quot;\t&quot;) 
+PASS option.text should replace multiple internal space characters (&quot;\r&quot;, &quot;\n&quot;) 
+PASS option.text should replace multiple internal space characters (&quot;\r&quot;, &quot;\f&quot;) 
+PASS option.text should replace multiple internal space characters (&quot;\r&quot;, &quot;\r&quot;) 
+PASS option.text should leave leading NBSP alone. 
+PASS option.text should leave trailing NBSP alone. 
+PASS option.text should leave a single internal NBSP alone. 
+PASS option.text should leave two internal NBSPs alone. 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptiontextspaceshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-spaces.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-spaces.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-spaces.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,75 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;HTMLOptionElement.text&lt;/title&gt;
+&lt;link rel=author title=Ms2ger href=&quot;mailto:Ms2ger@gmail.com&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#dom-option-text&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  var spaces = [&quot;\u0020&quot;, &quot;\u0009&quot;, &quot;\u000A&quot;, &quot;\u000C&quot;, &quot;\u000D&quot;];
+  spaces.forEach(function(space) {
+    test(function() {
+      var option = document.createElement(&quot;option&quot;);
+      option.textContent = space + &quot;text&quot;;
+      assert_equals(option.text, &quot;text&quot;);
+    }, &quot;option.text should strip leading space characters (&quot; +
+        format_value(space) + &quot;)&quot;);
+  });
+  spaces.forEach(function(space) {
+    test(function() {
+      var option = document.createElement(&quot;option&quot;);
+      option.textContent = &quot;text&quot; + space;
+      assert_equals(option.text, &quot;text&quot;);
+    }, &quot;option.text should strip trailing space characters (&quot; +
+        format_value(space) + &quot;)&quot;);
+  });
+  spaces.forEach(function(space) {
+    test(function() {
+      var option = document.createElement(&quot;option&quot;);
+      option.textContent = space + &quot;text&quot; + space;
+      assert_equals(option.text, &quot;text&quot;);
+    }, &quot;option.text should strip leading and trailing space characters (&quot; +
+        format_value(space) + &quot;)&quot;);
+  });
+  spaces.forEach(function(space) {
+    test(function() {
+      var option = document.createElement(&quot;option&quot;);
+      option.textContent = &quot;before&quot; + space + &quot;after&quot;;
+      assert_equals(option.text, &quot;before after&quot;);
+    }, &quot;option.text should replace single internal space characters (&quot; +
+        format_value(space) + &quot;)&quot;);
+  });
+  spaces.forEach(function(space1) {
+    spaces.forEach(function(space2) {
+      test(function() {
+        var option = document.createElement(&quot;option&quot;);
+        option.textContent = &quot;before&quot; + space1 + space2 + &quot;after&quot;;
+        assert_equals(option.text, &quot;before after&quot;);
+      }, &quot;option.text should replace multiple internal space characters (&quot; +
+          format_value(space1) + &quot;, &quot; + format_value(space2) + &quot;)&quot;);
+    });
+  });
+  test(function() {
+    var option = document.createElement(&quot;option&quot;);
+    option.textContent = &quot;\u00a0text&quot;;
+    assert_equals(option.text, &quot;\u00a0text&quot;);
+  }, &quot;option.text should leave leading NBSP alone.&quot;);
+  test(function() {
+    var option = document.createElement(&quot;option&quot;);
+    option.textContent = &quot;text\u00a0&quot;;
+    assert_equals(option.text, &quot;text\u00a0&quot;);
+  }, &quot;option.text should leave trailing NBSP alone.&quot;);
+  test(function() {
+    var option = document.createElement(&quot;option&quot;);
+    option.textContent = &quot;before\u00a0after&quot;;
+    assert_equals(option.text, &quot;before\u00a0after&quot;);
+  }, &quot;option.text should leave a single internal NBSP alone.&quot;);
+  test(function() {
+    var option = document.createElement(&quot;option&quot;);
+    option.textContent = &quot;before\u00a0\u00a0after&quot;;
+    assert_equals(option.text, &quot;before\u00a0\u00a0after&quot;);
+  }, &quot;option.text should leave two internal NBSPs alone.&quot;);
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptionvalueexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-value-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-value-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-value-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,14 @@
</span><ins>+
+PASS No children, no value 
+PASS No children, empty value 
+PASS No children, value 
+PASS No children, namespaced value 
+PASS Single child, no value 
+PASS Single child, empty value 
+PASS Single child, value 
+PASS Single child, namespaced value 
+PASS Two children, no value 
+PASS Two children, empty value 
+PASS Two children, value 
+PASS Two children, namespaced value 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementoptionvaluehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-value.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-value.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-value.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,12 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;HTMLOptionElement.value&lt;/title&gt;
+&lt;link rel=author title=Ms2ger href=&quot;mailto:Ms2ger@gmail.com&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#dom-option-label&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=option-label-value.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test_option(&quot;value&quot;)
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheoptionelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,24 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-label-value.js
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-label.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-backslash.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-label.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-recurse.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-text-spaces.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-option-element/option-value.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheoutputelementoutputexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-output-element/output-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-output-element/output-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-output-element/output-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+20
+
+PASS output value and defaultValue 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheoutputelementoutputhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-output-element/output.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-output-element/output.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-output-element/output.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,39 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;The output element&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#the-output-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;output id=output&gt;&lt;/output&gt;
+&lt;script&gt;
+  var output = document.getElementById(&quot;output&quot;);
+
+  test(function(){
+    assert_equals(output.type, &quot;output&quot;, &quot;type must return the string 'output'&quot;);
+    assert_equals(output.textContent, &quot;&quot;, &quot;textContent is empty&quot;);
+    assert_equals(output.value, &quot;&quot;, &quot;value should be empty&quot;);
+    assert_equals(output.defaultValue, &quot;&quot;, &quot;defaultValue should be empty&quot;);
+
+    output.textContent=&quot;5&quot;;
+    assert_equals(output.value, &quot;5&quot;, &quot;textContent is set to 5: value is updated&quot;);
+    assert_equals(output.textContent, &quot;5&quot;, &quot;textContent is set to 5&quot;);
+    assert_equals(output.defaultValue, &quot;5&quot;, &quot;textContent is set to 5: defaultValue is updated&quot;);
+
+    output.defaultValue=&quot;10&quot;; // value mode flag is in &quot;default&quot; mode. Setting defaultValue should set textContent as well
+    assert_equals(output.value, &quot;10&quot;, &quot;defaultValue is set to 10: value is updated&quot;);
+    assert_equals(output.textContent, &quot;10&quot;, &quot;defaultValue is set to 10: textContent is updated&quot;);
+    assert_equals(output.defaultValue, &quot;10&quot;, &quot;defaultValue is set to 10&quot;);
+
+    output.value=&quot;20&quot;;  // set the value mode flag to &quot;value&quot;: default value remains unchanged
+    assert_equals(output.value, &quot;20&quot;, &quot;value is set to 20&quot;);
+    assert_equals(output.textContent, &quot;20&quot;, &quot;value is set to 20: textContent is updated&quot;);
+    assert_equals(output.defaultValue, &quot;10&quot;, &quot;value is set to 20: defaultValue remains unchanged&quot;);
+
+    output.defaultValue=&quot;15&quot;; // value mode flag is in &quot;value&quot; mode. textContent remains unchanged when setting defaultValue
+    assert_equals(output.value, &quot;20&quot;, &quot;defaultValue is set to 15: value remains unchanged&quot;);
+    assert_equals(output.textContent, &quot;20&quot;, &quot;defaultValue is set to 15: textContent remains unchanged&quot;);
+    assert_equals(output.defaultValue, &quot;15&quot;, &quot;defaultValue is set to 15&quot;);
+  }, &quot;output value and defaultValue&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheoutputelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-output-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-output-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-output-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-output-element/output.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheprogresselementprogress2expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-progress-element/progress-2-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-progress-element/progress-2-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-progress-element/progress-2-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+
+PASS progress position equals -1 
+PASS progress value equals 0 
+PASS progress value equals .5 
+PASS progress position equals 0 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheprogresselementprogress2html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-progress-element/progress-2.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-progress-element/progress-2.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-progress-element/progress-2.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,34 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;title&gt;Progress Element Tests&lt;/title&gt;
+    &lt;meta http-equiv=&quot;content-type&quot; content=&quot;text/html; charset=UTF-8&quot; /&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Microsoft&quot; href=&quot;http://www.microsoft.com&quot; /&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-progress-element&quot; /&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+    &lt;progress id=&quot;p00&quot; style=&quot;display: none&quot;&gt;&lt;/progress&gt;
+    &lt;progress id=&quot;p01&quot; max=&quot;5.5&quot; value=&quot;.5&quot; style=&quot;display: none&quot;&gt;&lt;/progress&gt;
+    &lt;script&gt;
+      test(function () {
+        assert_equals(document.getElementById('p00').position, -1);
+      }, &quot;progress position equals -1&quot;);
+
+      test(function () {
+        assert_equals(document.getElementById('p00').value, 0);
+      }, &quot;progress value equals 0&quot;);
+
+      test(function () {
+        assert_equals(document.getElementById('p01').value, .5);
+      }, &quot;progress value equals .5&quot;);
+
+      test(function () {
+        document.getElementById('p00').value = document.getElementById('p00').value;
+        assert_equals(document.getElementById('p00').position, 0);
+      }, &quot;progress position equals 0&quot;);
+    &lt;/script&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheprogresselementprogressexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-progress-element/progress-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-progress-element/progress-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-progress-element/progress-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,14 @@
</span><ins>+             
+
+PASS Indeterminate progress bar should have position -1 
+PASS Revoming the value attribute makes an intermediate progress bar, which should have position -1 
+PASS Determinate progress bar should have fractional position 
+PASS Indeterminate progress bar should have value 0 
+PASS Value must equal max if the parsed value is larger than max 
+PASS Max must be 1 by default 
+PASS Max must be 1 by default, even if value is specified 
+PASS Max must be 1 if max value is invalid 
+PASS Max must be 1 if the parsed max value is less than or equal to zero 
+PASS Value must be 0 if value is invalid 
+PASS Value must be 0 if the parsed value is less than or equal to zero 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheprogresselementprogresshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-progress-element/progress.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-progress-element/progress.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-progress-element/progress.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,74 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;title&gt;The progress element&lt;/title&gt;
+
+    &lt;link rel=&quot;author&quot; title=&quot;dan smith&quot; href=&quot;mailto:XX1011@gmail.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Tomoyuki SHIMIZU&quot; href=&quot;mailto:tomoyuki.labs@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-progress-element&quot;&gt;
+
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+
+    &lt;progress id=&quot;indeterminate&quot;&gt;&lt;/progress&gt;
+    &lt;progress id=&quot;removevalue&quot; value=&quot;0.5&quot;&gt;&lt;/progress&gt;
+    &lt;progress id=&quot;quarter&quot; value=&quot;1&quot; max=&quot;4&quot;&gt;&lt;/progress&gt;
+    &lt;progress id=&quot;largerthanmax&quot; value=&quot;2&quot;&gt;&lt;/progress&gt;
+    &lt;progress id=&quot;invalidmax&quot; value=&quot;1&quot; max=&quot;a&quot;&gt;&lt;/progress&gt;
+    &lt;progress id=&quot;negativemax&quot; value=&quot;1&quot; max=&quot;-1&quot;&gt;&lt;/progress&gt;
+    &lt;progress id=&quot;invalidvalue&quot; value=&quot;a&quot;&gt;&lt;/progress&gt;
+    &lt;progress id=&quot;negativevalue&quot; value=&quot;-1&quot;&gt;&lt;/progress&gt;
+
+    &lt;script&gt;
+
+      test(function() {
+        assert_equals(indeterminate.position, -1);
+      }, &quot;Indeterminate progress bar should have position -1&quot;);
+
+      test(function() {
+        removevalue.removeAttribute('value');
+        assert_equals(removevalue.position, -1);
+      }, &quot;Revoming the value attribute makes an intermediate progress bar, which should have position -1&quot;);
+
+      test(function() {
+        assert_equals(quarter.position, quarter.value / quarter.max);
+      }, &quot;Determinate progress bar should have fractional position&quot;);
+
+      test(function() {
+        assert_equals(indeterminate.value, 0);
+      }, &quot;Indeterminate progress bar should have value 0&quot;);
+
+      test(function() {
+        assert_array_equals(largerthanmax.value, 1);
+      }, &quot;Value must equal max if the parsed value is larger than max&quot;);
+
+      test(function() {
+        assert_equals(indeterminate.max, 1);
+      }, &quot;Max must be 1 by default&quot;);
+
+      test(function() {
+        assert_array_equals(largerthanmax.max, 1);
+      }, &quot;Max must be 1 by default, even if value is specified&quot;);
+
+      test(function() {
+        assert_equals(invalidmax.max, 1);
+      }, &quot;Max must be 1 if max value is invalid&quot;);
+
+      test(function() {
+        assert_equals(negativemax.max, 1);
+      }, &quot;Max must be 1 if the parsed max value is less than or equal to zero&quot;);
+
+      test(function() {
+        assert_equals(invalidvalue.value, 0);
+      }, &quot;Value must be 0 if value is invalid&quot;);
+
+      test(function() {
+        assert_equals(negativevalue.value, 0);
+      }, &quot;Value must be 0 if the parsed value is less than or equal to zero&quot;);
+
+    &lt;/script&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheprogresselementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-progress-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-progress-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-progress-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-progress-element/progress-2.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-progress-element/progress.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheselectelementcommonHTMLOptionsCollectionexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/common-HTMLOptionsCollection-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/common-HTMLOptionsCollection-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/common-HTMLOptionsCollection-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+
+
+PASS On getting, the length attribute must return the number of nodes represented by the collection. 
+PASS Changing the length adds new nodes; The number of new nodes = new length minus old length 
+PASS New nodes have no value 
+PASS Setting a length equal to existing length changes nothing 
+PASS Setting a length lower than the old length trims nodes from the end 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheselectelementcommonHTMLOptionsCollectionnamedItemexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/common-HTMLOptionsCollection-namedItem-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/common-HTMLOptionsCollection-namedItem-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/common-HTMLOptionsCollection-namedItem-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+
+
+PASS if only one item has a *name* or id value matching the parameter, return that object and stop 
+PASS if only one item has a name or *id* value matching the parameter, return that object and stop 
+PASS if no item has a name or id value matching the parameter, return null and stop 
+FAIL return an HTMLOptionsCollection in correct order for repeated 'id' value assert_array_equals: lengths differ, expected 2 got 0
+FAIL return an HTMLOptionsCollection in correct order for repeated 'name' value assert_array_equals: lengths differ, expected 2 got 0
+FAIL return an HTMLOptionsCollection in correct order for repeated mixed value assert_array_equals: lengths differ, expected 2 got 0
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheselectelementcommonHTMLOptionsCollectionnamedItemhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/common-HTMLOptionsCollection-namedItem.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/common-HTMLOptionsCollection-namedItem.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/common-HTMLOptionsCollection-namedItem.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,62 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title id='title'&gt;HTMLOptionsCollection&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;select id=&quot;selly&quot;&gt;
+  &lt;option id=&quot;id1&quot; name=&quot;name1&quot;&gt;1&lt;/option&gt;
+  &lt;option id=&quot;id2&quot; name=&quot;name2&quot;&gt;2&lt;/option&gt;
+  &lt;option id=&quot;id3&quot; name=&quot;name3&quot;&gt;3&lt;/option&gt;
+  &lt;option id=&quot;id4&quot; name=&quot;name4&quot;&gt;4&lt;/option&gt;
+  &lt;option name=&quot;nameonly&quot;&gt;nameonly&lt;/option&gt;
+  &lt;option id=&quot;id3&quot;&gt;duplicate ID&lt;/option&gt;
+  &lt;option name=&quot;name4&quot;&gt;duplicate name&lt;/option&gt;
+  &lt;option id=&quot;mixed1&quot;&gt;mixed ID&lt;/option&gt;
+  &lt;option name=&quot;mixed1&quot;&gt;mixed name&lt;/option&gt;
+&lt;/select&gt;
+
+&lt;script&gt;
+var selly;
+setup(function() {
+    selly = document.getElementById('selly');
+});
+
+test(function () {
+    assert_equals(selly.namedItem('nameonly')[&quot;value&quot;], &quot;nameonly&quot;);
+}, &quot;if only one item has a *name* or id value matching the parameter, return that object and stop&quot;);
+
+test(function () {
+    assert_equals(selly.namedItem('id2')[&quot;value&quot;], &quot;2&quot;);
+}, &quot;if only one item has a name or *id* value matching the parameter, return that object and stop&quot;);
+
+test(function () {
+    assert_equals(selly.namedItem('thisdoesnotexist'), null);
+}, &quot;if no item has a name or id value matching the parameter, return null and stop&quot;);
+
+test(function () {
+    var testarr = [];
+    for (var i = 0; i &lt; selly.namedItem('id3').length; i++) {
+        testarr.push(selly.namedItem('id3')[i].text);
+    }
+    assert_array_equals(testarr, ['3','duplicate ID']);
+}, &quot;return an HTMLOptionsCollection in correct order for repeated 'id' value&quot;);
+
+test(function () {
+    var testarr = [];
+    for (var i = 0; i &lt; selly.namedItem('name4').length; i++) {
+        testarr.push(selly.namedItem('name4')[i].text);
+    }
+    assert_array_equals(testarr, ['4', 'duplicate name']);
+}, &quot;return an HTMLOptionsCollection in correct order for repeated 'name' value&quot;);
+
+test(function () {
+    var testarr = [];
+    for (var i = 0; i &lt; selly.namedItem('mixed1').length; i++) {
+        testarr.push(selly.namedItem('mixed1')[i].text);
+    }
+    assert_array_equals(testarr, ['mixed ID', 'mixed name']);
+}, &quot;return an HTMLOptionsCollection in correct order for repeated mixed value&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheselectelementcommonHTMLOptionsCollectionhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/common-HTMLOptionsCollection.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/common-HTMLOptionsCollection.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/common-HTMLOptionsCollection.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,70 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title id='title'&gt;HTMLOptionsCollection&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;select id=&quot;selly&quot;&gt;
+  &lt;option&gt;1&lt;/option&gt;
+  &lt;option&gt;2&lt;/option&gt;
+  &lt;option&gt;3&lt;/option&gt;
+  &lt;option&gt;4&lt;/option&gt;
+&lt;/select&gt;
+
+&lt;script&gt;
+var selly;
+setup(function() {
+    selly = document.getElementById('selly');
+});
+
+test(function () {
+    assert_equals(selly.length, 4);
+}, &quot;On getting, the length attribute must return the number of nodes represented by the collection.&quot;);
+
+test(function () {
+    selly.length = 7;
+    assert_equals(selly.length, 7,
+                  &quot;Number of nodes in collection should have changed&quot;);
+    assert_equals(selly.children.length, 7,
+                  &quot;Number of children should have changed&quot;);
+    for (var i = 4; i &lt; 7; ++i) {
+        var child = selly.children[i];
+        assert_equals(child.localName, &quot;option&quot;,
+                      &quot;new child should be an option&quot;);
+        assert_equals(child.namespaceURI, &quot;http://www.w3.org/1999/xhtml&quot;,
+                      &quot;new child should be an HTML element&quot;);
+        assert_equals(child.attributes.length, 0,
+                      &quot;new child should not have attributes&quot;);
+        assert_equals(child.childNodes.length, 0,
+                      &quot;new child should not have child nodes&quot;);
+    }
+}, &quot;Changing the length adds new nodes; The number of new nodes = new length minus old length&quot;);
+
+test(function () {
+    var elarray = [];
+    for (var i = 0; i &lt; selly.length; i++) {
+        elarray.push(selly[i].value);
+    }
+    assert_array_equals(elarray, [&quot;1&quot;, &quot;2&quot;, &quot;3&quot;, &quot;4&quot;, &quot;&quot;, &quot;&quot;, &quot;&quot;]);
+}, &quot;New nodes have no value&quot;);
+
+test(function () {
+    selly.length = 7;
+    assert_equals(selly.length, 7,
+                  &quot;Number of nodes in collection should not have changed&quot;);
+    assert_equals(selly.children.length, 7,
+                  &quot;Number of children should not have changed&quot;);
+}, &quot;Setting a length equal to existing length changes nothing&quot;);
+
+test(function () {
+    selly.length = 4;
+    assert_equals(selly[6], undefined,
+                  &quot;previously set node is now undefined&quot;);
+    assert_equals(selly.length, 4,
+                  &quot;Number of nodes in collection is correctly changed&quot;);
+    assert_equals(selly.children.length, 4,
+                  &quot;Number of children should have changed&quot;);
+}, &quot;Setting a length lower than the old length trims nodes from the end&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheselectelementselectnamedgetterexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/select-named-getter-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/select-named-getter-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/select-named-getter-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+
+
+PASS Option with id 
+PASS Option with name 
+PASS Option with name and id 
+PASS Empty string name 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheselectelementselectnamedgetterhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/select-named-getter.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/select-named-getter.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/select-named-getter.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,46 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Absence of a named getter on HTMLSelectElement&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;select id=select&gt;
+  &lt;option id=op1&gt;A&lt;/option&gt;
+  &lt;option name=op2&gt;B&lt;/option&gt;
+  &lt;option id=op3 name=op4&gt;C&lt;/option&gt;
+  &lt;option id=&gt;D&lt;/option&gt;
+  &lt;option name=&gt;D&lt;/option&gt;
+&lt;/select&gt;
+&lt;script&gt;
+test(function() {
+  var select = document.getElementById(&quot;select&quot;);
+  assert_equals(select.op1, undefined);
+  assert_false(&quot;op1&quot; in select);
+  assert_equals(select.namedItem(&quot;op1&quot;), select.children[0]);
+}, &quot;Option with id&quot;)
+
+test(function() {
+  var select = document.getElementById(&quot;select&quot;);
+  assert_equals(select.op2, undefined);
+  assert_false(&quot;op2&quot; in select);
+  assert_equals(select.namedItem(&quot;op2&quot;), select.children[1]);
+}, &quot;Option with name&quot;)
+
+test(function() {
+  var select = document.getElementById(&quot;select&quot;);
+  assert_equals(select.op3, undefined);
+  assert_false(&quot;op3&quot; in select);
+  assert_equals(select.namedItem(&quot;op3&quot;), select.children[2]);
+
+  assert_equals(select.op4, undefined);
+  assert_false(&quot;op4&quot; in select);
+  assert_equals(select.namedItem(&quot;op4&quot;), select.children[2]);
+}, &quot;Option with name and id&quot;)
+
+test(function() {
+  var select = document.getElementById(&quot;select&quot;);
+  assert_equals(select[&quot;&quot;], undefined);
+  assert_false(&quot;&quot; in select);
+  assert_equals(select.namedItem(&quot;&quot;), null);
+}, &quot;Empty string name&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheselectelementselectremoveexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/select-remove-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/select-remove-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/select-remove-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+
+PASS select.remove(n) should work 
+PASS select.options.remove(n) should work 
+PASS remove() should work on select elements. 
+PASS Element#remove() should work on select elements. 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheselectelementselectremovehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/select-remove.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/select-remove.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/select-remove.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,64 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;HTMLSelectElement.remove&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;Ms2ger@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://dom.spec.whatwg.org/#dom-childnode-remove&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-select-remove&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-htmloptionscollection-remove&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+function testRemove(getter, desc) {
+  test(function() {
+    var div = document.createElement(&quot;div&quot;);
+    var select = document.createElement(&quot;select&quot;);
+    div.appendChild(select);
+    assert_equals(select.parentNode, div);
+
+    var options = [];
+    for (var i = 0; i &lt; 3; ++i) {
+      var option = document.createElement(&quot;option&quot;);
+      option.textContent = String(i);
+      select.appendChild(option);
+      options.push(option);
+    }
+
+    getter(select).remove(-1);
+    assert_array_equals(select.options, options, &quot;After remove(-1)&quot;);
+    assert_equals(select.parentNode, div);
+
+    getter(select).remove(3);
+    assert_array_equals(select.options, options, &quot;After remove(3)&quot;);
+    assert_equals(select.parentNode, div);
+
+    getter(select).remove(0);
+    assert_array_equals(select.options, [options[1], options[2]], &quot;After remove(0)&quot;);
+    assert_equals(select.parentNode, div);
+  }, desc)
+}
+testRemove(function(select) { return select; }, &quot;select.remove(n) should work&quot;);
+testRemove(function(select) { return select.options; }, &quot;select.options.remove(n) should work&quot;);
+test(function() {
+  var div = document.createElement(&quot;div&quot;);
+  var select = document.createElement(&quot;select&quot;);
+  div.appendChild(select);
+  assert_equals(select.parentNode, div);
+  assert_equals(div.firstChild, select);
+
+  select.remove();
+  assert_equals(select.parentNode, null);
+  assert_equals(div.firstChild, null);
+}, &quot;remove() should work on select elements.&quot;)
+test(function() {
+  var div = document.createElement(&quot;div&quot;);
+  var select = document.createElement(&quot;select&quot;);
+  div.appendChild(select);
+  assert_equals(select.parentNode, div);
+  assert_equals(div.firstChild, select);
+
+  Element.prototype.remove.call(select);
+  assert_equals(select.parentNode, null);
+  assert_equals(div.firstChild, null);
+}, &quot;Element#remove() should work on select elements.&quot;)
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformstheselectelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,21 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/common-HTMLOptionsCollection-namedItem.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/common-HTMLOptionsCollection.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/select-named-getter.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-select-element/select-remove.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthetextareaelementtextareanewlinebidiexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-textarea-element/textarea-newline-bidi-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-textarea-element/textarea-newline-bidi-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-textarea-element/textarea-newline-bidi-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;title&gt;HTML Test reference: newline in &amp;lt;textarea&amp;gt; separates bidi paragraphs&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Amir E. Aharoni&quot; href=&quot;mailto:amir.aharoni@mail.huji.ac.il&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Eyal Sela&quot; href=&quot;mailto:eyal@post.isoc.org.il&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;/&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-textarea-element&quot;/&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;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.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;textarea cols=&quot;70&quot; rows=&quot;3&quot;&gt;
+A Hebrew letter and a full stop: &amp;#x05d0;.&amp;lrm;
+&amp;#x05d0; this line begins with a Hebrew letter.
+      &lt;/textarea&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthetextareaelementtextareanewlinebidihtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-textarea-element/textarea-newline-bidi.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-textarea-element/textarea-newline-bidi.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-textarea-element/textarea-newline-bidi.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,23 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;/&gt;
+    &lt;title&gt;HTML Test: newline in &amp;lt;textarea&amp;gt; separates bidi paragraphs&lt;/title&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;textarea-newline-bidi-ref.html&quot; /&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Amir E. Aharoni&quot; href=&quot;mailto:amir.aharoni@mail.huji.ac.il&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Eyal Sela&quot; href=&quot;mailto:eyal@post.isoc.org.il&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;/&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-textarea-element&quot;/&gt;
+    &lt;meta name=&quot;assert&quot;
+      content=&quot;A newline in a textarea element, and in its raw value, should separate paragraphs for the purposes of the Unicode bidirectional algorithm.&quot;/&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;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.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;textarea cols=&quot;70&quot; rows=&quot;3&quot;&gt;
+A Hebrew letter and a full stop: &amp;#x05d0;.
+&amp;#x05d0; this line begins with a Hebrew letter.
+      &lt;/textarea&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthetextareaelementtextareatypeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-textarea-element/textarea-type-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-textarea-element/textarea-type-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-textarea-element/textarea-type-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+
+PASS Textarea's type attribute should return 'textarea' 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthetextareaelementtextareatypehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-textarea-element/textarea-type.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-textarea-element/textarea-type.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-textarea-element/textarea-type.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,16 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;title&gt;The type IDL attribute&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-textarea-type&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;test&quot;&gt;
+&lt;textarea&gt;&lt;/textarea&gt;
+&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  assert_equals(document.getElementById(&quot;test&quot;)
+                        .getElementsByTagName(&quot;textarea&quot;)[0].type,
+                &quot;textarea&quot;);
+}, &quot;Textarea's type attribute should return 'textarea'&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsformsthetextareaelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-textarea-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-textarea-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/forms/the-textarea-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,20 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-textarea-element/textarea-newline-bidi-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-textarea-element/textarea-newline-bidi.html
+/LayoutTests/http/tests/w3c/html/semantics/forms/the-textarea-element/textarea-type.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheddelementgroupingddexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dd-element/grouping-dd-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dd-element/grouping-dd-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dd-element/grouping-dd-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+Description
+
+This test validates the dd element.
+
+
+PASS The prototype for dd is HTMLElement.prototype 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheddelementgroupingddhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dd-element/grouping-dd.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dd-element/grouping-dd.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dd-element/grouping-dd.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,27 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;the dd element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-dd-element&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+    &lt;script&gt;
+        &quot;use strict&quot;;
+
+        // check that prototype matches spec's DOM interface
+        test(function () {
+            var testElement = document.createElement(&quot;dd&quot;);
+            assert_equals(Object.getPrototypeOf(testElement), HTMLElement.prototype, &quot;HTMLElement.prototype should be used for dd&quot;);
+        }, &quot;The prototype for dd is HTMLElement.prototype&quot;);
+
+    &lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test validates the dd element.&lt;/p&gt;
+
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheddelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dd-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dd-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dd-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dd-element/grouping-dd.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthedivelementgroupingdivexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-div-element/grouping-div-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-div-element/grouping-div-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-div-element/grouping-div-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+Description
+
+This test validates the div element.
+
+
+PASS The prototype for div is HTMLDivElement.prototype 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthedivelementgroupingdivhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-div-element/grouping-div.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-div-element/grouping-div.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-div-element/grouping-div.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;The div element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-div-element&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+    &lt;script&gt;
+        &quot;use strict&quot;;
+
+        // check that prototype matches spec's DOM interface
+        test(function () {
+            var testElement = document.createElement(&quot;div&quot;);
+            assert_equals(Object.getPrototypeOf(testElement), HTMLDivElement.prototype, &quot;HTMLDivElement.prototype should be used for div&quot;);
+        }, &quot;The prototype for div is HTMLDivElement.prototype&quot;);
+
+    &lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test validates the div element.&lt;/p&gt;
+
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthedivelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-div-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-div-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-div-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-div-element/grouping-div.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthedlelementgroupingdlexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dl-element/grouping-dl-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dl-element/grouping-dl-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dl-element/grouping-dl-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+Description
+
+This test validates the dl element.
+
+
+PASS The prototype for dl is HTMLDListElement.prototype 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthedlelementgroupingdlhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dl-element/grouping-dl.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dl-element/grouping-dl.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dl-element/grouping-dl.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,30 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;the dl element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-dl-element&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+    &lt;script&gt;
+        &quot;use strict&quot;;
+
+        // check that prototype matches spec's DOM interface
+        test(function () {
+            var testElement = document.createElement(&quot;dl&quot;);
+            assert_equals(Object.getPrototypeOf(testElement), HTMLDListElement.prototype, &quot;HTMLDListElement.prototype should be used for dl&quot;);
+        }, &quot;The prototype for dl is HTMLDListElement.prototype&quot;);
+
+        // Not checking: effects of markup on defining groups and the name-pair values within those groups
+
+    &lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test validates the dl element.&lt;/p&gt;
+
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthedlelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dl-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dl-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dl-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dl-element/grouping-dl.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthedtelementgroupingdtexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dt-element/grouping-dt-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dt-element/grouping-dt-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dt-element/grouping-dt-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+Description
+
+This test validates the dt element.
+
+
+PASS The prototype for dt is HTMLElement.prototype 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthedtelementgroupingdthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dt-element/grouping-dt.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dt-element/grouping-dt.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dt-element/grouping-dt.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;the dl element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-dt-element&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+    &lt;script&gt;
+        &quot;use strict&quot;;
+
+        // check that prototype matches spec's DOM interface
+        test(function () {
+            var testElement = document.createElement(&quot;dt&quot;);
+            assert_equals(Object.getPrototypeOf(testElement), HTMLElement.prototype, &quot;HTMLElement.prototype should be used for dt&quot;);
+        }, &quot;The prototype for dt is HTMLElement.prototype&quot;);
+
+    &lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test validates the dt element.&lt;/p&gt;
+
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthedtelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dt-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dt-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dt-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-dt-element/grouping-dt.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthefigcaptionelementgroupingfigcaptionexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figcaption-element/grouping-figcaption-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figcaption-element/grouping-figcaption-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figcaption-element/grouping-figcaption-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+Description
+
+This test validates the figcaption element.
+
+
+PASS The prototype for figcaption is HTMLElement.prototype 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthefigcaptionelementgroupingfigcaptionhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figcaption-element/grouping-figcaption.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figcaption-element/grouping-figcaption.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figcaption-element/grouping-figcaption.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;the figcaption element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-figcaption-element&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+    &lt;script&gt;
+        &quot;use strict&quot;;
+
+        // check that prototype matches spec's DOM interface
+        test(function () {
+            var testElement = document.createElement(&quot;figcaption&quot;);
+            assert_equals(Object.getPrototypeOf(testElement), HTMLElement.prototype, &quot;HTMLElement.prototype should be used for figcaption&quot;);
+        }, &quot;The prototype for figcaption is HTMLElement.prototype&quot;);
+
+    &lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test validates the figcaption element.&lt;/p&gt;
+
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthefigcaptionelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figcaption-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figcaption-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figcaption-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figcaption-element/grouping-figcaption.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthefigureelementgroupingfigureexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figure-element/grouping-figure-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figure-element/grouping-figure-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figure-element/grouping-figure-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+Description
+
+This test validates the figure element.
+
+
+PASS The prototype for figure is HTMLElement.prototype 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthefigureelementgroupingfigurehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figure-element/grouping-figure.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figure-element/grouping-figure.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figure-element/grouping-figure.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,29 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;the figure element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-figure-element&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+    &lt;script&gt;
+        &quot;use strict&quot;;
+
+        // check that prototype matches spec's DOM interface
+        test(function () {
+            var testElement = document.createElement(&quot;figure&quot;);
+            assert_equals(Object.getPrototypeOf(testElement), HTMLElement.prototype, &quot;HTMLElement.prototype should be used for figure&quot;);
+        }, &quot;The prototype for figure is HTMLElement.prototype&quot;);
+
+        // Not checking: Sectioning root
+
+    &lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test validates the figure element.&lt;/p&gt;
+
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthefigureelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figure-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figure-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figure-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-figure-element/grouping-figure.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthehrelementgroupinghrexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-hr-element/grouping-hr-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-hr-element/grouping-hr-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-hr-element/grouping-hr-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+Description
+
+This test validates the hr element.
+
+
+PASS The prototype for hr is HTMLHRElement.prototype 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthehrelementgroupinghrhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-hr-element/grouping-hr.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-hr-element/grouping-hr.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-hr-element/grouping-hr.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,30 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;the hr element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-hr-element&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+    &lt;script&gt;
+        &quot;use strict&quot;;
+
+        // check that prototype matches spec's DOM interface
+        test(function () {
+            var testElement = document.createElement(&quot;hr&quot;);
+            assert_equals(Object.getPrototypeOf(testElement), HTMLHRElement.prototype, &quot;HTMLHRElement.prototype should be used for hr&quot;);
+        }, &quot;The prototype for hr is HTMLHRElement.prototype&quot;);
+
+        // Not checking: &quot;The hr element does not affect the document's outline.&quot;
+
+    &lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test validates the hr element.&lt;/p&gt;
+
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthehrelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-hr-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-hr-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-hr-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-hr-element/grouping-hr.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthelielementgroupingliexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,78 @@
</span><ins>+Description
+
+This test validates the li element.
+
+Command
+Command
+New...  Open...
+Help Me
+About
+Unordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+
+PASS The prototype for li is HTMLLIElement.prototype 
+FAIL li should have a 'value' attribute assert_own_property: li should have a 'value' attribute expected property &quot;value&quot; missing
+PASS Default (unspecified) value of value is 0. 
+PASS .value property reflects content attribute - and both parse value of '2' correctly. 
+PASS IDL and content attribute parse value of '-10' correctly. 
+PASS IDL and content attribute parse value of '4.03' correctly. 
+PASS IDL and content attribute parse value of '-4.03' correctly. 
+PASS IDL and content attribute parse value of '4.9' correctly. 
+PASS IDL and content attribute parse value of '-4.9' correctly. 
+PASS IDL and content attribute parse value of '7e2' correctly. 
+PASS IDL and content attribute parse value of '.5' correctly. 
+PASS IDL and content attribute parse value of 'A' correctly. 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthelielementgroupinglireftest001expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-001-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-001-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-001-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,49 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;li element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-li-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-li-reftest-001.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;The value attribute has no effect when applied to a li element whose parent is a non-ol element.&quot; /&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test continues to validate the li element.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&quot;If the parent element is an ol element, then the li element has an ordinal value. The value attribute is processed relative to the element's parent ol element (q.v.), if there is one. If there is not, the attribute has no effect.&quot;&lt;/blockquote&gt;
+    &lt;p&gt;This reftest verifies that the value attribute has no effect when applied to a list item NOT having an ol parent.&lt;/p&gt;
+    &lt;p&gt;A reftest is necessary because the values of li elements as calculated by the user agent are NOT available programatically. Only explicitly-set values are then available programatically.&lt;/p&gt;
+    &lt;p&gt;This reftest passes if you see NO sequencing information on any of the items below.&lt;/p&gt;
+
+    &lt;p&gt;Unordered List&lt;/p&gt;
+    &lt;ul&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ul&gt;
+
+    &lt;menu&gt;
+        &lt;li&gt;Menu Item&lt;/li&gt;
+        &lt;li&gt;Menu Item&lt;/li&gt;
+    &lt;/menu&gt;
+
+    &lt;menu type=&quot;toolbar&quot;&gt;
+        &lt;li&gt;
+            &lt;menu label=&quot;ToolbarLabel&quot;&gt;
+                &lt;li&gt;&lt;a&gt;Toolbar Menu Item&lt;/a&gt;&lt;/li&gt;
+                &lt;li&gt;&lt;a&gt;Toolbar Menu Item&lt;/a&gt;&lt;/li&gt;
+            &lt;/menu&gt;
+        &lt;/li&gt;
+        &lt;li&gt;
+            &lt;menu label=&quot;ToolbarLabel&quot;&gt;
+                &lt;li&gt;&lt;a&gt;Toolbar Menu Item&lt;/a&gt;&lt;/li&gt;
+                &lt;li&gt;&lt;a&gt;Toolbar Menu Item&lt;/a&gt;&lt;/li&gt;
+            &lt;/menu&gt;
+        &lt;/li&gt;
+     &lt;/menu&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthelielementgroupinglireftest001refexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-001-ref-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-001-ref-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-001-ref-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,49 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;li element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-li-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-li-reftest-001-ref.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;The value attribute has no effect when applied to a li element whose parent is a non-ol element.&quot; /&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test continues to validate the li element.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&quot;If the parent element is an ol element, then the li element has an ordinal value. The value attribute is processed relative to the element's parent ol element (q.v.), if there is one. If there is not, the attribute has no effect.&quot;&lt;/blockquote&gt;
+    &lt;p&gt;This reftest verifies that the value attribute has no effect when applied to a list item NOT having an ol parent.&lt;/p&gt;
+    &lt;p&gt;A reftest is necessary because the values of li elements as calculated by the user agent are NOT available programatically.  Only explicitly-set values are then available programatically.&lt;/p&gt;
+    &lt;p&gt;This reftest passes if you see NO sequencing information on any of the items below.&lt;/p&gt;
+
+    &lt;p&gt;Unordered List&lt;/p&gt;
+    &lt;ul&gt;
+        &lt;li value=&quot;2&quot;&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ul&gt;
+
+    &lt;menu&gt;
+        &lt;li&gt;Menu Item&lt;/li&gt;
+        &lt;li value=&quot;3&quot;&gt;Menu Item&lt;/li&gt;
+    &lt;/menu&gt;
+
+    &lt;menu type=&quot;toolbar&quot;&gt;
+        &lt;li value=&quot;4&quot;&gt;
+            &lt;menu label=&quot;ToolbarLabel&quot;&gt;
+                &lt;li value=&quot;5&quot;&gt;&lt;a&gt;Toolbar Menu Item&lt;/a&gt;&lt;/li&gt;
+                &lt;li&gt;&lt;a&gt;Toolbar Menu Item&lt;/a&gt;&lt;/li&gt;
+            &lt;/menu&gt;
+        &lt;/li&gt;
+        &lt;li value=&quot;6&quot;&gt;
+            &lt;menu label=&quot;ToolbarLabel&quot;&gt;
+                &lt;li value=&quot;10&quot;&gt;&lt;a&gt;Toolbar Menu Item&lt;/a&gt;&lt;/li&gt;
+                &lt;li&gt;&lt;a&gt;Toolbar Menu Item&lt;/a&gt;&lt;/li&gt;
+            &lt;/menu&gt;
+        &lt;/li&gt;
+     &lt;/menu&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthelielementgroupinglireftest001refhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-001-ref.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-001-ref.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-001-ref.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,49 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;li element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-li-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-li-reftest-001.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;The value attribute has no effect when applied to a li element whose parent is a non-ol element.&quot; /&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test continues to validate the li element.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&quot;If the parent element is an ol element, then the li element has an ordinal value. The value attribute is processed relative to the element's parent ol element (q.v.), if there is one. If there is not, the attribute has no effect.&quot;&lt;/blockquote&gt;
+    &lt;p&gt;This reftest verifies that the value attribute has no effect when applied to a list item NOT having an ol parent.&lt;/p&gt;
+    &lt;p&gt;A reftest is necessary because the values of li elements as calculated by the user agent are NOT available programatically. Only explicitly-set values are then available programatically.&lt;/p&gt;
+    &lt;p&gt;This reftest passes if you see NO sequencing information on any of the items below.&lt;/p&gt;
+
+    &lt;p&gt;Unordered List&lt;/p&gt;
+    &lt;ul&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ul&gt;
+
+    &lt;menu&gt;
+        &lt;li&gt;Menu Item&lt;/li&gt;
+        &lt;li&gt;Menu Item&lt;/li&gt;
+    &lt;/menu&gt;
+
+    &lt;menu type=&quot;toolbar&quot;&gt;
+        &lt;li&gt;
+            &lt;menu label=&quot;ToolbarLabel&quot;&gt;
+                &lt;li&gt;&lt;a&gt;Toolbar Menu Item&lt;/a&gt;&lt;/li&gt;
+                &lt;li&gt;&lt;a&gt;Toolbar Menu Item&lt;/a&gt;&lt;/li&gt;
+            &lt;/menu&gt;
+        &lt;/li&gt;
+        &lt;li&gt;
+            &lt;menu label=&quot;ToolbarLabel&quot;&gt;
+                &lt;li&gt;&lt;a&gt;Toolbar Menu Item&lt;/a&gt;&lt;/li&gt;
+                &lt;li&gt;&lt;a&gt;Toolbar Menu Item&lt;/a&gt;&lt;/li&gt;
+            &lt;/menu&gt;
+        &lt;/li&gt;
+     &lt;/menu&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthelielementgroupinglireftest001html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-001.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-001.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-001.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,49 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;li element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-li-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-li-reftest-001-ref.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;The value attribute has no effect when applied to a li element whose parent is a non-ol element.&quot; /&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test continues to validate the li element.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&quot;If the parent element is an ol element, then the li element has an ordinal value. The value attribute is processed relative to the element's parent ol element (q.v.), if there is one. If there is not, the attribute has no effect.&quot;&lt;/blockquote&gt;
+    &lt;p&gt;This reftest verifies that the value attribute has no effect when applied to a list item NOT having an ol parent.&lt;/p&gt;
+    &lt;p&gt;A reftest is necessary because the values of li elements as calculated by the user agent are NOT available programatically.  Only explicitly-set values are then available programatically.&lt;/p&gt;
+    &lt;p&gt;This reftest passes if you see NO sequencing information on any of the items below.&lt;/p&gt;
+
+    &lt;p&gt;Unordered List&lt;/p&gt;
+    &lt;ul&gt;
+        &lt;li value=&quot;2&quot;&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ul&gt;
+
+    &lt;menu&gt;
+        &lt;li&gt;Menu Item&lt;/li&gt;
+        &lt;li value=&quot;3&quot;&gt;Menu Item&lt;/li&gt;
+    &lt;/menu&gt;
+
+    &lt;menu type=&quot;toolbar&quot;&gt;
+        &lt;li value=&quot;4&quot;&gt;
+            &lt;menu label=&quot;ToolbarLabel&quot;&gt;
+                &lt;li value=&quot;5&quot;&gt;&lt;a&gt;Toolbar Menu Item&lt;/a&gt;&lt;/li&gt;
+                &lt;li&gt;&lt;a&gt;Toolbar Menu Item&lt;/a&gt;&lt;/li&gt;
+            &lt;/menu&gt;
+        &lt;/li&gt;
+        &lt;li value=&quot;6&quot;&gt;
+            &lt;menu label=&quot;ToolbarLabel&quot;&gt;
+                &lt;li value=&quot;10&quot;&gt;&lt;a&gt;Toolbar Menu Item&lt;/a&gt;&lt;/li&gt;
+                &lt;li&gt;&lt;a&gt;Toolbar Menu Item&lt;/a&gt;&lt;/li&gt;
+            &lt;/menu&gt;
+        &lt;/li&gt;
+     &lt;/menu&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthelielementgroupinglireftest002expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,35 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;li element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-li-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-li-reftest-002-ref.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;li elements with ol parents have ordinal values.&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span span p {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test continues to validate the li element.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&quot;If the parent element is an ol element, then the li element has an ordinal value. The value attribute is processed relative to the element's parent ol element (q.v.), if there is one. If there is not, the attribute has no effect.&quot;&lt;/blockquote&gt;
+    &lt;p&gt;This reftest verifies that the value attribute has an effect when applied to a list item with an ol parent.&lt;/p&gt;
+    &lt;p&gt;A reftest is necessary because the values of li elements as calculated by the user agent are NOT available programatically.  Only explicitly-set values are then available programatically.&lt;/p&gt;
+    &lt;p&gt;This reftest passes if you see the numbers 1. 2. 3. below the words &quot;Ordered List&quot;&lt;/p&gt;
+
+    &lt;span&gt;
+        &lt;p&gt;Ordered List&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;1.&lt;/p&gt;
+            &lt;p&gt;2.&lt;/p&gt;
+            &lt;p&gt;3.&lt;/p&gt;
+        &lt;/span&gt;
+    &lt;/span&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthelielementgroupinglireftest002refexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002-ref-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002-ref-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002-ref-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,35 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;li element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-li-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-li-reftest-002-ref.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;li elements with ol parents have ordinal values.&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span span p {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test continues to validate the li element.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&quot;If the parent element is an ol element, then the li element has an ordinal value. The value attribute is processed relative to the element's parent ol element (q.v.), if there is one. If there is not, the attribute has no effect.&quot;&lt;/blockquote&gt;
+    &lt;p&gt;This reftest verifies that the value attribute has an effect when applied to a list item with an ol parent.&lt;/p&gt;
+    &lt;p&gt;A reftest is necessary because the values of li elements as calculated by the user agent are NOT available programatically.  Only explicitly-set values are then available programatically.&lt;/p&gt;
+    &lt;p&gt;This reftest passes if you see the numbers 1. 2. 3. below the words &quot;Ordered List&quot;&lt;/p&gt;
+
+    &lt;span&gt;
+        &lt;p&gt;Ordered List&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;1.&lt;/p&gt;
+            &lt;p&gt;2.&lt;/p&gt;
+            &lt;p&gt;3.&lt;/p&gt;
+        &lt;/span&gt;
+    &lt;/span&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthelielementgroupinglireftest002refhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002-ref.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002-ref.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002-ref.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,35 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;li element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-li-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-li-reftest-002-ref.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;li elements with ol parents have ordinal values.&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span span p {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test continues to validate the li element.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&quot;If the parent element is an ol element, then the li element has an ordinal value. The value attribute is processed relative to the element's parent ol element (q.v.), if there is one. If there is not, the attribute has no effect.&quot;&lt;/blockquote&gt;
+    &lt;p&gt;This reftest verifies that the value attribute has an effect when applied to a list item with an ol parent.&lt;/p&gt;
+    &lt;p&gt;A reftest is necessary because the values of li elements as calculated by the user agent are NOT available programatically.  Only explicitly-set values are then available programatically.&lt;/p&gt;
+    &lt;p&gt;This reftest passes if you see the numbers 1. 2. 3. below the words &quot;Ordered List&quot;&lt;/p&gt;
+
+    &lt;span&gt;
+        &lt;p&gt;Ordered List&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;1.&lt;/p&gt;
+            &lt;p&gt;2.&lt;/p&gt;
+            &lt;p&gt;3.&lt;/p&gt;
+        &lt;/span&gt;
+    &lt;/span&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthelielementgroupinglireftest002html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,36 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;li element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-li-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-li-reftest-002-ref.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;li elements with ol parents have ordinal values.&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span li {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+        span ol {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace;
+                list-style-position: inside; list-style-type: decimal; }
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test continues to validate the li element.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&quot;If the parent element is an ol element, then the li element has an ordinal value. The value attribute is processed relative to the element's parent ol element (q.v.), if there is one. If there is not, the attribute has no effect.&quot;&lt;/blockquote&gt;
+    &lt;p&gt;This reftest verifies that the value attribute has an effect when applied to a list item with an ol parent.&lt;/p&gt;
+    &lt;p&gt;A reftest is necessary because the values of li elements as calculated by the user agent are NOT available programatically.  Only explicitly-set values are then available programatically.&lt;/p&gt;
+    &lt;p&gt;This reftest passes if you see the numbers 1. 2. 3. below the words &quot;Ordered List&quot;&lt;/p&gt;
+
+    &lt;span&gt;
+        &lt;p&gt;Ordered List&lt;/p&gt;
+        &lt;ol&gt;
+            &lt;li&gt;&lt;/li&gt;
+            &lt;li&gt;&lt;/li&gt;
+            &lt;li&gt;&lt;/li&gt;
+        &lt;/ol&gt;
+    &lt;/span&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthelielementgroupinglihtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,205 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;li element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-li-element&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test validates the li element.&lt;/p&gt;
+
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+
+    &lt;span&gt;
+    &lt;menu id=&quot;listmenu&quot;&gt;
+        &lt;li&gt;Command&lt;/li&gt;
+        &lt;li value=&quot;3&quot;&gt;Command&lt;/li&gt;
+    &lt;/menu&gt;
+
+    &lt;menu type=&quot;toolbar&quot; id=&quot;toolbarmenu&quot;&gt;
+        &lt;li&gt;
+            &lt;menu label=&quot;File&quot;&gt;
+                &lt;button type=&quot;button&quot;&gt;New...&lt;/button&gt;
+                &lt;button type=&quot;button&quot;&gt;Open...&lt;/button&gt;
+            &lt;/menu&gt;
+        &lt;/li&gt;
+        &lt;li value=&quot;10&quot;&gt;
+            &lt;menu label=&quot;Help&quot;&gt;
+                &lt;li value = &quot;2&quot;&gt;&lt;a href=&quot;help.html&quot;&gt;Help Me&lt;/a&gt;&lt;/li&gt;
+                &lt;li&gt;&lt;a href=&quot;about.html&quot;&gt;About&lt;/a&gt;&lt;/li&gt;
+            &lt;/menu&gt;
+        &lt;/li&gt;
+    &lt;/menu&gt;
+
+    &lt;p&gt;Unordered List&lt;/p&gt;
+    &lt;ul id=&quot;unordered&quot;&gt;
+        &lt;li id=&quot;test_li&quot;&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ul&gt;
+    &lt;/span&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;basic&quot;&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;start2&quot;&gt;
+        &lt;li value=&quot;2&quot;&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;negative&quot;&gt;
+        &lt;li value=&quot;-10&quot;&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;posFloatDown&quot;&gt;
+        &lt;li value=&quot;4.03&quot;&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;negFloatDown&quot;&gt;
+        &lt;li value=&quot;-4.03&quot;&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;posFloatUp&quot;&gt;
+        &lt;li value=&quot;4.9&quot;&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;negFloatUp&quot;&gt;
+        &lt;li value=&quot;-4.9&quot;&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;exponent&quot;&gt;
+        &lt;li value=&quot;7e2&quot;&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;decimal&quot;&gt;
+        &lt;li value=&quot;.5&quot;&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;letter&quot;&gt;
+        &lt;li value=&quot;A&quot;&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;script&gt;
+        &quot;use strict&quot;;
+
+        var testLI = document.getElementById(&quot;test_li&quot;), testList = [], i = 0;
+
+        // check that prototype matches spec's DOM interface
+        test(function() {
+            assert_equals(Object.getPrototypeOf(testLI), HTMLLIElement.prototype, &quot;HTMLLIElement.prototype should be used for li&quot;);
+        }, &quot;The prototype for li is HTMLLIElement.prototype&quot;);
+
+        // check that &quot;own&quot; property &quot;value&quot; is present
+        test(function() {
+            assert_own_property(testLI,&quot;value&quot;, &quot;li should have a 'value' attribute&quot;);
+        }, &quot;li should have a 'value' attribute&quot;);
+
+        // &quot;The [value] attribute has no default value&quot; so, per https://html.spec.whatwg.org/multipage/#reflect,
+        // the default when unspecified is 0
+        testList = document.querySelectorAll(&quot;#unordered li, #basic li&quot;);
+        test(function() {
+            for(i = 0; i &lt; testList.length; i++) {
+                assert_equals(testList[i].value, 0, &quot;Default (unspecified) value of value is 0.&quot;);
+            }
+        }, &quot;Default (unspecified) value of value is 0.&quot;);
+
+        // &quot;If the value attribute is present, user agents must parse it as an integer, in order to determine the attribute's value.
+        //  If the attribute's value cannot be converted to a number, the attribute must be treated as if it was absent.&quot;
+        // Per https://html.spec.whatwg.org/multipage/#collect-a-sequence-of-characters,
+        //    an integer is parsed by collecting as many digits as possible and then aborting at the first
+        //    non-digit character after the first digit (otherwise, with no beginning digit, it's just an error)
+        // and:  &quot;The value IDL attribute must reflect the value of the value content attribute.&quot;
+
+        // start2's first element has value of 2
+        test(function() {
+            testLI = document.getElementById(&quot;start2&quot;).children[0];
+            assert_equals(testLI.value, 2, &quot;value of 2 -&gt; value of 2&quot;);
+        }, &quot;.value property reflects content attribute - and both parse value of '2' correctly.&quot;);
+
+        // negative's first element has value of -10
+        test(function() {
+            testLI = document.getElementById(&quot;negative&quot;).children[0];
+            assert_equals(testLI.value, -10, &quot;value of -10 -&gt; value of -10&quot;);
+        }, &quot;IDL and content attribute parse value of '-10' correctly.&quot;);
+
+        // posFloatDown's first element has value of 4.03 which should return 4
+        test(function() {
+            testLI = document.getElementById(&quot;posFloatDown&quot;).children[0];
+            assert_equals(testLI.value, 4, &quot;value of 4.03 -&gt; 4&quot;);
+        }, &quot;IDL and content attribute parse value of '4.03' correctly.&quot;);
+
+        // negFloatDown's first element has value of -4.03 which should return -4
+        test(function() {
+            testLI = document.getElementById(&quot;negFloatDown&quot;).children[0];
+            assert_equals(testLI.value, -4, &quot;value of -4.03 -&gt; -4&quot;);
+        }, &quot;IDL and content attribute parse value of '-4.03' correctly.&quot;);
+
+        // posFloatUp's first element has value of 4.9 which should return 4
+        test(function() {
+            testLI = document.getElementById(&quot;posFloatUp&quot;).children[0];
+            assert_equals(testLI.value, 4, &quot;value of 4.9 -&gt; 4&quot;);
+        }, &quot;IDL and content attribute parse value of '4.9' correctly.&quot;);
+
+        // negFloatUp's first element has value of -4.9 which should return -4
+        test(function() {
+            testLI = document.getElementById(&quot;negFloatUp&quot;).children[0];
+            assert_equals(testLI.value, -4, &quot;value of -4.9 -&gt; -4&quot;);
+        }, &quot;IDL and content attribute parse value of '-4.9' correctly.&quot;);
+
+        // exponent's first element has value of 7e2 which should return 7
+        test(function() {
+            testLI = document.getElementById(&quot;exponent&quot;).children[0];
+            assert_equals(testLI.value, 7, &quot;value of 7e2 -&gt; 7&quot;);
+        }, &quot;IDL and content attribute parse value of '7e2' correctly.&quot;);
+
+        // decimal's first element has value of .5 which should return 0
+        test(function() {
+            testLI = document.getElementById(&quot;decimal&quot;).children[0];
+            assert_equals(testLI.value, 0, &quot;value of .5 -&gt; 0 (default)&quot;);
+        }, &quot;IDL and content attribute parse value of '.5' correctly.&quot;);
+
+        // letter's first element has value of A which should return 0
+        test(function() {
+            testLI = document.getElementById(&quot;letter&quot;).children[0];
+            assert_equals(testLI.value, 0, &quot;value of A -&gt; 0 (default)&quot;);
+        }, &quot;IDL and content attribute parse value of 'A' correctly.&quot;);
+
+        // SHOULD I TEST MORE NON-ASCII-DIGIT ENTRIES?
+
+    &lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthelielementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,26 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-001-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-001-ref-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-001-ref.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-001.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002-ref-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002-ref.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-li-element/grouping-li.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,142 @@
</span><ins>+Description
+
+This test validates the ol element.
+
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+list item
+Ordered List
+
+list item
+list item
+
+
+
+
+
+
+
+
+
+
+
+
+list item
+
+PASS The prototype for OL is HTMLOListElement.prototype 
+FAIL 'reversed' property should be defined on OL. assert_own_property: expected property &quot;reversed&quot; missing
+FAIL 'start' property should be defined on OL. assert_own_property: expected property &quot;start&quot; missing
+FAIL 'type' property should be defined on OL. assert_own_property: expected property &quot;type&quot; missing
+PASS OL's 'reversed' IDL property reflects content attribute. 
+PASS OL's 'start' IDL property reflects content attribute. 
+PASS OL's 'type' IDL property reflects content attribute. 
+PASS IDL 'reversed' attribute value false when content attribute absent 
+PASS IDL 'reversed' attribute value true when content attribute exists 
+PASS Changing IDL 'reversed' property changes list's reversed property. 
+PASS Default start value for non-reversed list should be 1 
+PASS IDL and content attribute parse start of '.5' correctly. 
+PASS IDL and content attribute parse start of 'A' correctly. 
+FAIL Default start value (if none provided) for reversed list = child li elements. assert_equals: no start attribute provided -&gt; 3 expected 3 but got 0
+FAIL Default start value (if failed to parse) for reversed list = child li elements. assert_equals: start of A -&gt; 3 (default) expected 3 but got 0
+FAIL Default start value for reversed list = child li elements (even with tons of other child elements). assert_equals: no start attribute -&gt; 3 (default) expected 3 but got 0
+FAIL Adding child element to reversed list adds 1 to start value assert_equals: Adding child element to reversed list adds 1 to start value expected 4 but got 0
+FAIL Deleting child element from reversed list reduces start value by 1 assert_equals: Deleting child element from reversed list reduces start value by 1 expected 2 but got 0
+PASS IDL and content attribute parse start of '2' correctly. 
+PASS IDL and content attribute parse start of '-10' correctly. 
+PASS IDL and content attribute parse start of '4.03' correctly. 
+PASS IDL and content attribute parse start of '-4.03' correctly. 
+PASS IDL and content attribute parse start of '4.9' correctly. 
+PASS IDL and content attribute parse start of '-4.9' correctly. 
+PASS IDL and content attribute parse start of '7e2' correctly. 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolrevreftest001expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-rev-reftest-001-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-rev-reftest-001-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-rev-reftest-001-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,54 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;ol element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-ol-rev-reftest-001.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;OL's reversed attribute creates a descending list.&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span span p {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test continues to validate the ol element.&lt;/p&gt;
+
+    &lt;p&gt;These reftests are necessary because the values of the ol's li children as calculated by the user agent are NOT available programatically. Only explicitly-set values are available programatically. Therefore, we need to check actual rendering against expected rendering.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&quot;The reversed attribute is a boolean attribute. If present, it indicates that the list is a descending list (..., 3, 2, 1). If the attribute is omitted, the list is an ascending list (1, 2, 3, ...).&quot;&lt;/blockquote&gt;
+
+    &lt;p&gt;&lt;strong&gt;This reftest passes if you see an ascending list followed by two descending lists.&lt;/strong&gt;&lt;/p&gt;
+    &lt;p&gt;(Note: each list item has no content; only the sequencing should appear.)&lt;/p&gt;
+
+    &lt;span&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;span&gt;
+        &lt;p&gt;1.&lt;/p&gt;
+        &lt;p&gt;2.&lt;/p&gt;
+        &lt;p&gt;3.&lt;/p&gt;
+    &lt;/span&gt;
+
+    &lt;p&gt;Ordered List - reversed via content attribute&lt;/p&gt;
+    &lt;span&gt;
+        &lt;p&gt;3.&lt;/p&gt;
+        &lt;p&gt;2.&lt;/p&gt;
+        &lt;p&gt;1.&lt;/p&gt;
+    &lt;/span&gt;
+
+    &lt;p&gt;Ordered List - reversed via IDL&lt;/p&gt;
+    &lt;span&gt;
+        &lt;p&gt;3.&lt;/p&gt;
+        &lt;p&gt;2.&lt;/p&gt;
+        &lt;p&gt;1.&lt;/p&gt;
+    &lt;/span&gt;
+
+    &lt;/span&gt;
+
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolrevreftest001refexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-rev-reftest-001-ref-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-rev-reftest-001-ref-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-rev-reftest-001-ref-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,59 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;ol element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-ol-rev-reftest-001-ref.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;OL's reversed attribute creates a descending list.&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span li {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+        span ol {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace;
+                list-style-position: inside; list-style-type: decimal; }
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test continues to validate the ol element.&lt;/p&gt;
+
+    &lt;p&gt;These reftests are necessary because the values of the ol's li children as calculated by the user agent are NOT available programatically. Only explicitly-set values are available programatically. Therefore, we need to check actual rendering against expected rendering.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&quot;The reversed attribute is a boolean attribute. If present, it indicates that the list is a descending list (..., 3, 2, 1). If the attribute is omitted, the list is an ascending list (1, 2, 3, ...).&quot;&lt;/blockquote&gt;
+
+    &lt;p&gt;&lt;strong&gt;This reftest passes if you see an ascending list followed by two descending lists.&lt;/strong&gt;&lt;/p&gt;
+    &lt;p&gt;(Note: each list item has no content; only the sequencing should appear.)&lt;/p&gt;
+
+    &lt;span&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List - reversed via content attribute&lt;/p&gt;
+    &lt;ol reversed=&quot;reversed&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List - reversed via IDL&lt;/p&gt;
+    &lt;ol id=&quot;reverse_me&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;/span&gt;
+
+    &lt;script&gt;
+        document.getElementById(&quot;reverse_me&quot;).reversed = true;
+    &lt;/script&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolrevreftest001refhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-rev-reftest-001-ref.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-rev-reftest-001-ref.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-rev-reftest-001-ref.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,54 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;ol element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-ol-rev-reftest-001.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;OL's reversed attribute creates a descending list.&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span span p {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test continues to validate the ol element.&lt;/p&gt;
+
+    &lt;p&gt;These reftests are necessary because the values of the ol's li children as calculated by the user agent are NOT available programatically. Only explicitly-set values are available programatically. Therefore, we need to check actual rendering against expected rendering.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&quot;The reversed attribute is a boolean attribute. If present, it indicates that the list is a descending list (..., 3, 2, 1). If the attribute is omitted, the list is an ascending list (1, 2, 3, ...).&quot;&lt;/blockquote&gt;
+
+    &lt;p&gt;&lt;strong&gt;This reftest passes if you see an ascending list followed by two descending lists.&lt;/strong&gt;&lt;/p&gt;
+    &lt;p&gt;(Note: each list item has no content; only the sequencing should appear.)&lt;/p&gt;
+
+    &lt;span&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;span&gt;
+        &lt;p&gt;1.&lt;/p&gt;
+        &lt;p&gt;2.&lt;/p&gt;
+        &lt;p&gt;3.&lt;/p&gt;
+    &lt;/span&gt;
+
+    &lt;p&gt;Ordered List - reversed via content attribute&lt;/p&gt;
+    &lt;span&gt;
+        &lt;p&gt;3.&lt;/p&gt;
+        &lt;p&gt;2.&lt;/p&gt;
+        &lt;p&gt;1.&lt;/p&gt;
+    &lt;/span&gt;
+
+    &lt;p&gt;Ordered List - reversed via IDL&lt;/p&gt;
+    &lt;span&gt;
+        &lt;p&gt;3.&lt;/p&gt;
+        &lt;p&gt;2.&lt;/p&gt;
+        &lt;p&gt;1.&lt;/p&gt;
+    &lt;/span&gt;
+
+    &lt;/span&gt;
+
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolrevreftest001html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-rev-reftest-001.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-rev-reftest-001.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-rev-reftest-001.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,59 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;ol element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-ol-rev-reftest-001-ref.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;OL's reversed attribute creates a descending list.&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span li {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+        span ol {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace;
+                list-style-position: inside; list-style-type: decimal; }
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test continues to validate the ol element.&lt;/p&gt;
+
+    &lt;p&gt;These reftests are necessary because the values of the ol's li children as calculated by the user agent are NOT available programatically. Only explicitly-set values are available programatically. Therefore, we need to check actual rendering against expected rendering.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&quot;The reversed attribute is a boolean attribute. If present, it indicates that the list is a descending list (..., 3, 2, 1). If the attribute is omitted, the list is an ascending list (1, 2, 3, ...).&quot;&lt;/blockquote&gt;
+
+    &lt;p&gt;&lt;strong&gt;This reftest passes if you see an ascending list followed by two descending lists.&lt;/strong&gt;&lt;/p&gt;
+    &lt;p&gt;(Note: each list item has no content; only the sequencing should appear.)&lt;/p&gt;
+
+    &lt;span&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List - reversed via content attribute&lt;/p&gt;
+    &lt;ol reversed=&quot;reversed&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List - reversed via IDL&lt;/p&gt;
+    &lt;ol id=&quot;reverse_me&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;/span&gt;
+
+    &lt;script&gt;
+        document.getElementById(&quot;reverse_me&quot;).reversed = true;
+    &lt;/script&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolstartreftest001expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-001-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-001-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-001-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,58 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;ol element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-ol-start-reftest-001.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;Sequences produced by calculated values for LI elements within OL match spec's expectations. (part one)&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span span p {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;p&gt;This test continues to validate the ol element. This reftest is necessary because the values of the ol's li children as calculated and displayed by the user agent are NOT systematically available programatically. Only explicitly-set values are available programatically. Therefore, we need to check actual rendering against expected rendering.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&lt;p&gt;The first item in the list has the ordinal value given by the ol element's start attribute, unless that li element has a value attribute with a value that can be successfully parsed, in which case it has the ordinal value given by that value attribute.&lt;/p&gt;
+                &lt;p&gt;Each subsequent item in the list has the ordinal value given by its value attribute, if it has one, or, if it doesn't, the ordinal value of the previous item, plus one if the reversed is absent, or minus one if it is present.&lt;/p&gt;&lt;/blockquote&gt;
+
+    &lt;p&gt;&lt;strong&gt;This reftest passes if each list's items are numbered identically to the horizontal sequence immediately above those list items.&lt;/strong&gt;&lt;/p&gt;
+    &lt;p&gt;(Note: each list item has no content; only the sequencing should appear.)&lt;/p&gt;
+
+    &lt;span&gt;
+
+    &lt;p&gt;2, 3, 4 (ol has start attribute of 2)&lt;/p&gt;
+    &lt;span&gt;
+        &lt;p&gt;2.&lt;/p&gt;
+        &lt;p&gt;3.&lt;/p&gt;
+        &lt;p&gt;4.&lt;/p&gt;
+    &lt;/span&gt;
+
+    &lt;p&gt;-9, -8, -7 (ol has start attribute of -9)&lt;/p&gt;
+    &lt;span&gt;
+        &lt;p&gt;-9.&lt;/p&gt;
+        &lt;p&gt;-8.&lt;/p&gt;
+        &lt;p&gt;-7.&lt;/p&gt;
+    &lt;/span&gt;
+
+    &lt;p&gt;1000, 1001, 1002 (list's start attribute of 1000 provided by JavaScript)&lt;/p&gt;
+    &lt;span&gt;
+        &lt;p&gt;1000.&lt;/p&gt;
+        &lt;p&gt;1001.&lt;/p&gt;
+        &lt;p&gt;1002.&lt;/p&gt;
+    &lt;/span&gt;
+
+    &lt;p&gt;2, 1, 9 (each list item has a specified value attribute, list has a start attribute of 1000)&lt;/p&gt;
+    &lt;span&gt;
+        &lt;p&gt;2.&lt;/p&gt;
+        &lt;p&gt;1.&lt;/p&gt;
+        &lt;p&gt;9.&lt;/p&gt;
+    &lt;/span&gt;
+
+    &lt;/span&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolstartreftest001refexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-001-ref-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-001-ref-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-001-ref-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,64 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;ol element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-ol-start-reftest-001-ref.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;Sequences produced by calculated values for LI elements within OL match spec's expectations (part one).&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span li {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+        span ol {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace;
+                list-style-position: inside; list-style-type: decimal; }
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;p&gt;This test continues to validate the ol element. This reftest is necessary because the values of the ol's li children as calculated and displayed by the user agent are NOT systematically available programatically. Only explicitly-set values are available programatically. Therefore, we need to check actual rendering against expected rendering.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&lt;p&gt;The first item in the list has the ordinal value given by the ol element's start attribute, unless that li element has a value attribute with a value that can be successfully parsed, in which case it has the ordinal value given by that value attribute.&lt;/p&gt;
+                &lt;p&gt;Each subsequent item in the list has the ordinal value given by its value attribute, if it has one, or, if it doesn't, the ordinal value of the previous item, plus one if the reversed is absent, or minus one if it is present.&lt;/p&gt;&lt;/blockquote&gt;
+
+    &lt;p&gt;&lt;strong&gt;This reftest passes if each list's items are numbered identically to the horizontal sequence immediately above those list items.&lt;/strong&gt;&lt;/p&gt;
+    &lt;p&gt;(Note: each list item has no content; only the sequencing should appear.)&lt;/p&gt;
+
+    &lt;span&gt;
+
+    &lt;p&gt;2, 3, 4 (ol has start attribute of 2)&lt;/p&gt;
+    &lt;ol start=&quot;2&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;-9, -8, -7 (ol has start attribute of -9)&lt;/p&gt;
+    &lt;ol start=&quot;-9&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;1000, 1001, 1002 (list's start attribute of 1000 provided by JavaScript)&lt;/p&gt;
+    &lt;ol id=&quot;start_me&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;2, 1, 9 (each list item has a specified value attribute, list has a start attribute of 1000)&lt;/p&gt;
+    &lt;ol istart=&quot;1000&quot;&gt;
+        &lt;li value=&quot;2&quot;&gt;&lt;/li&gt;
+        &lt;li value=&quot;1&quot;&gt;&lt;/li&gt;
+        &lt;li value=&quot;9&quot;&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;/span&gt;
+
+    &lt;script&gt;
+        document.getElementById(&quot;start_me&quot;).start = 1000;
+    &lt;/script&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolstartreftest001refhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-001-ref.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-001-ref.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-001-ref.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,58 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;ol element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-ol-start-reftest-001.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;Sequences produced by calculated values for LI elements within OL match spec's expectations. (part one)&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span span p {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;p&gt;This test continues to validate the ol element. This reftest is necessary because the values of the ol's li children as calculated and displayed by the user agent are NOT systematically available programatically. Only explicitly-set values are available programatically. Therefore, we need to check actual rendering against expected rendering.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&lt;p&gt;The first item in the list has the ordinal value given by the ol element's start attribute, unless that li element has a value attribute with a value that can be successfully parsed, in which case it has the ordinal value given by that value attribute.&lt;/p&gt;
+                &lt;p&gt;Each subsequent item in the list has the ordinal value given by its value attribute, if it has one, or, if it doesn't, the ordinal value of the previous item, plus one if the reversed is absent, or minus one if it is present.&lt;/p&gt;&lt;/blockquote&gt;
+
+    &lt;p&gt;&lt;strong&gt;This reftest passes if each list's items are numbered identically to the horizontal sequence immediately above those list items.&lt;/strong&gt;&lt;/p&gt;
+    &lt;p&gt;(Note: each list item has no content; only the sequencing should appear.)&lt;/p&gt;
+
+    &lt;span&gt;
+
+    &lt;p&gt;2, 3, 4 (ol has start attribute of 2)&lt;/p&gt;
+    &lt;span&gt;
+        &lt;p&gt;2.&lt;/p&gt;
+        &lt;p&gt;3.&lt;/p&gt;
+        &lt;p&gt;4.&lt;/p&gt;
+    &lt;/span&gt;
+
+    &lt;p&gt;-9, -8, -7 (ol has start attribute of -9)&lt;/p&gt;
+    &lt;span&gt;
+        &lt;p&gt;-9.&lt;/p&gt;
+        &lt;p&gt;-8.&lt;/p&gt;
+        &lt;p&gt;-7.&lt;/p&gt;
+    &lt;/span&gt;
+
+    &lt;p&gt;1000, 1001, 1002 (list's start attribute of 1000 provided by JavaScript)&lt;/p&gt;
+    &lt;span&gt;
+        &lt;p&gt;1000.&lt;/p&gt;
+        &lt;p&gt;1001.&lt;/p&gt;
+        &lt;p&gt;1002.&lt;/p&gt;
+    &lt;/span&gt;
+
+    &lt;p&gt;2, 1, 9 (each list item has a specified value attribute, list has a start attribute of 1000)&lt;/p&gt;
+    &lt;span&gt;
+        &lt;p&gt;2.&lt;/p&gt;
+        &lt;p&gt;1.&lt;/p&gt;
+        &lt;p&gt;9.&lt;/p&gt;
+    &lt;/span&gt;
+
+    &lt;/span&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolstartreftest001html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-001.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-001.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-001.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,64 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;ol element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-ol-start-reftest-001-ref.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;Sequences produced by calculated values for LI elements within OL match spec's expectations (part one).&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span li {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+        span ol {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace;
+                list-style-position: inside; list-style-type: decimal; }
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;p&gt;This test continues to validate the ol element. This reftest is necessary because the values of the ol's li children as calculated and displayed by the user agent are NOT systematically available programatically. Only explicitly-set values are available programatically. Therefore, we need to check actual rendering against expected rendering.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&lt;p&gt;The first item in the list has the ordinal value given by the ol element's start attribute, unless that li element has a value attribute with a value that can be successfully parsed, in which case it has the ordinal value given by that value attribute.&lt;/p&gt;
+                &lt;p&gt;Each subsequent item in the list has the ordinal value given by its value attribute, if it has one, or, if it doesn't, the ordinal value of the previous item, plus one if the reversed is absent, or minus one if it is present.&lt;/p&gt;&lt;/blockquote&gt;
+
+    &lt;p&gt;&lt;strong&gt;This reftest passes if each list's items are numbered identically to the horizontal sequence immediately above those list items.&lt;/strong&gt;&lt;/p&gt;
+    &lt;p&gt;(Note: each list item has no content; only the sequencing should appear.)&lt;/p&gt;
+
+    &lt;span&gt;
+
+    &lt;p&gt;2, 3, 4 (ol has start attribute of 2)&lt;/p&gt;
+    &lt;ol start=&quot;2&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;-9, -8, -7 (ol has start attribute of -9)&lt;/p&gt;
+    &lt;ol start=&quot;-9&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;1000, 1001, 1002 (list's start attribute of 1000 provided by JavaScript)&lt;/p&gt;
+    &lt;ol id=&quot;start_me&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;2, 1, 9 (each list item has a specified value attribute, list has a start attribute of 1000)&lt;/p&gt;
+    &lt;ol istart=&quot;1000&quot;&gt;
+        &lt;li value=&quot;2&quot;&gt;&lt;/li&gt;
+        &lt;li value=&quot;1&quot;&gt;&lt;/li&gt;
+        &lt;li value=&quot;9&quot;&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;/span&gt;
+
+    &lt;script&gt;
+        document.getElementById(&quot;start_me&quot;).start = 1000;
+    &lt;/script&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolstartreftest002expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-002-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-002-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-002-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,58 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;ol element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-ol-start-reftest-002.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;Sequences produced by calculated values for LI elements within OL match spec's expectations. (part two)&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span span p {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;p&gt;This test continues to validate the ol element. This reftest is necessary because the values of the ol's li children as calculated and displayed by the user agent are NOT systematically available programatically. Only explicitly-set values are available programatically. Therefore, we need to check actual rendering against expected rendering.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&lt;p&gt;The first item in the list has the ordinal value given by the ol element's start attribute, unless that li element has a value attribute with a value that can be successfully parsed, in which case it has the ordinal value given by that value attribute.&lt;/p&gt;
+                &lt;p&gt;Each subsequent item in the list has the ordinal value given by its value attribute, if it has one, or, if it doesn't, the ordinal value of the previous item, plus one if the reversed is absent, or minus one if it is present.&lt;/p&gt;&lt;/blockquote&gt;
+
+    &lt;p&gt;&lt;strong&gt;This reftest passes if each list's items are numbered identically to the horizontal sequence immediately above those list items.&lt;/strong&gt;&lt;/p&gt;
+    &lt;p&gt;(Note: each list item has no content; only the sequencing should appear.)&lt;/p&gt;
+
+    &lt;span&gt;
+
+    &lt;p&gt;4, 5, 6 (ol has start attribute of 2 which is overridden by first list item's value attribute of 4)&lt;/p&gt;
+    &lt;span&gt;
+        &lt;p&gt;4.&lt;/p&gt;
+        &lt;p&gt;5.&lt;/p&gt;
+        &lt;p&gt;6.&lt;/p&gt;
+    &lt;/span&gt;
+
+    &lt;p&gt;4, 5, 6 (ol has start attribute of -10 which is overridden by first list item's value attribute of 4)&lt;/p&gt;
+    &lt;span&gt;
+        &lt;p&gt;4.&lt;/p&gt;
+        &lt;p&gt;5.&lt;/p&gt;
+        &lt;p&gt;6.&lt;/p&gt;
+    &lt;/span&gt;
+
+    &lt;p&gt;1, 5, 6 (2nd list item has value attribute of 5)&lt;/p&gt;
+    &lt;span&gt;
+        &lt;p&gt;1.&lt;/p&gt;
+        &lt;p&gt;5.&lt;/p&gt;
+        &lt;p&gt;6.&lt;/p&gt;
+    &lt;/span&gt;
+
+    &lt;p&gt;-1, -5, -4 (list has a start attribute of -1, and 2nd list item has value attribute of -5)&lt;/p&gt;
+    &lt;span&gt;
+        &lt;p&gt;-1.&lt;/p&gt;
+        &lt;p&gt;-5.&lt;/p&gt;
+        &lt;p&gt;-4.&lt;/p&gt;
+    &lt;/span&gt;
+
+    &lt;/span&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolstartreftest002refexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-002-ref-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-002-ref-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-002-ref-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,61 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;ol element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-ol-start-reftest-002-ref.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;Sequences produced by calculated values for LI elements within OL match spec's expectations. (part two)&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span li {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+        span ol {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace;
+                list-style-position: inside; list-style-type: decimal; }
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;p&gt;This test continues to validate the ol element. This reftest is necessary because the values of the ol's li children as calculated and displayed by the user agent are NOT systematically available programatically. Only explicitly-set values are available programatically. Therefore, we need to check actual rendering against expected rendering.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&lt;p&gt;The first item in the list has the ordinal value given by the ol element's start attribute, unless that li element has a value attribute with a value that can be successfully parsed, in which case it has the ordinal value given by that value attribute.&lt;/p&gt;
+                &lt;p&gt;Each subsequent item in the list has the ordinal value given by its value attribute, if it has one, or, if it doesn't, the ordinal value of the previous item, plus one if the reversed is absent, or minus one if it is present.&lt;/p&gt;&lt;/blockquote&gt;
+
+    &lt;p&gt;&lt;strong&gt;This reftest passes if each list's items are numbered identically to the horizontal sequence immediately above those list items.&lt;/strong&gt;&lt;/p&gt;
+    &lt;p&gt;(Note: each list item has no content; only the sequencing should appear.)&lt;/p&gt;
+
+    &lt;span&gt;
+
+    &lt;p&gt;4, 5, 6 (ol has start attribute of 2 which is overridden by first list item's value attribute of 4)&lt;/p&gt;
+    &lt;ol start=&quot;2&quot;&gt;
+        &lt;li value=&quot;4&quot;&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;4, 5, 6 (ol has start attribute of -10 which is overridden by first list item's value attribute of 4)&lt;/p&gt;
+    &lt;ol start=&quot;-10&quot;&gt;
+        &lt;li value=&quot;4&quot;&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;1, 5, 6 (2nd list item has value attribute of 5)&lt;/p&gt;
+    &lt;ol&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li value=&quot;5&quot;&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;-1, -5, -4 (list has a start attribute of -1, and 2nd list item has value attribute of -5)&lt;/p&gt;
+    &lt;ol start=&quot;-1&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li value=&quot;-5&quot;&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;/span&gt;
+
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolstartreftest002refhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-002-ref.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-002-ref.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-002-ref.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,58 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;ol element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-ol-start-reftest-002.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;Sequences produced by calculated values for LI elements within OL match spec's expectations. (part two)&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span span p {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;p&gt;This test continues to validate the ol element. This reftest is necessary because the values of the ol's li children as calculated and displayed by the user agent are NOT systematically available programatically. Only explicitly-set values are available programatically. Therefore, we need to check actual rendering against expected rendering.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&lt;p&gt;The first item in the list has the ordinal value given by the ol element's start attribute, unless that li element has a value attribute with a value that can be successfully parsed, in which case it has the ordinal value given by that value attribute.&lt;/p&gt;
+                &lt;p&gt;Each subsequent item in the list has the ordinal value given by its value attribute, if it has one, or, if it doesn't, the ordinal value of the previous item, plus one if the reversed is absent, or minus one if it is present.&lt;/p&gt;&lt;/blockquote&gt;
+
+    &lt;p&gt;&lt;strong&gt;This reftest passes if each list's items are numbered identically to the horizontal sequence immediately above those list items.&lt;/strong&gt;&lt;/p&gt;
+    &lt;p&gt;(Note: each list item has no content; only the sequencing should appear.)&lt;/p&gt;
+
+    &lt;span&gt;
+
+    &lt;p&gt;4, 5, 6 (ol has start attribute of 2 which is overridden by first list item's value attribute of 4)&lt;/p&gt;
+    &lt;span&gt;
+        &lt;p&gt;4.&lt;/p&gt;
+        &lt;p&gt;5.&lt;/p&gt;
+        &lt;p&gt;6.&lt;/p&gt;
+    &lt;/span&gt;
+
+    &lt;p&gt;4, 5, 6 (ol has start attribute of -10 which is overridden by first list item's value attribute of 4)&lt;/p&gt;
+    &lt;span&gt;
+        &lt;p&gt;4.&lt;/p&gt;
+        &lt;p&gt;5.&lt;/p&gt;
+        &lt;p&gt;6.&lt;/p&gt;
+    &lt;/span&gt;
+
+    &lt;p&gt;1, 5, 6 (2nd list item has value attribute of 5)&lt;/p&gt;
+    &lt;span&gt;
+        &lt;p&gt;1.&lt;/p&gt;
+        &lt;p&gt;5.&lt;/p&gt;
+        &lt;p&gt;6.&lt;/p&gt;
+    &lt;/span&gt;
+
+    &lt;p&gt;-1, -5, -4 (list has a start attribute of -1, and 2nd list item has value attribute of -5)&lt;/p&gt;
+    &lt;span&gt;
+        &lt;p&gt;-1.&lt;/p&gt;
+        &lt;p&gt;-5.&lt;/p&gt;
+        &lt;p&gt;-4.&lt;/p&gt;
+    &lt;/span&gt;
+
+    &lt;/span&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolstartreftest002html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-002.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-002.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-002.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,61 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;ol element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-ol-start-reftest-002-ref.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;Sequences produced by calculated values for LI elements within OL match spec's expectations. (part two)&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span li {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+        span ol {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace;
+                list-style-position: inside; list-style-type: decimal; }
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;p&gt;This test continues to validate the ol element. This reftest is necessary because the values of the ol's li children as calculated and displayed by the user agent are NOT systematically available programatically. Only explicitly-set values are available programatically. Therefore, we need to check actual rendering against expected rendering.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&lt;p&gt;The first item in the list has the ordinal value given by the ol element's start attribute, unless that li element has a value attribute with a value that can be successfully parsed, in which case it has the ordinal value given by that value attribute.&lt;/p&gt;
+                &lt;p&gt;Each subsequent item in the list has the ordinal value given by its value attribute, if it has one, or, if it doesn't, the ordinal value of the previous item, plus one if the reversed is absent, or minus one if it is present.&lt;/p&gt;&lt;/blockquote&gt;
+
+    &lt;p&gt;&lt;strong&gt;This reftest passes if each list's items are numbered identically to the horizontal sequence immediately above those list items.&lt;/strong&gt;&lt;/p&gt;
+    &lt;p&gt;(Note: each list item has no content; only the sequencing should appear.)&lt;/p&gt;
+
+    &lt;span&gt;
+
+    &lt;p&gt;4, 5, 6 (ol has start attribute of 2 which is overridden by first list item's value attribute of 4)&lt;/p&gt;
+    &lt;ol start=&quot;2&quot;&gt;
+        &lt;li value=&quot;4&quot;&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;4, 5, 6 (ol has start attribute of -10 which is overridden by first list item's value attribute of 4)&lt;/p&gt;
+    &lt;ol start=&quot;-10&quot;&gt;
+        &lt;li value=&quot;4&quot;&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;1, 5, 6 (2nd list item has value attribute of 5)&lt;/p&gt;
+    &lt;ol&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li value=&quot;5&quot;&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;-1, -5, -4 (list has a start attribute of -1, and 2nd list item has value attribute of -5)&lt;/p&gt;
+    &lt;ol start=&quot;-1&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li value=&quot;-5&quot;&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;/span&gt;
+
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingoltypereftest001expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-001-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-001-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-001-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,56 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;ol element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-ol-type-reftest-001.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;OL's type attribute defaults to decimal state.&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span span p {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;p&gt;This test continues to validate the ol element. This reftest is necessary because the values of the ol's li children as calculated and displayed by the user agent are NOT systematically available programatically. Only explicitly-set values are available programatically. Therefore, we need to check actual rendering against expected rendering.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&lt;p&gt;The type attribute represents the state given in the cell in the second column of the row whose first cell matches the attribute's value; if none of the cells match, or if the attribute is omitted, then the attribute represents the decimal state.&lt;/p&gt;&lt;/blockquote&gt;
+
+    &lt;p&gt;&lt;strong&gt;This reftest passes if each list's items are labelled identically to the horizontal sequence immediately above those list items:&lt;/strong&gt;&lt;/p&gt;
+    &lt;p&gt;(Note: each list item has no content; only the sequencing should appear.)&lt;/p&gt;
+
+    &lt;span&gt;
+        &lt;p&gt;1, 2, 3 (default value for unspecified type attribute is 'decimal')&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;1.&lt;/p&gt;
+            &lt;p&gt;2.&lt;/p&gt;
+            &lt;p&gt;3.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;1, 2, 3 (default value for type attribute not listed in spec table is 'decimal' (type = &quot;!&quot;))&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;1.&lt;/p&gt;
+            &lt;p&gt;2.&lt;/p&gt;
+            &lt;p&gt;3.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;1, 2, 3 (default value for type attribute not listed in spec table is 'decimal' (type = &quot;2&quot;))&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;1.&lt;/p&gt;
+            &lt;p&gt;2.&lt;/p&gt;
+            &lt;p&gt;3.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;1, 2, 3 (default value for type attribute not listed in spec table is 'decimal' (type = &quot;b&quot;))&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;1.&lt;/p&gt;
+            &lt;p&gt;2.&lt;/p&gt;
+            &lt;p&gt;3.&lt;/p&gt;
+        &lt;/span&gt;
+
+    &lt;/span&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingoltypereftest001refexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-001-ref-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-001-ref-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-001-ref-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,58 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;ol element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-ol-type-reftest-001-ref.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;OL's type attribute defaults to decimal state.&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span li {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+        span ol {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace; list-style-position: inside; }
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;p&gt;This test continues to validate the ol element. This reftest is necessary because the values of the ol's li children as calculated and displayed by the user agent are NOT systematically available programatically. Only explicitly-set values are available programatically. Therefore, we need to check actual rendering against expected rendering.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&lt;p&gt;The type attribute represents the state given in the cell in the second column of the row whose first cell matches the attribute's value; if none of the cells match, or if the attribute is omitted, then the attribute represents the decimal state.&lt;/p&gt;&lt;/blockquote&gt;
+
+    &lt;p&gt;&lt;strong&gt;This reftest passes if each list's items are labelled identically to the horizontal sequence immediately above those list items:&lt;/strong&gt;&lt;/p&gt;
+    &lt;p&gt;(Note: each list item has no content; only the sequencing should appear.)&lt;/p&gt;
+
+    &lt;span&gt;
+
+    &lt;p&gt;1, 2, 3 (default value for unspecified type attribute is 'decimal')&lt;/p&gt;
+    &lt;ol&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;1, 2, 3 (default value for type attribute not listed in spec table is 'decimal' (type = &quot;!&quot;))&lt;/p&gt;
+    &lt;ol type=&quot;!&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;1, 2, 3 (default value for type attribute not listed in spec table is 'decimal' (type = &quot;2&quot;))&lt;/p&gt;
+    &lt;ol type=&quot;2&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;1, 2, 3 (default value for type attribute not listed in spec table is 'decimal' (type = &quot;b&quot;))&lt;/p&gt;
+    &lt;ol type=&quot;b&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;/span&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingoltypereftest001refhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-001-ref.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-001-ref.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-001-ref.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,56 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;ol element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-ol-type-reftest-001.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;OL's type attribute defaults to decimal state.&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span span p {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;p&gt;This test continues to validate the ol element. This reftest is necessary because the values of the ol's li children as calculated and displayed by the user agent are NOT systematically available programatically. Only explicitly-set values are available programatically. Therefore, we need to check actual rendering against expected rendering.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&lt;p&gt;The type attribute represents the state given in the cell in the second column of the row whose first cell matches the attribute's value; if none of the cells match, or if the attribute is omitted, then the attribute represents the decimal state.&lt;/p&gt;&lt;/blockquote&gt;
+
+    &lt;p&gt;&lt;strong&gt;This reftest passes if each list's items are labelled identically to the horizontal sequence immediately above those list items:&lt;/strong&gt;&lt;/p&gt;
+    &lt;p&gt;(Note: each list item has no content; only the sequencing should appear.)&lt;/p&gt;
+
+    &lt;span&gt;
+        &lt;p&gt;1, 2, 3 (default value for unspecified type attribute is 'decimal')&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;1.&lt;/p&gt;
+            &lt;p&gt;2.&lt;/p&gt;
+            &lt;p&gt;3.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;1, 2, 3 (default value for type attribute not listed in spec table is 'decimal' (type = &quot;!&quot;))&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;1.&lt;/p&gt;
+            &lt;p&gt;2.&lt;/p&gt;
+            &lt;p&gt;3.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;1, 2, 3 (default value for type attribute not listed in spec table is 'decimal' (type = &quot;2&quot;))&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;1.&lt;/p&gt;
+            &lt;p&gt;2.&lt;/p&gt;
+            &lt;p&gt;3.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;1, 2, 3 (default value for type attribute not listed in spec table is 'decimal' (type = &quot;b&quot;))&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;1.&lt;/p&gt;
+            &lt;p&gt;2.&lt;/p&gt;
+            &lt;p&gt;3.&lt;/p&gt;
+        &lt;/span&gt;
+
+    &lt;/span&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingoltypereftest001html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-001.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-001.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-001.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,58 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;ol element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-ol-type-reftest-001-ref.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;OL's type attribute defaults to decimal state.&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span li {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+        span ol {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace; list-style-position: inside; }
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;p&gt;This test continues to validate the ol element. This reftest is necessary because the values of the ol's li children as calculated and displayed by the user agent are NOT systematically available programatically. Only explicitly-set values are available programatically. Therefore, we need to check actual rendering against expected rendering.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&lt;p&gt;The type attribute represents the state given in the cell in the second column of the row whose first cell matches the attribute's value; if none of the cells match, or if the attribute is omitted, then the attribute represents the decimal state.&lt;/p&gt;&lt;/blockquote&gt;
+
+    &lt;p&gt;&lt;strong&gt;This reftest passes if each list's items are labelled identically to the horizontal sequence immediately above those list items:&lt;/strong&gt;&lt;/p&gt;
+    &lt;p&gt;(Note: each list item has no content; only the sequencing should appear.)&lt;/p&gt;
+
+    &lt;span&gt;
+
+    &lt;p&gt;1, 2, 3 (default value for unspecified type attribute is 'decimal')&lt;/p&gt;
+    &lt;ol&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;1, 2, 3 (default value for type attribute not listed in spec table is 'decimal' (type = &quot;!&quot;))&lt;/p&gt;
+    &lt;ol type=&quot;!&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;1, 2, 3 (default value for type attribute not listed in spec table is 'decimal' (type = &quot;2&quot;))&lt;/p&gt;
+    &lt;ol type=&quot;2&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;1, 2, 3 (default value for type attribute not listed in spec table is 'decimal' (type = &quot;b&quot;))&lt;/p&gt;
+    &lt;ol type=&quot;b&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;/span&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingoltypereftest002expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-002-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-002-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-002-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,63 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;ol element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-ol-type-reftest-002.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;List items are rendered consistently with the state of the type attribute.&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span span p {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;p&gt;This test continues to validate the ol element. This reftest is necessary because the values of the ol's li children as calculated and displayed by the user agent are NOT systematically available programatically. Only explicitly-set values are available programatically. Therefore, we need to check actual rendering against expected rendering.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;User agents should render the items of the list in a manner consistent with the state of the type attribute of the ol element.&lt;/blockquote&gt;
+
+    &lt;p&gt;&lt;strong&gt;This reftest passes if each list's items are labelled identically to the horizontal sequence immediately above those list items:&lt;/strong&gt;&lt;/p&gt;
+    &lt;p&gt;(Note: each list item has no content; only the sequencing should appear.)&lt;/p&gt;
+
+    &lt;span&gt;
+        &lt;p&gt;1, 2, 3 (type attribute of &quot;1&quot; results in decimal type)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;1.&lt;/p&gt;
+            &lt;p&gt;2.&lt;/p&gt;
+            &lt;p&gt;3.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;aa, ab, ac (type attribute of &quot;a&quot; results in lower case latin alphabet, start = 27)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;aa.&lt;/p&gt;
+            &lt;p&gt;ab.&lt;/p&gt;
+            &lt;p&gt;ac.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;AA, AB, AC (type attribute of &quot;A&quot; results in upper case latin alphabet, start = 27)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;AA.&lt;/p&gt;
+            &lt;p&gt;AB.&lt;/p&gt;
+            &lt;p&gt;AC.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;i, v, c (type attribute of &quot;i&quot; results in lower case roman alphabet, list values = 1, 5, 100)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;i.&lt;/p&gt;
+            &lt;p&gt;v.&lt;/p&gt;
+            &lt;p&gt;c.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;I, V, C (type attribute of &quot;I&quot; results in upper case roman alphabet, list values = 1, 5, 100)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;I.&lt;/p&gt;
+            &lt;p&gt;V.&lt;/p&gt;
+            &lt;p&gt;C.&lt;/p&gt;
+        &lt;/span&gt;
+
+    &lt;/span&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingoltypereftest002refexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-002-ref-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-002-ref-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-002-ref-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,65 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;ol element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-ol-type-reftest-002-ref.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;List items are rendered consistently with the state of the type attribute.&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span li {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+        span ol {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace; list-style-position: inside;}
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;p&gt;This test continues to validate the ol element. This reftest is necessary because the values of the ol's li children as calculated and displayed by the user agent are NOT systematically available programatically. Only explicitly-set values are available programatically. Therefore, we need to check actual rendering against expected rendering.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;User agents should render the items of the list in a manner consistent with the state of the type attribute of the ol element.&lt;/blockquote&gt;
+
+    &lt;p&gt;&lt;strong&gt;This reftest passes if each list's items are labelled identically to the horizontal sequence immediately above those list items:&lt;/strong&gt;&lt;/p&gt;
+    &lt;p&gt;(Note: each list item has no content; only the sequencing should appear.)&lt;/p&gt;
+
+    &lt;span&gt;
+
+    &lt;p&gt;1, 2, 3 (type attribute of &quot;1&quot; results in decimal type)&lt;/p&gt;
+    &lt;ol type=&quot;1&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;aa, ab, ac (type attribute of &quot;a&quot; results in lower case latin alphabet, start = 27)&lt;/p&gt;
+    &lt;ol type=&quot;a&quot; start=&quot;27&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;AA, AB, AC (type attribute of &quot;A&quot; results in upper case latin alphabet, start = 27)&lt;/p&gt;
+    &lt;ol type=&quot;A&quot; start=&quot;27&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;i, v, c (type attribute of &quot;i&quot; results in lower case roman alphabet, list values = 1, 5, 100)&lt;/p&gt;
+    &lt;ol type=&quot;i&quot;&gt;
+        &lt;li value=&quot;1&quot;&gt;&lt;/li&gt;
+        &lt;li value=&quot;5&quot;&gt;&lt;/li&gt;
+        &lt;li value=&quot;100&quot;&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;I, V, C (type attribute of &quot;I&quot; results in upper case roman alphabet, list values = 1, 5, 100)&lt;/p&gt;
+    &lt;ol type=&quot;I&quot;&gt;
+        &lt;li value=&quot;1&quot;&gt;&lt;/li&gt;
+        &lt;li value=&quot;5&quot;&gt;&lt;/li&gt;
+        &lt;li value=&quot;100&quot;&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;/span&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingoltypereftest002refhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-002-ref.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-002-ref.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-002-ref.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,63 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;ol element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-ol-type-reftest-002.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;List items are rendered consistently with the state of the type attribute.&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span span p {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;p&gt;This test continues to validate the ol element. This reftest is necessary because the values of the ol's li children as calculated and displayed by the user agent are NOT systematically available programatically. Only explicitly-set values are available programatically. Therefore, we need to check actual rendering against expected rendering.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;User agents should render the items of the list in a manner consistent with the state of the type attribute of the ol element.&lt;/blockquote&gt;
+
+    &lt;p&gt;&lt;strong&gt;This reftest passes if each list's items are labelled identically to the horizontal sequence immediately above those list items:&lt;/strong&gt;&lt;/p&gt;
+    &lt;p&gt;(Note: each list item has no content; only the sequencing should appear.)&lt;/p&gt;
+
+    &lt;span&gt;
+        &lt;p&gt;1, 2, 3 (type attribute of &quot;1&quot; results in decimal type)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;1.&lt;/p&gt;
+            &lt;p&gt;2.&lt;/p&gt;
+            &lt;p&gt;3.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;aa, ab, ac (type attribute of &quot;a&quot; results in lower case latin alphabet, start = 27)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;aa.&lt;/p&gt;
+            &lt;p&gt;ab.&lt;/p&gt;
+            &lt;p&gt;ac.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;AA, AB, AC (type attribute of &quot;A&quot; results in upper case latin alphabet, start = 27)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;AA.&lt;/p&gt;
+            &lt;p&gt;AB.&lt;/p&gt;
+            &lt;p&gt;AC.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;i, v, c (type attribute of &quot;i&quot; results in lower case roman alphabet, list values = 1, 5, 100)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;i.&lt;/p&gt;
+            &lt;p&gt;v.&lt;/p&gt;
+            &lt;p&gt;c.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;I, V, C (type attribute of &quot;I&quot; results in upper case roman alphabet, list values = 1, 5, 100)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;I.&lt;/p&gt;
+            &lt;p&gt;V.&lt;/p&gt;
+            &lt;p&gt;C.&lt;/p&gt;
+        &lt;/span&gt;
+
+    &lt;/span&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingoltypereftest002html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-002.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-002.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-002.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,65 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;ol element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-ol-type-reftest-002-ref.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;List items are rendered consistently with the state of the type attribute.&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span li {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+        span ol {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace; list-style-position: inside;}
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;p&gt;This test continues to validate the ol element. This reftest is necessary because the values of the ol's li children as calculated and displayed by the user agent are NOT systematically available programatically. Only explicitly-set values are available programatically. Therefore, we need to check actual rendering against expected rendering.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;User agents should render the items of the list in a manner consistent with the state of the type attribute of the ol element.&lt;/blockquote&gt;
+
+    &lt;p&gt;&lt;strong&gt;This reftest passes if each list's items are labelled identically to the horizontal sequence immediately above those list items:&lt;/strong&gt;&lt;/p&gt;
+    &lt;p&gt;(Note: each list item has no content; only the sequencing should appear.)&lt;/p&gt;
+
+    &lt;span&gt;
+
+    &lt;p&gt;1, 2, 3 (type attribute of &quot;1&quot; results in decimal type)&lt;/p&gt;
+    &lt;ol type=&quot;1&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;aa, ab, ac (type attribute of &quot;a&quot; results in lower case latin alphabet, start = 27)&lt;/p&gt;
+    &lt;ol type=&quot;a&quot; start=&quot;27&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;AA, AB, AC (type attribute of &quot;A&quot; results in upper case latin alphabet, start = 27)&lt;/p&gt;
+    &lt;ol type=&quot;A&quot; start=&quot;27&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;i, v, c (type attribute of &quot;i&quot; results in lower case roman alphabet, list values = 1, 5, 100)&lt;/p&gt;
+    &lt;ol type=&quot;i&quot;&gt;
+        &lt;li value=&quot;1&quot;&gt;&lt;/li&gt;
+        &lt;li value=&quot;5&quot;&gt;&lt;/li&gt;
+        &lt;li value=&quot;100&quot;&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;I, V, C (type attribute of &quot;I&quot; results in upper case roman alphabet, list values = 1, 5, 100)&lt;/p&gt;
+    &lt;ol type=&quot;I&quot;&gt;
+        &lt;li value=&quot;1&quot;&gt;&lt;/li&gt;
+        &lt;li value=&quot;5&quot;&gt;&lt;/li&gt;
+        &lt;li value=&quot;100&quot;&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;/span&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingoltypereftest003expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-003-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-003-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-003-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,79 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;ol element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-ol-type-reftest-003.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;OL's type attribute defaults to decimal state.&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span span p {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;p&gt;This test continues to validate the ol element. This reftest is necessary because the values of the ol's li children as calculated and displayed by the user agent are NOT systematically available programatically. Only explicitly-set values are available programatically. Therefore, we need to check actual rendering against expected rendering.&lt;/p&gt;
+
+    &lt;p&gt;The spec states: Numbers less than or equal to zero should always use the decimal system regardless of the type attribute.&lt;/p&gt;
+
+    &lt;p&gt;&lt;strong&gt;This reftest passes if each list's items are labelled identically to the horizontal sequence immediately above those list items:&lt;/strong&gt;&lt;/p&gt;
+    &lt;p&gt;(Note: each list item has no content; only the sequencing should appear.)&lt;/p&gt;
+
+    &lt;span&gt;
+        &lt;p&gt;-3, -2, -1 (type is &quot;a&quot;, start is -3)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;-3.&lt;/p&gt;
+            &lt;p&gt;-2.&lt;/p&gt;
+            &lt;p&gt;-1.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;0, a (type is &quot;a&quot;, start is 0)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;0.&lt;/p&gt;
+            &lt;p&gt;a.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;-3, -2, -1 (type is &quot;A&quot;, start is -3)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;-3.&lt;/p&gt;
+            &lt;p&gt;-2.&lt;/p&gt;
+            &lt;p&gt;-1.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;0, A (type is &quot;A&quot;, start is 0)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;0.&lt;/p&gt;
+            &lt;p&gt;A.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;-3, -2, -1 (type is &quot;i&quot;, start is -3)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;-3.&lt;/p&gt;
+            &lt;p&gt;-2.&lt;/p&gt;
+            &lt;p&gt;-1.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;0, i (type is &quot;i&quot;, start is 0)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;0.&lt;/p&gt;
+            &lt;p&gt;i.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;-3, -2, -1 (type is &quot;I&quot;, start is -3)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;-3.&lt;/p&gt;
+            &lt;p&gt;-2.&lt;/p&gt;
+            &lt;p&gt;-1.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;0, I (type is &quot;I&quot;, start is 0)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;0.&lt;/p&gt;
+            &lt;p&gt;I.&lt;/p&gt;
+        &lt;/span&gt;
+
+    &lt;/span&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingoltypereftest003refexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-003-ref-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-003-ref-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-003-ref-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,81 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;ol element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-ol-type-reftest-003-ref.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;OL's type attribute defaults to decimal state.&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span li {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+        span ol {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace; list-style-position: inside;}
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;p&gt;This test continues to validate the ol element. This reftest is necessary because the values of the ol's li children as calculated and displayed by the user agent are NOT systematically available programatically. Only explicitly-set values are available programatically. Therefore, we need to check actual rendering against expected rendering.&lt;/p&gt;
+
+    &lt;p&gt;The spec states: Numbers less than or equal to zero should always use the decimal system regardless of the type attribute.&lt;/p&gt;
+
+    &lt;p&gt;&lt;strong&gt;This reftest passes if each list's items are labelled identically to the horizontal sequence immediately above those list items:&lt;/strong&gt;&lt;/p&gt;
+    &lt;p&gt;(Note: each list item has no content; only the sequencing should appear.)&lt;/p&gt;
+
+    &lt;span&gt;
+
+    &lt;p&gt;-3, -2, -1 (type is &quot;a&quot;, start is -3)&lt;/p&gt;
+    &lt;ol type=&quot;a&quot; start=&quot;-3&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;0, a (type is &quot;a&quot;, start is 0)&lt;/p&gt;
+    &lt;ol type=&quot;a&quot; start=&quot;0&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;-3, -2, -1 (type is &quot;A&quot;, start is -3)&lt;/p&gt;
+    &lt;ol type=&quot;A&quot; start=&quot;-3&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;0, A (type is &quot;A&quot;, start is 0)&lt;/p&gt;
+    &lt;ol type=&quot;A&quot; start=&quot;0&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;-3, -2, -1 (type is &quot;i&quot;, start is -3)&lt;/p&gt;
+    &lt;ol type=&quot;i&quot; start=&quot;-3&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;0, i (type is &quot;i&quot;, start is 0)&lt;/p&gt;
+    &lt;ol type=&quot;i&quot; start=&quot;0&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;-3, -2, -1 (type is &quot;I&quot;, start is -3)&lt;/p&gt;
+    &lt;ol type=&quot;I&quot; start=&quot;-3&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;0, I (type is &quot;I&quot;, start is 0)&lt;/p&gt;
+    &lt;ol type=&quot;I&quot; start=&quot;0&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;/span&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingoltypereftest003refhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-003-ref.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-003-ref.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-003-ref.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,79 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;ol element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-ol-type-reftest-003.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;OL's type attribute defaults to decimal state.&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span span p {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;p&gt;This test continues to validate the ol element. This reftest is necessary because the values of the ol's li children as calculated and displayed by the user agent are NOT systematically available programatically. Only explicitly-set values are available programatically. Therefore, we need to check actual rendering against expected rendering.&lt;/p&gt;
+
+    &lt;p&gt;The spec states: Numbers less than or equal to zero should always use the decimal system regardless of the type attribute.&lt;/p&gt;
+
+    &lt;p&gt;&lt;strong&gt;This reftest passes if each list's items are labelled identically to the horizontal sequence immediately above those list items:&lt;/strong&gt;&lt;/p&gt;
+    &lt;p&gt;(Note: each list item has no content; only the sequencing should appear.)&lt;/p&gt;
+
+    &lt;span&gt;
+        &lt;p&gt;-3, -2, -1 (type is &quot;a&quot;, start is -3)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;-3.&lt;/p&gt;
+            &lt;p&gt;-2.&lt;/p&gt;
+            &lt;p&gt;-1.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;0, a (type is &quot;a&quot;, start is 0)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;0.&lt;/p&gt;
+            &lt;p&gt;a.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;-3, -2, -1 (type is &quot;A&quot;, start is -3)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;-3.&lt;/p&gt;
+            &lt;p&gt;-2.&lt;/p&gt;
+            &lt;p&gt;-1.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;0, A (type is &quot;A&quot;, start is 0)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;0.&lt;/p&gt;
+            &lt;p&gt;A.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;-3, -2, -1 (type is &quot;i&quot;, start is -3)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;-3.&lt;/p&gt;
+            &lt;p&gt;-2.&lt;/p&gt;
+            &lt;p&gt;-1.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;0, i (type is &quot;i&quot;, start is 0)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;0.&lt;/p&gt;
+            &lt;p&gt;i.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;-3, -2, -1 (type is &quot;I&quot;, start is -3)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;-3.&lt;/p&gt;
+            &lt;p&gt;-2.&lt;/p&gt;
+            &lt;p&gt;-1.&lt;/p&gt;
+        &lt;/span&gt;
+
+        &lt;p&gt;0, I (type is &quot;I&quot;, start is 0)&lt;/p&gt;
+        &lt;span&gt;
+            &lt;p&gt;0.&lt;/p&gt;
+            &lt;p&gt;I.&lt;/p&gt;
+        &lt;/span&gt;
+
+    &lt;/span&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingoltypereftest003html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-003.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-003.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-003.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,81 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;ol element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-ol-type-reftest-003-ref.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;OL's type attribute defaults to decimal state.&quot; /&gt;
+    &lt;style type=&quot;text/css&quot;&gt;
+        span p {display:list-item; margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0;}
+        span li {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 0; padding-top: 0; padding-bottom: 0; font-family: monospace;}
+        span ol {margin-left: 0; margin-top: 0; margin-bottom: 0; padding-left: 5em; padding-top: 0; padding-bottom: 0; font-family: monospace; list-style-position: inside;}
+    &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;p&gt;This test continues to validate the ol element. This reftest is necessary because the values of the ol's li children as calculated and displayed by the user agent are NOT systematically available programatically. Only explicitly-set values are available programatically. Therefore, we need to check actual rendering against expected rendering.&lt;/p&gt;
+
+    &lt;p&gt;The spec states: Numbers less than or equal to zero should always use the decimal system regardless of the type attribute.&lt;/p&gt;
+
+    &lt;p&gt;&lt;strong&gt;This reftest passes if each list's items are labelled identically to the horizontal sequence immediately above those list items:&lt;/strong&gt;&lt;/p&gt;
+    &lt;p&gt;(Note: each list item has no content; only the sequencing should appear.)&lt;/p&gt;
+
+    &lt;span&gt;
+
+    &lt;p&gt;-3, -2, -1 (type is &quot;a&quot;, start is -3)&lt;/p&gt;
+    &lt;ol type=&quot;a&quot; start=&quot;-3&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;0, a (type is &quot;a&quot;, start is 0)&lt;/p&gt;
+    &lt;ol type=&quot;a&quot; start=&quot;0&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;-3, -2, -1 (type is &quot;A&quot;, start is -3)&lt;/p&gt;
+    &lt;ol type=&quot;A&quot; start=&quot;-3&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;0, A (type is &quot;A&quot;, start is 0)&lt;/p&gt;
+    &lt;ol type=&quot;A&quot; start=&quot;0&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;-3, -2, -1 (type is &quot;i&quot;, start is -3)&lt;/p&gt;
+    &lt;ol type=&quot;i&quot; start=&quot;-3&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;0, i (type is &quot;i&quot;, start is 0)&lt;/p&gt;
+    &lt;ol type=&quot;i&quot; start=&quot;0&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;-3, -2, -1 (type is &quot;I&quot;, start is -3)&lt;/p&gt;
+    &lt;ol type=&quot;I&quot; start=&quot;-3&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;0, I (type is &quot;I&quot;, start is 0)&lt;/p&gt;
+    &lt;ol type=&quot;I&quot; start=&quot;0&quot;&gt;
+        &lt;li&gt;&lt;/li&gt;
+        &lt;li&gt;&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;/span&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementgroupingolhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,314 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;the ol element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test validates the ol element.&lt;/p&gt;
+
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;basic&quot;&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;allAtts&quot; reversed start=&quot;3&quot; type=&quot;A&quot;&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;justRev&quot; reversed&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;basicRevGoodName&quot; reversed=&quot;reversed&quot;&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;basicRevNameWithSpace&quot; reversed=&quot; reversed &quot;&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;basicRevEmpty&quot; reversed=&quot;&quot; start=&quot;A&quot;&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;basicRevTrue&quot; reversed=&quot;true&quot;&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;basicRevFalse&quot; reversed=&quot;false&quot;&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;start2&quot; start=&quot;2&quot;&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;negative&quot; start=&quot;-10&quot;&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;posFloatDown&quot; start=&quot;4.03&quot;&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;negFloatDown&quot; start=&quot;-4.03&quot;&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;posFloatUp&quot; start=&quot;4.9&quot;&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;negFloatUp&quot; start=&quot;-4.9&quot;&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;exponent&quot; start=&quot;7e2&quot;&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;decimal&quot; start=&quot;.5&quot;&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;letter&quot; start=&quot;A&quot;&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;middle50&quot;&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li value=&quot;50&quot;&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;middleneg50&quot;&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+        &lt;li value=&quot;-50&quot;&gt;list item&lt;/li&gt;
+        &lt;li&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;p&gt;Ordered List&lt;/p&gt;
+    &lt;ol id=&quot;lots&quot; reversed=&quot;reversed&quot;&gt;
+        &lt;li value=&quot;10&quot;&gt;list item&lt;/li&gt;
+        &lt;li value=&quot;20&quot;&gt;list item&lt;/li&gt;
+&lt;a&gt;&lt;/a&gt;&lt;abbr&gt;&lt;/abbr&gt;&lt;address&gt;&lt;/address&gt;&lt;area&gt;&lt;/area&gt;&lt;article&gt;&lt;/article&gt;&lt;aside&gt;&lt;/aside&gt;&lt;audio&gt;&lt;/audio&gt;&lt;b&gt;&lt;/b&gt;&lt;base&gt;&lt;/base&gt;&lt;bdi&gt;&lt;/bdi&gt;&lt;bdo&gt;&lt;/bdo&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;body&gt;&lt;/body&gt;&lt;br&gt;&lt;/br&gt;&lt;button&gt;&lt;/button&gt;&lt;canvas&gt;&lt;/canvas&gt;&lt;caption&gt;&lt;/caption&gt;&lt;cite&gt;&lt;/cite&gt;&lt;code&gt;&lt;/code&gt;&lt;col&gt;&lt;/col&gt;&lt;colgroup&gt;&lt;/colgroup&gt;&lt;command&gt;&lt;/command&gt;&lt;datalist&gt;&lt;/datalist&gt;&lt;dd&gt;&lt;/dd&gt;&lt;del&gt;&lt;/del&gt;&lt;details&gt;&lt;/details&gt;&lt;dfn&gt;&lt;/dfn&gt;&lt;dialog&gt;&lt;/dialog&gt;&lt;div&gt;&lt;/div&gt;&lt;dl&gt;&lt;/dl&gt;&lt;dt&gt;&lt;/dt&gt;&lt;em&gt;&lt;/em&gt;&lt;embed&gt;&lt;/embed&gt;&lt;fieldset&gt;&lt;/fieldset&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;figure&gt;&lt;/figure&gt;&lt;footer&gt;&lt;/footer&gt;&lt;
 form&gt;&lt;/form&gt;&lt;h1&gt;&lt;/h1&gt;&lt;h2&gt;&lt;/h2&gt;&lt;h3&gt;&lt;/h3&gt;&lt;h4&gt;&lt;/h4&gt;&lt;h5&gt;&lt;/h5&gt;&lt;h6&gt;&lt;/h6&gt;&lt;head&gt;&lt;/head&gt;&lt;header&gt;&lt;/header&gt;&lt;hgroup&gt;&lt;/hgroup&gt;&lt;hr&gt;&lt;/hr&gt;&lt;html&gt;&lt;/html&gt;&lt;i&gt;&lt;/i&gt;&lt;iframe&gt;&lt;/iframe&gt;&lt;img&gt;&lt;/img&gt;&lt;input&gt;&lt;/input&gt;&lt;ins&gt;&lt;/ins&gt;&lt;kbd&gt;&lt;/kbd&gt;&lt;keygen&gt;&lt;/keygen&gt;&lt;label&gt;&lt;/label&gt;&lt;legend&gt;&lt;/legend&gt;&lt;link&gt;&lt;/link&gt;&lt;map&gt;&lt;/map&gt;&lt;mark&gt;&lt;/mark&gt;&lt;menu&gt;&lt;/menu&gt;&lt;meta&gt;&lt;/meta&gt;&lt;meter&gt;&lt;/meter&gt;&lt;nav&gt;&lt;/nav&gt;&lt;noscript&gt;&lt;/noscript&gt;&lt;object&gt;&lt;/object&gt;&lt;ol&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;/ol&gt;&lt;optgroup&gt;&lt;/optgroup&gt;&lt;option&gt;&lt;/option&gt;&lt;output&gt;&lt;/output&gt;&lt;p&gt;&lt;/p&gt;&lt;param&gt;&lt;/param&gt;&lt;pre&gt;&lt;/pre&gt;&lt;progress&gt;&lt;/progr
 ess&gt;&lt;q&gt;&lt;/q&gt;&lt;rp&gt;&lt;/rp&gt;&lt;rt&gt;&lt;/rt&gt;&lt;ruby&gt;&lt;/ruby&gt;&lt;s&gt;&lt;/s&gt;&lt;samp&gt;&lt;/samp&gt;&lt;script&gt;&lt;/script&gt;&lt;section&gt;&lt;/section&gt;&lt;select&gt;&lt;/select&gt;&lt;small&gt;&lt;/small&gt;&lt;source&gt;&lt;/source&gt;&lt;span&gt;&lt;/span&gt;&lt;strong&gt;&lt;/strong&gt;&lt;style&gt;&lt;/style&gt;&lt;sub&gt;&lt;/sub&gt;&lt;summary&gt;&lt;/summary&gt;&lt;sup&gt;&lt;/sup&gt;&lt;table&gt;&lt;/table&gt;&lt;tbody&gt;&lt;/tbody&gt;&lt;td&gt;&lt;/td&gt;&lt;textarea&gt;&lt;/textarea&gt;&lt;tfoot&gt;&lt;/tfoot&gt;&lt;th&gt;&lt;/th&gt;&lt;thead&gt;&lt;/thead&gt;&lt;time&gt;&lt;/time&gt;&lt;title&gt;&lt;/title&gt;&lt;tr&gt;&lt;/tr&gt;&lt;track&gt;&lt;/track&gt;&lt;u&gt;&lt;/u&gt;&lt;ul&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;/ul&gt;&lt;var&gt;&lt;/var&gt;&lt;video&gt;&lt;/video&gt;&lt;wbr&gt;&lt;/wbr&gt;
+        &lt;li value=&quot;-99&quot;&gt;list item&lt;/li&gt;
+    &lt;/ol&gt;
+
+    &lt;script&gt;
+        &quot;use strict&quot;;
+
+        var testList;
+
+        // check that prototype matches spec's DOM interface
+        test(function () {
+            testList = document.getElementById(&quot;basic&quot;);
+            assert_equals(Object.getPrototypeOf(testList), HTMLOListElement.prototype, &quot;HTMLOListElement.prototype should be used for OL&quot;);
+        }, &quot;The prototype for OL is HTMLOListElement.prototype&quot;);
+
+        // check that &quot;own&quot; properties reversed, start, and type are present
+        test(function () {
+            testList = document.getElementById(&quot;basic&quot;);
+            assert_own_property(testList, &quot;reversed&quot;);
+        }, &quot;'reversed' property should be defined on OL.&quot;);
+
+        test(function () {
+            testList = document.getElementById(&quot;basic&quot;);
+            assert_own_property(testList, &quot;start&quot;);
+        }, &quot;'start' property should be defined on OL.&quot;);
+
+        test(function () {
+            testList = document.getElementById(&quot;basic&quot;);
+            assert_own_property(testList, &quot;type&quot;);
+        }, &quot;'type' property should be defined on OL.&quot;);
+
+        // &quot;The reversed, start, and type IDL attributes must reflect the respective content attributes of the same name.&quot;
+        test(function () {
+            testList = document.getElementById(&quot;allAtts&quot;);
+            assert_true(testList.reversed);
+        }, &quot;OL's 'reversed' IDL property reflects content attribute.&quot;);
+
+        test(function () {
+            testList = document.getElementById(&quot;allAtts&quot;);
+            assert_equals(testList.start, 3);
+        }, &quot;OL's 'start' IDL property reflects content attribute.&quot;);
+
+        test(function () {
+            testList = document.getElementById(&quot;allAtts&quot;);
+            assert_equals(testList.type, &quot;A&quot;);
+        }, &quot;OL's 'type' IDL property reflects content attribute.&quot;);
+
+
+        // &quot;The reversed attribute is a boolean attribute.&quot;
+
+        // check lists for which reversed value should be false
+        test(function() {
+            assert_false(document.getElementById(&quot;basic&quot;).reversed, &quot;IDL 'reversed' attribute value false when content attribute absent&quot;);
+        }, &quot;IDL 'reversed' attribute value false when content attribute absent&quot;);
+
+        // check lists for which reversed value should be true
+        test(function() {
+            assert_true(document.getElementById(&quot;justRev&quot;).reversed);
+            assert_true(document.getElementById(&quot;basicRevGoodName&quot;).reversed);
+            assert_true(document.getElementById(&quot;basicRevNameWithSpace&quot;).reversed);
+            assert_true(document.getElementById(&quot;basicRevEmpty&quot;).reversed);
+            assert_true(document.getElementById(&quot;basicRevTrue&quot;).reversed);
+            assert_true(document.getElementById(&quot;basicRevFalse&quot;).reversed);
+        }, &quot;IDL 'reversed' attribute value true when content attribute exists&quot;);
+
+        // check that IDL property works to change reversed value
+        test(function() {
+            document.getElementById(&quot;justRev&quot;).reversed = false;
+            assert_false(document.getElementById(&quot;justRev&quot;).reversed, &quot;Changing IDL 'reversed' property changes list's reversed property.&quot;);
+        }, &quot;Changing IDL 'reversed' property changes list's reversed property.&quot;);
+
+
+        // If the start attribute is present, user agents must parse it as an integer, in order to determine the attribute's value.
+        // The default value, used if the attribute is missing or
+        //                         if the value cannot be converted to a number according to the referenced algorithm,
+        // is 1 if the element has no reversed attribute, and
+        // is the number of child li elements otherwise.&quot;
+        // &quot;The start IDL attribute has the same default as its content attribute.&quot;
+
+        // basic - default should be 1
+        test(function() {
+            assert_equals(document.getElementById(&quot;basic&quot;).start, 1, &quot;no start attribute provided -&gt; 1&quot;);
+        }, &quot;Default start value for non-reversed list should be 1&quot;);
+
+        // decimal's first element has value of .5 which should return 1
+        test(function() {
+            assert_equals(document.getElementById(&quot;decimal&quot;).start, 1, &quot;start of .5 -&gt; 1 (default)&quot;);
+        }, &quot;IDL and content attribute parse start of '.5' correctly.&quot;);
+
+        // letter's first element has value of A which should return 1
+        test(function() {
+            assert_equals(document.getElementById(&quot;letter&quot;).start, 1, &quot;start of A -&gt; 1 (default)&quot;);
+        }, &quot;IDL and content attribute parse start of 'A' correctly.&quot;);
+
+        // basicRevGoodName - default should be 3
+        test(function() {
+            assert_equals(document.getElementById(&quot;basicRevGoodName&quot;).start, 3, &quot;no start attribute provided -&gt; 3&quot;);
+        }, &quot;Default start value (if none provided) for reversed list = child li elements.&quot;);
+
+        // basicRevEmpty - default should be 3
+        test(function() {
+            assert_equals(document.getElementById(&quot;basicRevEmpty&quot;).start, 3, &quot;start of A -&gt; 3 (default)&quot;);
+        }, &quot;Default start value (if failed to parse) for reversed list = child li elements.&quot;);
+
+        // lots - default should be 3
+        test(function() {
+            assert_equals(document.getElementById(&quot;lots&quot;).start, 3, &quot;no start attribute -&gt; 3 (default)&quot;);
+        }, &quot;Default start value for reversed list = child li elements (even with tons of other child elements).&quot;);
+
+        // adding child element changes default start value for reversed list
+        test(function() {
+            var myList = document.getElementById(&quot;basicRevGoodName&quot;), myLI = document.createElement(&quot;li&quot;);
+            myList.appendChild(myLI);
+            assert_equals(document.getElementById(&quot;basicRevGoodName&quot;).start, 4, &quot;Adding child element to reversed list adds 1 to start value&quot;);
+        }, &quot;Adding child element to reversed list adds 1 to start value&quot;);
+
+        // removing child element changes default start value for reversed list
+        test(function() {
+            var myList = document.getElementById(&quot;basicRevTrue&quot;);
+            myList.removeChild(myList.children[0]);
+            assert_equals(document.getElementById(&quot;basicRevTrue&quot;).start, 2, &quot;Deleting child element from reversed list reduces start value by 1&quot;);
+        }, &quot;Deleting child element from reversed list reduces start value by 1&quot;);
+
+        // start2's first element has value of 2
+        test(function() {
+            assert_equals(document.getElementById(&quot;start2&quot;).start, 2, &quot;start of 2 -&gt; 2&quot;);
+        }, &quot;IDL and content attribute parse start of '2' correctly.&quot;);
+
+        // negative's first element has value of -10
+        test(function() {
+            assert_equals(document.getElementById(&quot;negative&quot;).start, -10, &quot;start of -10 -&gt; -10&quot;);
+        }, &quot;IDL and content attribute parse start of '-10' correctly.&quot;);
+
+        // posFloatDown's first element has value of 4.03 which should return 4
+        test(function() {
+            assert_equals(document.getElementById(&quot;posFloatDown&quot;).start, 4, &quot;start of 4.03 -&gt; 4&quot;);
+        }, &quot;IDL and content attribute parse start of '4.03' correctly.&quot;);
+
+        // negFloatDown's first element has value of -4.03 which should return -4
+        test(function() {
+            assert_equals(document.getElementById(&quot;negFloatDown&quot;).start, -4, &quot;start of -4.03 -&gt; -4&quot;);
+        }, &quot;IDL and content attribute parse start of '-4.03' correctly.&quot;);
+
+        // posFloatUp's first element has value of 4.9 which should return 4
+        test(function() {
+            assert_equals(document.getElementById(&quot;posFloatUp&quot;).start, 4, &quot;start of 4.9 -&gt; 4&quot;);
+        }, &quot;IDL and content attribute parse start of '4.9' correctly.&quot;);
+
+        // negFloatUp's first element has value of -4.9 which should return -4
+        test(function() {
+            assert_equals(document.getElementById(&quot;negFloatUp&quot;).start, -4, &quot;start of -4.9 -&gt; -4&quot;);
+        }, &quot;IDL and content attribute parse start of '-4.9' correctly.&quot;);
+
+        // exponent's first element has value of 7e2 which should return 7
+        test(function() {
+            assert_equals(document.getElementById(&quot;exponent&quot;).start, 7, &quot;start of 7e2 -&gt; 7&quot;);
+        }, &quot;IDL and content attribute parse start of '7e2' correctly.&quot;);
+
+    &lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementolstartreflection1expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/ol.start-reflection-1-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/ol.start-reflection-1-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/ol.start-reflection-1-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+One
+Two
+Three
+
+PASS ol.start - reflection test 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementolstartreflection1html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/ol.start-reflection-1.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/ol.start-reflection-1.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/ol.start-reflection-1.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,26 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;ol.start - reflection test&lt;/title&gt;
+  &lt;link rel=&quot;author&quot; title=&quot;Shiki Okasaka&quot; href=&quot;http://shiki.esrille.com/&quot;&gt;
+  &lt;link rel=&quot;author&quot; title=&quot;Esrille Inc.&quot; href=&quot;http://www.esrille.com/&quot;&gt;
+  &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+  &lt;meta name=&quot;assert&quot; content=&quot;This test checks that the start IDL attribute reflects the respective content attribute of the same name.&quot;&gt;
+  &lt;link rel=&quot;stylesheet&quot; href=&quot;/resources/testharness.css&quot;&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;ol id=&quot;ol&quot;&gt;
+   &lt;li&gt;One&lt;/li&gt;
+   &lt;li&gt;Two&lt;/li&gt;
+   &lt;li&gt;Three&lt;/li&gt;
+  &lt;/ol&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+    assert_equals(document.getElementById('ol').start, 1);
+})
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementolstartreflection2expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/ol.start-reflection-2-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/ol.start-reflection-2-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/ol.start-reflection-2-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+Three
+Two
+One
+
+FAIL ol.start - reflection test assert_equals: expected 3 but got 0
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementolstartreflection2html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/ol.start-reflection-2.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/ol.start-reflection-2.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/ol.start-reflection-2.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,26 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+ &lt;head&gt;
+  &lt;title&gt;ol.start - reflection test&lt;/title&gt;
+  &lt;link rel=&quot;author&quot; title=&quot;Shiki Okasaka&quot; href=&quot;http://shiki.esrille.com/&quot;&gt;
+  &lt;link rel=&quot;author&quot; title=&quot;Esrille Inc.&quot; href=&quot;http://www.esrille.com/&quot;&gt;
+  &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ol-element&quot;&gt;
+  &lt;meta name=&quot;assert&quot; content=&quot;This test checks that the start IDL attribute reflects the respective content attribute of the same name.&quot;&gt;
+  &lt;link rel=&quot;stylesheet&quot; href=&quot;/resources/testharness.css&quot;&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+ &lt;/head&gt;
+ &lt;body&gt;
+  &lt;ol id='ol' reversed&gt;
+   &lt;li&gt;Three&lt;/li&gt;
+   &lt;li&gt;Two&lt;/li&gt;
+   &lt;li&gt;One&lt;/li&gt;
+  &lt;/ol&gt;
+  &lt;div id='log'&gt;&lt;/div&gt;
+  &lt;script&gt;
+test(function() {
+    assert_equals(document.getElementById('ol').start, 3);
+})
+  &lt;/script&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementreversed2expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/reversed-2-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/reversed-2-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/reversed-2-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;ol&gt;
+  &lt;li value=&quot;5&quot;&gt;Five&lt;/li&gt;
+  &lt;li value=&quot;4&quot;&gt;Four&lt;/li&gt;
+  &lt;li value=&quot;3&quot;&gt;Three&lt;/li&gt;
+&lt;/ol&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementreversed2html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/reversed-2.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/reversed-2.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/reversed-2.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;link rel=&quot;match&quot; href=&quot;reversed-2-ref.html&quot;&gt;
+&lt;ol reversed start=&quot;5&quot;&gt;
+  &lt;li&gt;Five&lt;/li&gt;
+  &lt;li&gt;Four&lt;/li&gt;
+  &lt;li&gt;Three&lt;/li&gt;
+&lt;/ol&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheolelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,46 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-rev-reftest-001-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-rev-reftest-001-ref-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-rev-reftest-001-ref.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-rev-reftest-001.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-001-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-001-ref-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-001-ref.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-001.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-002-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-002-ref-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-002-ref.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-start-reftest-002.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-001-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-001-ref-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-001-ref.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-001.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-002-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-002-ref-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-002-ref.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-002.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-003-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-003-ref-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-003-ref.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol-type-reftest-003.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/grouping-ol.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/ol.start-reflection-1.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/ol.start-reflection-2.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/reversed-2-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ol-element/reversed-2.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthepelementgroupingpexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-p-element/grouping-p-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-p-element/grouping-p-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-p-element/grouping-p-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+Description
+
+This test validates the p element.
+
+
+PASS The prototype for p is HTMLParagraphElement.prototype 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthepelementgroupingphtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-p-element/grouping-p.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-p-element/grouping-p.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-p-element/grouping-p.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;the p element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-p-element&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+    &lt;script&gt;
+        &quot;use strict&quot;;
+
+        // check that prototype matches spec's DOM interface
+        test(function () {
+            var testElement = document.createElement(&quot;p&quot;);
+            assert_equals(Object.getPrototypeOf(testElement), HTMLParagraphElement.prototype, &quot;HTMLParagraphElement.prototype should be used for p&quot;);
+        }, &quot;The prototype for p is HTMLParagraphElement.prototype&quot;);
+
+    &lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test validates the p element.&lt;/p&gt;
+
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthepelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-p-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-p-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-p-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-p-element/grouping-p.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthepreelementgroupingpreexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+Description
+
+This test validates the pre element.
+
+
+PASS The prototype for pre is HTMLPreElement.prototype 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthepreelementgroupingprereftest001expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre-reftest-001-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre-reftest-001-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre-reftest-001-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,23 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;pre element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-pre-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-pre-reftest-001.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;Newlines within pre elements separate paragraphs for the purposes of BIDI.&quot; /&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test continues to validate the pre element.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&quot;A newline in a pre element should separate paragraphs for the purposes of the Unicode bidirectional algorithm. This requirement may be implemented indirectly through the style layer. For example, an HTML+CSS user agent could implement these requirements by implementing the CSS 'unicode-bidi' property.&quot;&lt;/blockquote&gt;
+
+    &lt;p&gt;This reftest passes if below you see &quot;ABC ABC&quot; repeated on two separate lines below (4 ABCs total):&lt;/p&gt;
+
+    &lt;pre&gt;ABC ABC
+ABC ABC&lt;/pre&gt;
+
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthepreelementgroupingprereftest001refexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre-reftest-001-ref-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre-reftest-001-ref-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre-reftest-001-ref-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,23 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;pre element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-pre-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-pre-reftest-001-ref.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;Newlines within pre elements separate paragraphs for the purposes of BIDI.&quot; /&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test continues to validate the pre element.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&quot;A newline in a pre element should separate paragraphs for the purposes of the Unicode bidirectional algorithm. This requirement may be implemented indirectly through the style layer. For example, an HTML+CSS user agent could implement these requirements by implementing the CSS 'unicode-bidi' property.&quot;&lt;/blockquote&gt;
+
+    &lt;p&gt;This reftest passes if below you see &quot;ABC ABC&quot; repeated on two separate lines below (4 ABCs total):&lt;/p&gt;
+
+    &lt;pre&gt;&amp;#x202E; CBA CBA
+ABC ABC&lt;/pre&gt;
+
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthepreelementgroupingprereftest001refhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre-reftest-001-ref.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre-reftest-001-ref.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre-reftest-001-ref.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,23 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;pre element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-pre-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-pre-reftest-001.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;Newlines within pre elements separate paragraphs for the purposes of BIDI.&quot; /&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test continues to validate the pre element.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&quot;A newline in a pre element should separate paragraphs for the purposes of the Unicode bidirectional algorithm. This requirement may be implemented indirectly through the style layer. For example, an HTML+CSS user agent could implement these requirements by implementing the CSS 'unicode-bidi' property.&quot;&lt;/blockquote&gt;
+
+    &lt;p&gt;This reftest passes if below you see &quot;ABC ABC&quot; repeated on two separate lines below (4 ABCs total):&lt;/p&gt;
+
+    &lt;pre&gt;ABC ABC
+ABC ABC&lt;/pre&gt;
+
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthepreelementgroupingprereftest001html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre-reftest-001.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre-reftest-001.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre-reftest-001.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,23 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;pre element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-pre-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;grouping-pre-reftest-001-ref.html&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;Newlines within pre elements separate paragraphs for the purposes of BIDI.&quot; /&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test continues to validate the pre element.&lt;/p&gt;
+
+    &lt;p&gt;The spec states:&lt;/p&gt;
+    &lt;blockquote&gt;&quot;A newline in a pre element should separate paragraphs for the purposes of the Unicode bidirectional algorithm. This requirement may be implemented indirectly through the style layer. For example, an HTML+CSS user agent could implement these requirements by implementing the CSS 'unicode-bidi' property.&quot;&lt;/blockquote&gt;
+
+    &lt;p&gt;This reftest passes if below you see &quot;ABC ABC&quot; repeated on two separate lines below (4 ABCs total):&lt;/p&gt;
+
+    &lt;pre&gt;&amp;#x202E; CBA CBA
+ABC ABC&lt;/pre&gt;
+
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthepreelementgroupingprehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;the pre element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-pre-element&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test validates the pre element.&lt;/p&gt;
+
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+
+    &lt;script&gt;
+        &quot;use strict&quot;;
+
+        // check that prototype matches spec's DOM interface
+        test(function () {
+            var testElement = document.createElement(&quot;pre&quot;);
+            assert_equals(Object.getPrototypeOf(testElement), HTMLPreElement.prototype, &quot;HTMLPreElement.prototype should be used for pre&quot;);
+        }, &quot;The prototype for pre is HTMLPreElement.prototype&quot;);
+
+    &lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthepreelementprenewlinebidiexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/pre-newline-bidi-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/pre-newline-bidi-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/pre-newline-bidi-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;title&gt;HTML Test reference: newline in &amp;lt;pre&amp;gt; separates bidi paragraphs&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Amir E. Aharoni&quot; href=&quot;mailto:amir.aharoni@mail.huji.ac.il&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Eyal Sela&quot; href=&quot;mailto:eyal@post.isoc.org.il&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;/&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-pre-element&quot;/&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;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.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;pre&gt;
+A Hebrew letter and a full stop: &amp;#x05d0;.&amp;lrm;
+&amp;#x05d0; this line begins with a Hebrew letter.
+      &lt;/pre&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthepreelementprenewlinebidihtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/pre-newline-bidi.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/pre-newline-bidi.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/pre-newline-bidi.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,23 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;/&gt;
+    &lt;title&gt;HTML Test: newline in pre separates bidi paragraphs&lt;/title&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;pre-newline-bidi-ref.html&quot; /&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Amir E. Aharoni&quot; href=&quot;mailto:amir.aharoni@mail.huji.ac.il&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Eyal Sela&quot; href=&quot;mailto:eyal@post.isoc.org.il&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;/&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-pre-element&quot;/&gt;
+    &lt;meta name=&quot;assert&quot;
+      content=&quot;A newline in a pre element should separate paragraphs for the purposes of the Unicode bidirectional algorithm.&quot;/&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;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.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;pre&gt;
+A Hebrew letter and a full stop: &amp;#x05d0;.
+&amp;#x05d0; this line begins with a Hebrew letter.
+      &lt;/pre&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontentthepreelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,24 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre-reftest-001-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre-reftest-001-ref-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre-reftest-001-ref.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre-reftest-001.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/grouping-pre.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/pre-newline-bidi-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-pre-element/pre-newline-bidi.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheulelementgroupingulexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ul-element/grouping-ul-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ul-element/grouping-ul-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ul-element/grouping-ul-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+Description
+
+This test validates the ul element.
+
+
+PASS The prototype for ul is HTMLUListElement.prototype 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheulelementgroupingulhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ul-element/grouping-ul.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ul-element/grouping-ul.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ul-element/grouping-ul.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;the ul element&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;dzenana&quot; href=&quot;mailto:dzenana.trenutak@gmail.com&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-ul-element&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+    &lt;script&gt;
+        &quot;use strict&quot;;
+
+        // check that prototype matches spec's DOM interface
+        test(function () {
+            var testElement = document.createElement(&quot;ul&quot;);
+            assert_equals(Object.getPrototypeOf(testElement), HTMLUListElement.prototype, &quot;HTMLUListElement.prototype should be used for ul&quot;);
+        }, &quot;The prototype for ul is HTMLUListElement.prototype&quot;);
+
+    &lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;h1&gt;Description&lt;/h1&gt;
+    &lt;p&gt;This test validates the ul element.&lt;/p&gt;
+
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsgroupingcontenttheulelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ul-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ul-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ul-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/grouping-content/the-ul-element/grouping-ul.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementscommandscontainsjson"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/commands/contains.json (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/commands/contains.json                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/commands/contains.json        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,38 @@
</span><ins>+[
+    {
+        &quot;id&quot;: &quot;using-the-a-element-to-define-a-command&quot;,
+        &quot;original_id&quot;: &quot;using-the-a-element-to-define-a-command&quot;
+    },
+    {
+        &quot;id&quot;: &quot;using-the-button-element-to-define-a-command&quot;,
+        &quot;original_id&quot;: &quot;using-the-button-element-to-define-a-command&quot;
+    },
+    {
+        &quot;id&quot;: &quot;using-the-input-element-to-define-a-command&quot;,
+        &quot;original_id&quot;: &quot;using-the-input-element-to-define-a-command&quot;
+    },
+    {
+        &quot;id&quot;: &quot;using-the-option-element-to-define-a-command&quot;,
+        &quot;original_id&quot;: &quot;using-the-option-element-to-define-a-command&quot;
+    },
+    {
+        &quot;id&quot;: &quot;using-the-command-element-to-define-a-command&quot;,
+        &quot;original_id&quot;: &quot;using-the-command-element-to-define-a-command&quot;
+    },
+    {
+        &quot;id&quot;: &quot;using-the-command-attribute-on-command-elements-to-define-a-command-indirectly&quot;,
+        &quot;original_id&quot;: &quot;using-the-command-attribute-on-command-elements-to-define-a-command-indirectly&quot;
+    },
+    {
+        &quot;id&quot;: &quot;using-the-accesskey-attribute-on-a-label-element-to-define-a-command&quot;,
+        &quot;original_id&quot;: &quot;using-the-accesskey-attribute-on-a-label-element-to-define-a-command&quot;
+    },
+    {
+        &quot;id&quot;: &quot;using-the-accesskey-attribute-on-a-legend-element-to-define-a-command&quot;,
+        &quot;original_id&quot;: &quot;using-the-accesskey-attribute-on-a-legend-element-to-define-a-command&quot;
+    },
+    {
+        &quot;id&quot;: &quot;using-the-accesskey-attribute-to-define-a-command-on-other-elements&quot;,
+        &quot;original_id&quot;: &quot;using-the-accesskey-attribute-to-define-a-command-on-other-elements&quot;
+    }
+]
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementscommandsw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/commands/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/commands/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/commands/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/commands/contains.json
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementsthedetailselementdetailsexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-details-element/details-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-details-element/details-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-details-element/details-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+
+PASS HTML parsing should locate 2 details elements in this document 
+PASS HTML parsing should close an unclosed &lt;p&gt; before &lt;details&gt; 
+FAIL HTMLDetailsElement should be exposed for prototyping assert_true: expected true got false
+FAIL a dynamically created details element should be instanceof HTMLDetailsElement window.HTMLDetailsElement is not a function. (evaluating 'makeDetails() instanceof window.HTMLDetailsElement')
+FAIL a details element from the parser should be instanceof HTMLDetailsElement window.HTMLDetailsElement is not a function. (evaluating 'document.getElementById('one').getElementsByTagName('details')[0] instanceof window.HTMLDetailsElement')
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementsthedetailselementdetailshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-details-element/details.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-details-element/details.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-details-element/details.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,47 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;title&gt;HTML details element API&lt;/title&gt;
+    &lt;style&gt;#one, #two { visibility: hidden; }&lt;/style&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+
+    &lt;!--  Used in parsing tests  --&gt;
+    &lt;div id='one'&gt;&lt;details&gt;&lt;/details&gt;&lt;details&gt;&lt;/details&gt;&lt;/div&gt;
+    &lt;div id='two'&gt;&lt;p&gt;&lt;details&gt;&lt;/details&gt;&lt;/div&gt;
+
+    &lt;script type=&quot;text/javascript&quot;&gt;
+
+function makeDetails () {
+  return document.createElement('details');
+}
+
+
+// &lt;details&gt;
+test(function () {
+  var times = document.getElementById('one').getElementsByTagName('details');
+  assert_equals( times.length, 2 );
+}, 'HTML parsing should locate 2 details elements in this document');
+
+test(function () {
+  assert_equals( document.getElementById('two').getElementsByTagName('p')[0].innerHTML, '' );
+}, 'HTML parsing should close an unclosed &lt;p&gt; before &lt;details&gt;');
+
+test(function () {
+  assert_true( !!window.HTMLDetailsElement );
+}, 'HTMLDetailsElement should be exposed for prototyping');
+
+test(function () {
+  assert_true( makeDetails() instanceof window.HTMLDetailsElement);
+}, 'a dynamically created details element should be instanceof HTMLDetailsElement');
+
+test(function () {
+  assert_true( document.getElementById('one').getElementsByTagName('details')[0] instanceof window.HTMLDetailsElement);
+}, 'a details element from the parser should be instanceof HTMLDetailsElement');
+    &lt;/script&gt;
+
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementsthedetailselementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-details-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-details-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-details-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-details-element/details.html
+/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-details-element/toggleEvent.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementsthedialogelementcontainsjson"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/contains.json (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/contains.json                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/contains.json        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+[
+    {
+        &quot;id&quot;: &quot;anchor-points&quot;,
+        &quot;original_id&quot;: &quot;anchor-points&quot;
+    }
+]
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementsthedialogelementdialogcloseexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/dialog-close-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/dialog-close-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/dialog-close-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,24 @@
</span><ins>+foobar
+
+OK
+foobar
+
+OK
+foobar
+
+OK
+foobar
+
+OK
+foobar
+
+OK
+
+FAIL close() fires a close event d4.close is not a function. (In 'd4.close()', 'd4.close' is undefined)
+FAIL close() on a &lt;dialog&gt; that doesn't have an open attribute throws an InvalidStateError exception assert_throws: function &quot;function () {
+      d1.close();
+    }&quot; threw object &quot;TypeError: d1.close is not a function. (In 'd1.close()', ...&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to undefined, expected 11
+FAIL close() removes the open attribute and set the returnValue to the first argument assert_true: expected true got undefined
+FAIL close() without argument removes the open attribute and there's no returnValue assert_true: expected true got undefined
+FAIL close() should set the returnValue IDL attribute but not the JS property Can't find variable: HTMLDialogElement
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementsthedialogelementdialogclosehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/dialog-close.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/dialog-close.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/dialog-close.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,78 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;dialog element: close()&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#the-dialog-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;dialog id=&quot;d1&quot;&gt;
+  &lt;p&gt;foobar&lt;/p&gt;
+  &lt;button&gt;OK&lt;/button&gt;
+&lt;/dialog&gt;
+&lt;dialog id=&quot;d2&quot; open&gt;
+  &lt;p&gt;foobar&lt;/p&gt;
+  &lt;button&gt;OK&lt;/button&gt;
+&lt;/dialog&gt;
+&lt;dialog id=&quot;d3&quot; open&gt;
+  &lt;p&gt;foobar&lt;/p&gt;
+  &lt;button&gt;OK&lt;/button&gt;
+&lt;/dialog&gt;
+&lt;dialog id=&quot;d4&quot; open&gt;
+  &lt;p&gt;foobar&lt;/p&gt;
+  &lt;button&gt;OK&lt;/button&gt;
+&lt;/dialog&gt;
+&lt;dialog id=&quot;d5&quot; open&gt;
+  &lt;p&gt;foobar&lt;/p&gt;
+  &lt;button&gt;OK&lt;/button&gt;
+&lt;/dialog&gt;
+&lt;script&gt;
+  var d1 = document.getElementById('d1'),
+      d2 = document.getElementById('d2'),
+      d3 = document.getElementById('d3'),
+      d4 = document.getElementById('d4'),
+      d5 = document.getElementById('d5'),
+      t = async_test(&quot;close() fires a close event&quot;),
+      was_queued = false;
+
+  test(function(){
+    assert_throws(&quot;INVALID_STATE_ERR&quot;, function() {
+      d1.close();
+    });
+  }, &quot;close() on a &lt;dialog&gt; that doesn't have an open attribute throws an InvalidStateError exception&quot;);
+
+  test(function(){
+    assert_true(d2.open);
+    assert_equals(d2.returnValue, &quot;&quot;);
+    d2.close(&quot;closedialog&quot;);
+    assert_false(d2.hasAttribute(&quot;open&quot;));
+    assert_equals(d2.returnValue, &quot;closedialog&quot;);
+  }, &quot;close() removes the open attribute and set the returnValue to the first argument&quot;);
+
+  test(function(){
+    assert_true(d3.open);
+    assert_equals(d3.returnValue, &quot;&quot;);
+    d3.returnValue = &quot;foobar&quot;;
+    d3.close();
+    assert_false(d3.hasAttribute(&quot;open&quot;));
+    assert_equals(d3.returnValue, &quot;foobar&quot;);
+  }, &quot;close() without argument removes the open attribute and there's no returnValue&quot;);
+
+  d4.onclose = t.step_func_done(function(e) {
+    assert_true(was_queued, &quot;close event should be queued&quot;);
+    assert_true(e.isTrusted, &quot;close event is trusted&quot;);
+    assert_false(e.bubbles, &quot;close event doesn't bubble&quot;);
+    assert_false(e.cancelable, &quot;close event is not cancelable&quot;);
+  });
+
+  t.step(function() {
+    d4.close();
+    was_queued = true;
+  })
+
+  test(function(){
+    Object.defineProperty(HTMLDialogElement.prototype, 'returnValue', { set: function(v) { assert_unreached('JS-defined setter returnValue on the prototype was invoked'); }, configurable:true });
+    Object.defineProperty(d5, 'returnValue', { set: function(v) { assert_unreached('JS-defined setter returnValue on the instance was invoked'); }, configurable:true });
+     d5.close('foo');
+  }, &quot;close() should set the returnValue IDL attribute but not the JS property&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementsthedialogelementdialogshowModalexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/dialog-showModal-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/dialog-showModal-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/dialog-showModal-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,29 @@
</span><ins>+OK
+foobar
+
+OK
+foobar
+
+OK
+foobar
+
+OK
+foobar
+
+OK
+foobar
+
+OK      OK      OK
+
+FAIL dialog element: showModal() assert_false: expected false got undefined
+FAIL showModal() on a &lt;dialog&gt; that already has an open attribute throws an InvalidStateError exception assert_throws: function &quot;function () {
+      d2.showModal();
+      this.add_cleanu...&quot; threw object &quot;TypeError: d2.showModal is not a function. (In 'd2.showMo...&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to undefined, expected 11
+FAIL showModal() on a &lt;dialog&gt; not in a Document throws an InvalidStateError exception assert_throws: function &quot;function () {
+      d.showModal();
+      this.add_cleanup...&quot; threw object &quot;TypeError: d.showModal is not a function. (In 'd.showModa...&quot; that is not a DOMException INVALID_STATE_ERR: property &quot;code&quot; is equal to undefined, expected 11
+FAIL when opening multiple dialogs, only the newest one is non-inert assert_false: expected false got undefined
+FAIL opening dialog without focusable children assert_false: expected false got undefined
+FAIL opening dialog with multiple focusable children assert_false: expected false got undefined
+FAIL opening dialog with multiple focusable children, one having the autofocus attribute assert_false: expected false got undefined
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementsthedialogelementdialogshowModalhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/dialog-showModal.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/dialog-showModal.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/dialog-showModal.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,125 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;dialog element: showModal()&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#the-dialog-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;button id=&quot;b0&quot;&gt;OK&lt;/button&gt;
+&lt;dialog id=&quot;d1&quot;&gt;
+  &lt;p&gt;foobar&lt;/p&gt;
+  &lt;button id=&quot;b1&quot;&gt;OK&lt;/button&gt;
+&lt;/dialog&gt;
+&lt;dialog id=&quot;d2&quot; open&gt;
+  &lt;p&gt;foobar&lt;/p&gt;
+  &lt;button&gt;OK&lt;/button&gt;
+&lt;/dialog&gt;
+&lt;dialog id=&quot;d3&quot;&gt;
+  &lt;p&gt;foobar&lt;/p&gt;
+  &lt;button id=&quot;b3&quot;&gt;OK&lt;/button&gt;
+&lt;/dialog&gt;
+&lt;dialog id=&quot;d4&quot;&gt;
+  &lt;p&gt;foobar&lt;/p&gt;
+  &lt;button id=&quot;b4&quot;&gt;OK&lt;/button&gt;
+&lt;/dialog&gt;
+&lt;dialog id=&quot;d5&quot;&gt;
+  &lt;p&gt;foobar&lt;/p&gt;
+  &lt;button id=&quot;b5&quot;&gt;OK&lt;/button&gt;
+&lt;/dialog&gt;
+&lt;dialog id=&quot;d6&quot;&gt;&lt;/dialog&gt;
+&lt;dialog id=&quot;d7&quot;&gt;
+  &lt;input id=&quot;i71&quot; value=&quot;foobar&quot;&gt;
+  &lt;input id=&quot;i72&quot; value=&quot;foobar&quot;&gt;
+  &lt;button id=&quot;b7&quot;&gt;OK&lt;/button&gt;
+&lt;/dialog&gt;
+&lt;dialog id=&quot;d8&quot;&gt;
+  &lt;input id=&quot;i81&quot; value=&quot;foobar&quot;&gt;
+  &lt;input id=&quot;i82&quot; value=&quot;foobar&quot; autofocus&gt;
+  &lt;button id=&quot;b8&quot;&gt;OK&lt;/button&gt;
+&lt;/dialog&gt;
+&lt;script&gt;
+  var d1 = document.getElementById('d1'),
+      d2 = document.getElementById('d2'),
+      d3 = document.getElementById('d3'),
+      d4 = document.getElementById('d4'),
+      d5 = document.getElementById('d5'),
+      d6 = document.getElementById('d6'),
+      d7 = document.getElementById('d7'),
+      d8 = document.getElementById('d8'),
+      b0 = document.getElementById('b0'),
+      b1 = document.getElementById('b1'),
+      b3 = document.getElementById('b3'),
+      b4 = document.getElementById('b4'),
+      b5 = document.getElementById('b5');
+
+  test(function(){
+    assert_false(d1.open);
+    assert_false(b0.commandDisabled);
+    d1.showModal();
+    this.add_cleanup(function() { d1.close(); });
+    assert_true(d1.open);
+    assert_true(b0.commandDisabled);
+    assert_equals(document.activeElement, b1);
+  });
+
+  test(function(){
+    assert_throws(&quot;INVALID_STATE_ERR&quot;, function() {
+      d2.showModal();
+      this.add_cleanup(function() { d2.close(); });
+    });
+  }, &quot;showModal() on a &lt;dialog&gt; that already has an open attribute throws an InvalidStateError exception&quot;);
+
+  test(function(){
+    var d = document.createElement(&quot;dialog&quot;);
+    assert_throws(&quot;INVALID_STATE_ERR&quot;, function() {
+      d.showModal();
+      this.add_cleanup(function() { d.close(); });
+    });
+  }, &quot;showModal() on a &lt;dialog&gt; not in a Document throws an InvalidStateError exception&quot;);
+
+  test(function(){
+    assert_false(d3.open);
+    assert_false(b3.commandDisabled);
+    assert_false(d4.open);
+    assert_false(b4.commandDisabled);
+    assert_false(d5.open);
+    assert_false(b5.commandDisabled);
+    d3.showModal();
+    this.add_cleanup(function() { d3.close(); });
+    d4.showModal();
+    this.add_cleanup(function() { d4.close(); });
+    d5.showModal();
+    this.add_cleanup(function() { d5.close(); });
+    assert_true(d3.open);
+    assert_true(b3.commandDisabled);
+    assert_true(d4.open);
+    assert_true(b4.commandDisabled);
+    assert_true(d5.open);
+    assert_false(b5.commandDisabled);
+  }, &quot;when opening multiple dialogs, only the newest one is non-inert&quot;);
+
+  test(function(){
+    assert_false(d6.open);
+    d6.showModal();
+    this.add_cleanup(function() { d6.close(); });
+    assert_true(d6.open);
+    assert_equals(document.activeElement, d6);
+  }, &quot;opening dialog without focusable children&quot;);
+
+  test(function(){
+    assert_false(d7.open);
+    d7.showModal();
+    this.add_cleanup(function() { d7.close(); });
+    assert_true(d7.open);
+    assert_equals(document.activeElement, document.getElementById(&quot;i71&quot;));
+  }, &quot;opening dialog with multiple focusable children&quot;);
+
+  test(function(){
+    assert_false(d8.open);
+    d8.showModal();
+    this.add_cleanup(function() { d8.close(); });
+    assert_true(d8.open);
+    assert_equals(document.activeElement, document.getElementById(&quot;i82&quot;));
+  }, &quot;opening dialog with multiple focusable children, one having the autofocus attribute&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementsthedialogelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,20 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/contains.json
+/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/dialog-close.html
+/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-dialog-element/dialog-showModal.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementsthemenuelementcontainsjson"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-menu-element/contains.json (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-menu-element/contains.json                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-menu-element/contains.json        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+[
+    {
+        &quot;id&quot;: &quot;menus-intro&quot;,
+        &quot;original_id&quot;: &quot;menus-intro&quot;
+    },
+    {
+        &quot;id&quot;: &quot;building-menus-and-toolbars&quot;,
+        &quot;original_id&quot;: &quot;building-menus-and-toolbars&quot;
+    },
+    {
+        &quot;id&quot;: &quot;context-menus&quot;,
+        &quot;original_id&quot;: &quot;context-menus&quot;
+    },
+    {
+        &quot;id&quot;: &quot;toolbars&quot;,
+        &quot;original_id&quot;: &quot;toolbars&quot;
+    }
+]
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsinteractiveelementsthemenuelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-menu-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-menu-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-menu-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/interactive-elements/the-menu-element/contains.json
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsinterfacesexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/interfaces-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/interfaces-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/interfaces-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,276 @@
</span><ins>+
+PASS Interfaces for abbr 
+PASS Interfaces for ABBR 
+PASS Interfaces for acronym 
+PASS Interfaces for ACRONYM 
+PASS Interfaces for address 
+PASS Interfaces for ADDRESS 
+PASS Interfaces for applet 
+PASS Interfaces for APPLET 
+PASS Interfaces for audio 
+PASS Interfaces for AUDIO 
+PASS Interfaces for b 
+PASS Interfaces for B 
+PASS Interfaces for base 
+PASS Interfaces for BASE 
+FAIL Interfaces for basefont assert_equals: Element basefont should have HTMLUnknownElement as its primary interface. expected &quot;[object HTMLUnknownElement]&quot; but got &quot;[object HTMLBaseFontElement]&quot;
+FAIL Interfaces for BASEFONT assert_equals: Element BASEFONT should have HTMLUnknownElement as its primary interface. expected &quot;[object HTMLUnknownElement]&quot; but got &quot;[object HTMLBaseFontElement]&quot;
+PASS Interfaces for bdo 
+PASS Interfaces for BDO 
+FAIL Interfaces for bgsound assert_equals: Element bgsound should have HTMLUnknownElement as its primary interface. expected &quot;[object HTMLUnknownElement]&quot; but got &quot;[object HTMLElement]&quot;
+FAIL Interfaces for BGSOUND assert_equals: Element BGSOUND should have HTMLUnknownElement as its primary interface. expected &quot;[object HTMLUnknownElement]&quot; but got &quot;[object HTMLElement]&quot;
+PASS Interfaces for big 
+PASS Interfaces for BIG 
+PASS Interfaces for blink 
+PASS Interfaces for BLINK 
+PASS Interfaces for blockquote 
+PASS Interfaces for BLOCKQUOTE 
+PASS Interfaces for body 
+PASS Interfaces for BODY 
+PASS Interfaces for br 
+PASS Interfaces for BR 
+PASS Interfaces for button 
+PASS Interfaces for BUTTON 
+PASS Interfaces for canvas 
+PASS Interfaces for CANVAS 
+PASS Interfaces for caption 
+PASS Interfaces for CAPTION 
+PASS Interfaces for center 
+PASS Interfaces for CENTER 
+PASS Interfaces for cite 
+PASS Interfaces for CITE 
+PASS Interfaces for code 
+PASS Interfaces for CODE 
+PASS Interfaces for col 
+PASS Interfaces for COL 
+PASS Interfaces for colgroup 
+PASS Interfaces for COLGROUP 
+PASS Interfaces for dd 
+PASS Interfaces for DD 
+PASS Interfaces for del 
+PASS Interfaces for DEL 
+PASS Interfaces for dfn 
+PASS Interfaces for DFN 
+PASS Interfaces for dir 
+PASS Interfaces for DIR 
+PASS Interfaces for div 
+PASS Interfaces for DIV 
+PASS Interfaces for dl 
+PASS Interfaces for DL 
+PASS Interfaces for dt 
+PASS Interfaces for DT 
+PASS Interfaces for em 
+PASS Interfaces for EM 
+PASS Interfaces for embed 
+PASS Interfaces for EMBED 
+PASS Interfaces for fieldset 
+PASS Interfaces for FIELDSET 
+PASS Interfaces for font 
+PASS Interfaces for FONT 
+PASS Interfaces for form 
+PASS Interfaces for FORM 
+PASS Interfaces for frame 
+PASS Interfaces for FRAME 
+PASS Interfaces for frameset 
+PASS Interfaces for FRAMESET 
+PASS Interfaces for h1 
+PASS Interfaces for H1 
+PASS Interfaces for h2 
+PASS Interfaces for H2 
+PASS Interfaces for h3 
+PASS Interfaces for H3 
+PASS Interfaces for h4 
+PASS Interfaces for H4 
+PASS Interfaces for h5 
+PASS Interfaces for H5 
+PASS Interfaces for h6 
+PASS Interfaces for H6 
+PASS Interfaces for head 
+PASS Interfaces for HEAD 
+PASS Interfaces for hr 
+PASS Interfaces for HR 
+PASS Interfaces for html 
+PASS Interfaces for HTML 
+PASS Interfaces for i 
+PASS Interfaces for I 
+PASS Interfaces for iframe 
+PASS Interfaces for IFRAME 
+PASS Interfaces for image 
+PASS Interfaces for IMAGE 
+PASS Interfaces for img 
+PASS Interfaces for IMG 
+PASS Interfaces for input 
+PASS Interfaces for INPUT 
+PASS Interfaces for ins 
+PASS Interfaces for INS 
+PASS Interfaces for isindex 
+PASS Interfaces for ISINDEX 
+PASS Interfaces for kbd 
+PASS Interfaces for KBD 
+PASS Interfaces for keygen 
+PASS Interfaces for KEYGEN 
+PASS Interfaces for label 
+PASS Interfaces for LABEL 
+PASS Interfaces for legend 
+PASS Interfaces for LEGEND 
+PASS Interfaces for li 
+PASS Interfaces for LI 
+PASS Interfaces for link 
+PASS Interfaces for LINK 
+FAIL Interfaces for listing assert_equals: Element listing should have HTMLElement as its primary interface. expected &quot;[object HTMLElement]&quot; but got &quot;[object HTMLPreElement]&quot;
+FAIL Interfaces for LISTING assert_equals: Element LISTING should have HTMLElement as its primary interface. expected &quot;[object HTMLElement]&quot; but got &quot;[object HTMLPreElement]&quot;
+PASS Interfaces for map 
+PASS Interfaces for MAP 
+PASS Interfaces for marquee 
+PASS Interfaces for MARQUEE 
+PASS Interfaces for menu 
+PASS Interfaces for MENU 
+PASS Interfaces for meta 
+PASS Interfaces for META 
+PASS Interfaces for multicol 
+PASS Interfaces for MULTICOL 
+PASS Interfaces for nobr 
+PASS Interfaces for NOBR 
+PASS Interfaces for noembed 
+PASS Interfaces for NOEMBED 
+PASS Interfaces for noframes 
+PASS Interfaces for NOFRAMES 
+PASS Interfaces for noscript 
+PASS Interfaces for NOSCRIPT 
+PASS Interfaces for object 
+PASS Interfaces for OBJECT 
+PASS Interfaces for ol 
+PASS Interfaces for OL 
+PASS Interfaces for optgroup 
+PASS Interfaces for OPTGROUP 
+PASS Interfaces for option 
+PASS Interfaces for OPTION 
+PASS Interfaces for p 
+PASS Interfaces for P 
+PASS Interfaces for param 
+PASS Interfaces for PARAM 
+PASS Interfaces for plaintext 
+PASS Interfaces for PLAINTEXT 
+PASS Interfaces for pre 
+PASS Interfaces for PRE 
+PASS Interfaces for q 
+PASS Interfaces for Q 
+PASS Interfaces for s 
+PASS Interfaces for S 
+PASS Interfaces for samp 
+PASS Interfaces for SAMP 
+PASS Interfaces for script 
+PASS Interfaces for SCRIPT 
+PASS Interfaces for select 
+PASS Interfaces for SELECT 
+PASS Interfaces for small 
+PASS Interfaces for SMALL 
+PASS Interfaces for source 
+PASS Interfaces for SOURCE 
+PASS Interfaces for spacer 
+PASS Interfaces for SPACER 
+PASS Interfaces for span 
+PASS Interfaces for SPAN 
+PASS Interfaces for strike 
+PASS Interfaces for STRIKE 
+PASS Interfaces for strong 
+PASS Interfaces for STRONG 
+PASS Interfaces for style 
+PASS Interfaces for STYLE 
+PASS Interfaces for sub 
+PASS Interfaces for SUB 
+PASS Interfaces for sup 
+PASS Interfaces for SUP 
+PASS Interfaces for table 
+PASS Interfaces for TABLE 
+PASS Interfaces for tbody 
+PASS Interfaces for TBODY 
+FAIL Interfaces for td assert_equals: Element td should have HTMLTableDataCellElement as its primary interface. expected &quot;[object HTMLTableDataCellElement]&quot; but got &quot;[object HTMLTableCellElement]&quot;
+FAIL Interfaces for TD assert_equals: Element TD should have HTMLTableDataCellElement as its primary interface. expected &quot;[object HTMLTableDataCellElement]&quot; but got &quot;[object HTMLTableCellElement]&quot;
+PASS Interfaces for textarea 
+PASS Interfaces for TEXTAREA 
+PASS Interfaces for tfoot 
+PASS Interfaces for TFOOT 
+FAIL Interfaces for th assert_equals: Element th should have HTMLTableHeaderCellElement as its primary interface. expected &quot;[object HTMLTableHeaderCellElement]&quot; but got &quot;[object HTMLTableCellElement]&quot;
+FAIL Interfaces for TH assert_equals: Element TH should have HTMLTableHeaderCellElement as its primary interface. expected &quot;[object HTMLTableHeaderCellElement]&quot; but got &quot;[object HTMLTableCellElement]&quot;
+PASS Interfaces for thead 
+PASS Interfaces for THEAD 
+PASS Interfaces for title 
+PASS Interfaces for TITLE 
+PASS Interfaces for tr 
+PASS Interfaces for TR 
+PASS Interfaces for tt 
+PASS Interfaces for TT 
+PASS Interfaces for u 
+PASS Interfaces for U 
+PASS Interfaces for ul 
+PASS Interfaces for UL 
+PASS Interfaces for var 
+PASS Interfaces for VAR 
+PASS Interfaces for video 
+PASS Interfaces for VIDEO 
+PASS Interfaces for wbr 
+PASS Interfaces for WBR 
+FAIL Interfaces for xmp assert_equals: Element xmp should have HTMLElement as its primary interface. expected &quot;[object HTMLElement]&quot; but got &quot;[object HTMLPreElement]&quot;
+FAIL Interfaces for XMP assert_equals: Element XMP should have HTMLElement as its primary interface. expected &quot;[object HTMLElement]&quot; but got &quot;[object HTMLPreElement]&quot;
+PASS Interfaces for section 
+PASS Interfaces for SECTION 
+PASS Interfaces for nav 
+PASS Interfaces for NAV 
+PASS Interfaces for article 
+PASS Interfaces for ARTICLE 
+PASS Interfaces for aside 
+PASS Interfaces for ASIDE 
+PASS Interfaces for hgroup 
+PASS Interfaces for HGROUP 
+PASS Interfaces for header 
+PASS Interfaces for HEADER 
+PASS Interfaces for footer 
+PASS Interfaces for FOOTER 
+FAIL Interfaces for time assert_equals: Element time should have HTMLTimeElement as its primary interface. expected &quot;[object HTMLTimeElement]&quot; but got &quot;[object HTMLElement]&quot;
+FAIL Interfaces for TIME assert_equals: Element TIME should have HTMLTimeElement as its primary interface. expected &quot;[object HTMLTimeElement]&quot; but got &quot;[object HTMLElement]&quot;
+PASS Interfaces for mark 
+PASS Interfaces for MARK 
+PASS Interfaces for progress 
+PASS Interfaces for PROGRESS 
+PASS Interfaces for meter 
+PASS Interfaces for METER 
+PASS Interfaces for ruby 
+PASS Interfaces for RUBY 
+PASS Interfaces for rt 
+PASS Interfaces for RT 
+PASS Interfaces for rp 
+PASS Interfaces for RP 
+PASS Interfaces for figure 
+PASS Interfaces for FIGURE 
+FAIL Interfaces for datalist assert_equals: Element datalist should have HTMLDataListElement as its primary interface. expected &quot;[object HTMLDataListElement]&quot; but got &quot;[object HTMLUnknownElement]&quot;
+FAIL Interfaces for DATALIST assert_equals: Element DATALIST should have HTMLDataListElement as its primary interface. expected &quot;[object HTMLDataListElement]&quot; but got &quot;[object HTMLUnknownElement]&quot;
+PASS Interfaces for output 
+PASS Interfaces for OUTPUT 
+FAIL Interfaces for details window[i] is not a function. (evaluating 'e instanceof window[i]')
+FAIL Interfaces for DETAILS window[i] is not a function. (evaluating 'e instanceof window[i]')
+FAIL Interfaces for command assert_equals: Element command should have HTMLCommandElement as its primary interface. expected &quot;[object HTMLCommandElement]&quot; but got &quot;[object HTMLElement]&quot;
+FAIL Interfaces for COMMAND assert_equals: Element COMMAND should have HTMLCommandElement as its primary interface. expected &quot;[object HTMLCommandElement]&quot; but got &quot;[object HTMLElement]&quot;
+PASS Interfaces for nextid 
+PASS Interfaces for NEXTID 
+FAIL Interfaces for rb assert_equals: Element rb should have HTMLUnknownElement as its primary interface. expected &quot;[object HTMLUnknownElement]&quot; but got &quot;[object HTMLElement]&quot;
+FAIL Interfaces for RB assert_equals: Element RB should have HTMLUnknownElement as its primary interface. expected &quot;[object HTMLUnknownElement]&quot; but got &quot;[object HTMLElement]&quot;
+PASS Interfaces for bdi 
+PASS Interfaces for BDI 
+FAIL Interfaces for data assert_equals: Element data should have HTMLDataElement as its primary interface. expected &quot;[object HTMLDataElement]&quot; but got &quot;[object HTMLUnknownElement]&quot;
+FAIL Interfaces for DATA assert_equals: Element DATA should have HTMLDataElement as its primary interface. expected &quot;[object HTMLDataElement]&quot; but got &quot;[object HTMLUnknownElement]&quot;
+PASS Interfaces for a 
+PASS Interfaces for A 
+PASS Interfaces for area 
+PASS Interfaces for AREA 
+FAIL Interfaces for dialog assert_equals: Element dialog should have HTMLDialogElement as its primary interface. expected &quot;[object HTMLDialogElement]&quot; but got &quot;[object HTMLUnknownElement]&quot;
+FAIL Interfaces for DIALOG assert_equals: Element DIALOG should have HTMLDialogElement as its primary interface. expected &quot;[object HTMLDialogElement]&quot; but got &quot;[object HTMLUnknownElement]&quot;
+PASS Interfaces for figcaption 
+PASS Interfaces for FIGCAPTION 
+PASS Interfaces for summary 
+PASS Interfaces for SUMMARY 
+PASS Interfaces for track 
+PASS Interfaces for TRACK 
+PASS Interfaces for foo 
+PASS Interfaces for FOO 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsinterfaceshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/interfaces.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/interfaces.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/interfaces.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,33 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;Test of interfaces&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:Ms2ger@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://heycam.github.io/webidl/#host-objects&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf#page=96&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=interfaces.js&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+function do_test(local_name, iface) {
+  test(function() {
+    var e = document.createElement(local_name), i = &quot;HTML&quot; + iface + &quot;Element&quot;;
+    assert_class_string(e, i,
+                        &quot;Element &quot; + local_name + &quot; should have &quot; + i +
+                        &quot; as its primary interface.&quot;);
+    assert_true(e instanceof window[i],
+                &quot;Element &quot; + local_name + &quot; should implement &quot; + i + &quot;.&quot;);
+    assert_true(e instanceof HTMLElement,
+                &quot;Element &quot; + local_name + &quot; should implement HTMLElement.&quot;);
+    assert_true(e instanceof Element,
+                &quot;Element &quot; + local_name + &quot; should implement Element.&quot;);
+    assert_true(e instanceof Node,
+                &quot;Element &quot; + local_name + &quot; should implement Node.&quot;);
+  }, &quot;Interfaces for &quot; + local_name);
+}
+
+elements.forEach(function(a) {
+  do_test(a[0], a[1]);
+  do_test(a[0].toUpperCase(), a[1]);
+})
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsinterfacesjs"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/interfaces.js (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/interfaces.js                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/interfaces.js        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,139 @@
</span><ins>+var elements = [
+  [&quot;abbr&quot;, &quot;&quot;],
+  [&quot;acronym&quot;, &quot;&quot;],
+  [&quot;address&quot;, &quot;&quot;],
+  [&quot;applet&quot;, &quot;Applet&quot;],
+  [&quot;audio&quot;, &quot;Audio&quot;],
+  [&quot;b&quot;, &quot;&quot;],
+  [&quot;base&quot;, &quot;Base&quot;],
+  [&quot;basefont&quot;, &quot;Unknown&quot;],
+  [&quot;bdo&quot;, &quot;&quot;],
+  [&quot;bgsound&quot;, &quot;Unknown&quot;],
+  [&quot;big&quot;, &quot;&quot;],
+  [&quot;blink&quot;, &quot;Unknown&quot;],
+  [&quot;blockquote&quot;, &quot;Quote&quot;],
+  [&quot;body&quot;, &quot;Body&quot;],
+  [&quot;br&quot;, &quot;BR&quot;],
+  [&quot;button&quot;, &quot;Button&quot;],
+  [&quot;canvas&quot;, &quot;Canvas&quot;],
+  [&quot;caption&quot;, &quot;TableCaption&quot;],
+  [&quot;center&quot;, &quot;&quot;],
+  [&quot;cite&quot;, &quot;&quot;],
+  [&quot;code&quot;, &quot;&quot;],
+  [&quot;col&quot;, &quot;TableCol&quot;],
+  [&quot;colgroup&quot;, &quot;TableCol&quot;],
+  [&quot;dd&quot;, &quot;&quot;],
+  [&quot;del&quot;, &quot;Mod&quot;],
+  [&quot;dfn&quot;, &quot;&quot;],
+  [&quot;dir&quot;, &quot;Directory&quot;],
+  [&quot;div&quot;, &quot;Div&quot;],
+  [&quot;dl&quot;, &quot;DList&quot;],
+  [&quot;dt&quot;, &quot;&quot;],
+  [&quot;em&quot;, &quot;&quot;],
+  [&quot;embed&quot;, &quot;Embed&quot;],
+  [&quot;fieldset&quot;, &quot;FieldSet&quot;],
+  [&quot;font&quot;, &quot;Font&quot;],
+  [&quot;form&quot;, &quot;Form&quot;],
+  [&quot;frame&quot;, &quot;Frame&quot;],
+  [&quot;frameset&quot;, &quot;FrameSet&quot;],
+  [&quot;h1&quot;, &quot;Heading&quot;],
+  [&quot;h2&quot;, &quot;Heading&quot;],
+  [&quot;h3&quot;, &quot;Heading&quot;],
+  [&quot;h4&quot;, &quot;Heading&quot;],
+  [&quot;h5&quot;, &quot;Heading&quot;],
+  [&quot;h6&quot;, &quot;Heading&quot;],
+  [&quot;head&quot;, &quot;Head&quot;],
+  [&quot;hr&quot;, &quot;HR&quot;],
+  [&quot;html&quot;, &quot;Html&quot;],
+  [&quot;i&quot;, &quot;&quot;],
+  [&quot;iframe&quot;, &quot;IFrame&quot;],
+  [&quot;image&quot;, &quot;Unknown&quot;],
+  [&quot;img&quot;, &quot;Image&quot;],
+  [&quot;input&quot;, &quot;Input&quot;],
+  [&quot;ins&quot;, &quot;Mod&quot;],
+  [&quot;isindex&quot;, &quot;Unknown&quot;],
+  [&quot;kbd&quot;, &quot;&quot;],
+  [&quot;keygen&quot;, &quot;Keygen&quot;],
+  [&quot;label&quot;, &quot;Label&quot;],
+  [&quot;legend&quot;, &quot;Legend&quot;],
+  [&quot;li&quot;, &quot;LI&quot;],
+  [&quot;link&quot;, &quot;Link&quot;],
+  [&quot;listing&quot;, &quot;&quot;],
+  [&quot;map&quot;, &quot;Map&quot;],
+  [&quot;marquee&quot;, &quot;Marquee&quot;],
+  [&quot;menu&quot;, &quot;Menu&quot;],
+  [&quot;meta&quot;, &quot;Meta&quot;],
+  [&quot;multicol&quot;, &quot;Unknown&quot;],
+  [&quot;nobr&quot;, &quot;&quot;],
+  [&quot;noembed&quot;, &quot;&quot;],
+  [&quot;noframes&quot;, &quot;&quot;],
+  [&quot;noscript&quot;, &quot;&quot;],
+  [&quot;object&quot;, &quot;Object&quot;],
+  [&quot;ol&quot;, &quot;OList&quot;],
+  [&quot;optgroup&quot;, &quot;OptGroup&quot;],
+  [&quot;option&quot;, &quot;Option&quot;],
+  [&quot;p&quot;, &quot;Paragraph&quot;],
+  [&quot;param&quot;, &quot;Param&quot;],
+  [&quot;plaintext&quot;, &quot;&quot;],
+  [&quot;pre&quot;, &quot;Pre&quot;],
+  [&quot;q&quot;, &quot;Quote&quot;],
+  [&quot;s&quot;, &quot;&quot;],
+  [&quot;samp&quot;, &quot;&quot;],
+  [&quot;script&quot;, &quot;Script&quot;],
+  [&quot;select&quot;, &quot;Select&quot;],
+  [&quot;small&quot;, &quot;&quot;],
+  [&quot;source&quot;, &quot;Source&quot;],
+  [&quot;spacer&quot;, &quot;Unknown&quot;],
+  [&quot;span&quot;, &quot;Span&quot;],
+  [&quot;strike&quot;, &quot;&quot;],
+  [&quot;strong&quot;, &quot;&quot;],
+  [&quot;style&quot;, &quot;Style&quot;],
+  [&quot;sub&quot;, &quot;&quot;],
+  [&quot;sup&quot;, &quot;&quot;],
+  [&quot;table&quot;, &quot;Table&quot;],
+  [&quot;tbody&quot;, &quot;TableSection&quot;],
+  [&quot;td&quot;, &quot;TableDataCell&quot;],
+  [&quot;textarea&quot;, &quot;TextArea&quot;],
+  [&quot;tfoot&quot;, &quot;TableSection&quot;],
+  [&quot;th&quot;, &quot;TableHeaderCell&quot;],
+  [&quot;thead&quot;, &quot;TableSection&quot;],
+  [&quot;title&quot;, &quot;Title&quot;],
+  [&quot;tr&quot;, &quot;TableRow&quot;],
+  [&quot;tt&quot;, &quot;&quot;],
+  [&quot;u&quot;, &quot;&quot;],
+  [&quot;ul&quot;, &quot;UList&quot;],
+  [&quot;var&quot;, &quot;&quot;],
+  [&quot;video&quot;, &quot;Video&quot;],
+  [&quot;wbr&quot;, &quot;&quot;],
+  [&quot;xmp&quot;, &quot;&quot;],
+  [&quot;section&quot;, &quot;&quot;],
+  [&quot;nav&quot;, &quot;&quot;],
+  [&quot;article&quot;, &quot;&quot;],
+  [&quot;aside&quot;, &quot;&quot;],
+  [&quot;hgroup&quot;, &quot;&quot;],
+  [&quot;header&quot;, &quot;&quot;],
+  [&quot;footer&quot;, &quot;&quot;],
+  [&quot;time&quot;, &quot;Time&quot;],
+  [&quot;mark&quot;, &quot;&quot;],
+  [&quot;progress&quot;, &quot;Progress&quot;],
+  [&quot;meter&quot;, &quot;Meter&quot;],
+  [&quot;ruby&quot;, &quot;&quot;],
+  [&quot;rt&quot;, &quot;&quot;],
+  [&quot;rp&quot;, &quot;&quot;],
+  [&quot;figure&quot;, &quot;&quot;],
+  [&quot;datalist&quot;, &quot;DataList&quot;],
+  [&quot;output&quot;, &quot;Output&quot;],
+  [&quot;details&quot;, &quot;Details&quot;],
+  [&quot;command&quot;, &quot;Command&quot;],
+  [&quot;nextid&quot;, &quot;Unknown&quot;],
+  [&quot;rb&quot;, &quot;Unknown&quot;],
+  [&quot;bdi&quot;, &quot;&quot;],
+  [&quot;data&quot;, &quot;Data&quot;],
+  [&quot;a&quot;, &quot;Anchor&quot;],
+  [&quot;area&quot;, &quot;Area&quot;],
+  [&quot;dialog&quot;, &quot;Dialog&quot;],
+  [&quot;figcaption&quot;, &quot;&quot;],
+  [&quot;summary&quot;, &quot;&quot;],
+  [&quot;track&quot;, &quot;Track&quot;],
+  [&quot;foo&quot;, &quot;Unknown&quot;]
+];
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticslinksdownloadingresourcescontainsjson"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/links/downloading-resources/contains.json (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/links/downloading-resources/contains.json                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/links/downloading-resources/contains.json        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+[
+    {
+        &quot;id&quot;: &quot;hyperlink-auditing&quot;,
+        &quot;original_id&quot;: &quot;hyperlink-auditing&quot;
+    }
+]
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticslinksdownloadingresourcesw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/links/downloading-resources/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/links/downloading-resources/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/links/downloading-resources/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/links/downloading-resources/contains.json
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticslinkslinktypescontainsjson"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/links/linktypes/contains.json (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/links/linktypes/contains.json                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/links/linktypes/contains.json        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,68 @@
</span><ins>+[
+    {
+        &quot;id&quot;: &quot;rel-alternate&quot;,
+        &quot;original_id&quot;: &quot;rel-alternate&quot;
+    },
+    {
+        &quot;id&quot;: &quot;link-type-author&quot;,
+        &quot;original_id&quot;: &quot;link-type-author&quot;
+    },
+    {
+        &quot;id&quot;: &quot;link-type-bookmark&quot;,
+        &quot;original_id&quot;: &quot;link-type-bookmark&quot;
+    },
+    {
+        &quot;id&quot;: &quot;link-type-help&quot;,
+        &quot;original_id&quot;: &quot;link-type-help&quot;
+    },
+    {
+        &quot;id&quot;: &quot;rel-icon&quot;,
+        &quot;original_id&quot;: &quot;rel-icon&quot;
+    },
+    {
+        &quot;id&quot;: &quot;link-type-license&quot;,
+        &quot;original_id&quot;: &quot;link-type-license&quot;
+    },
+    {
+        &quot;id&quot;: &quot;link-type-nofollow&quot;,
+        &quot;original_id&quot;: &quot;link-type-nofollow&quot;
+    },
+    {
+        &quot;id&quot;: &quot;link-type-noreferrer&quot;,
+        &quot;original_id&quot;: &quot;link-type-noreferrer&quot;
+    },
+    {
+        &quot;id&quot;: &quot;link-type-prefetch&quot;,
+        &quot;original_id&quot;: &quot;link-type-prefetch&quot;
+    },
+    {
+        &quot;id&quot;: &quot;link-type-search&quot;,
+        &quot;original_id&quot;: &quot;link-type-search&quot;
+    },
+    {
+        &quot;id&quot;: &quot;link-type-stylesheet&quot;,
+        &quot;original_id&quot;: &quot;link-type-stylesheet&quot;
+    },
+    {
+        &quot;id&quot;: &quot;link-type-tag&quot;,
+        &quot;original_id&quot;: &quot;link-type-tag&quot;
+    },
+    {
+        &quot;id&quot;: &quot;sequential-link-types&quot;,
+        &quot;original_id&quot;: &quot;sequential-link-types&quot;,
+        &quot;children&quot;: [
+            {
+                &quot;id&quot;: &quot;link-type-next&quot;,
+                &quot;original_id&quot;: &quot;link-type-next&quot;
+            },
+            {
+                &quot;id&quot;: &quot;link-type-prev&quot;,
+                &quot;original_id&quot;: &quot;link-type-prev&quot;
+            }
+        ]
+    },
+    {
+        &quot;id&quot;: &quot;other-link-types&quot;,
+        &quot;original_id&quot;: &quot;other-link-types&quot;
+    }
+]
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticslinkslinktypesoriginalidjson"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/links/linktypes/original-id.json (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/links/linktypes/original-id.json                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/links/linktypes/original-id.json        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1 @@
</span><ins>+{&quot;original_id&quot;:&quot;linkTypes&quot;}
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticslinkslinktypesw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/links/linktypes/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/links/linktypes/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/links/linktypes/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/links/linktypes/contains.json
+/LayoutTests/http/tests/w3c/html/semantics/links/linktypes/original-id.json
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementcontainsjson"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/contains.json (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/contains.json                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/contains.json        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+[
+    {
+        &quot;id&quot;: &quot;scriptinglanguages&quot;,
+        &quot;original_id&quot;: &quot;scriptingLanguages&quot;
+    },
+    {
+        &quot;id&quot;: &quot;restrictions-for-contents-of-script-elements&quot;,
+        &quot;original_id&quot;: &quot;restrictions-for-contents-of-script-elements&quot;
+    },
+    {
+        &quot;id&quot;: &quot;inline-documentation-for-external-scripts&quot;,
+        &quot;original_id&quot;: &quot;inline-documentation-for-external-scripts&quot;
+    },
+    {
+        &quot;id&quot;: &quot;scripttagxslt&quot;,
+        &quot;original_id&quot;: &quot;scriptTagXSLT&quot;
+    }
+]
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementlogpy"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/log.py (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/log.py                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/log.py        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,13 @@
</span><ins>+import time
+
+def main(request, response):
+    response.headers.append(&quot;Content-Type&quot;, &quot;text/javascript&quot;)
+    try:
+        script_id = int(request.GET.first(&quot;id&quot;))
+        delay = int(request.GET.first(&quot;sec&quot;))
+    except:
+        response.set_error(400, &quot;Invalid parameter&quot;)
+
+    time.sleep(int(delay))
+
+    return &quot;log('%s')&quot; % script_id
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptbeforeaftereventsexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-before-after-events-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-before-after-events-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-before-after-events-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+FAIL 'beforescriptexecute'/'afterscriptexecute' events have been fired assert_true: expected true got false
+FAIL default prevented 'beforescriptexecute' event aborts script execution assert_unreached: script execution not aborted by default prevented 'beforescriptexecute' event Reached unreachable code
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptbeforeaftereventshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-before-after-events.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-before-after-events.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-before-after-events.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,55 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;script beforescriptexecute/afterscriptexecute events&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#the-script-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+  var t1 = async_test(&quot;'beforescriptexecute'/'afterscriptexecute' events have been fired&quot;),
+      t2 = async_test(&quot;default prevented 'beforescriptexecute' event aborts script execution&quot;),
+      a = false,
+      b = false;
+
+  var before = function(e) {
+    b = true;
+    test(function(){
+      assert_true(e.isTrusted);
+      assert_true(e.bubbles);
+      assert_true(e.cancelable);
+    }, &quot;'beforescriptexecute' event is trusted, bubbles and is cancelable&quot;);
+  };
+
+  var after = function(e) {
+    a = true;
+    test(function(){
+      assert_true(e.isTrusted);
+      assert_true(e.bubbles);
+      assert_false(e.cancelable);
+    }, &quot;'afterscriptexecute' event is trusted, bubbles and isn't cancelable&quot;);
+  };
+
+  var prevent_default = function(e) {
+    t2.step(function() {
+      e.preventDefault();
+      assert_true(e.defaultPrevented);
+    });
+  };
+
+  document.body.onload = function() {
+    t1.step(function() {
+      assert_true(a &amp;&amp; b);
+    });
+    t1.done();
+    t2.done();
+  };
+&lt;/script&gt;
+&lt;script onbeforescriptexecute=before(event) onafterscriptexecute=after(event)&gt;
+  document.querySelector(&quot;script&quot;);
+&lt;/script&gt;
+&lt;script onbeforescriptexecute=prevent_default(event)&gt;
+  t2.step(function() {
+    assert_unreached(&quot;script execution not aborted by default prevented 'beforescriptexecute' event&quot;);
+  });
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptforeventexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-for-event-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-for-event-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-for-event-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,20 @@
</span><ins>+
+PASS Scripts with for and event attributes 
+PASS Script 0 
+PASS Script 1 
+PASS Script 2 
+PASS Script 3 
+PASS Script 4 
+FAIL Script 5 assert_equals: script for=&quot;&quot; event=&quot;onload&quot; expected false but got true
+FAIL Script 6 assert_equals: script for=&quot;window&quot; event=&quot;&quot; expected false but got true
+FAIL Script 7 assert_equals: script for=&quot;&quot; event=&quot;&quot; expected false but got true
+PASS Script 8 
+PASS Script 9 
+PASS Script 10 
+PASS Script 11 
+PASS Script 12 
+PASS Script 13 
+PASS Script 14 
+PASS Script 15 
+PASS Script 16 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptforeventxhtmlexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-for-event-xhtml-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-for-event-xhtml-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-for-event-xhtml-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS Scripts with for and event attributes should not run. 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptforeventxhtmlxhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-for-event-xhtml.xhtml (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-for-event-xhtml.xhtml                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-for-event-xhtml.xhtml        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,22 @@
</span><ins>+&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;
+&lt;head&gt;
+  &lt;title&gt;Scripts with for and event attributes&lt;/title&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;script&gt;
+    var run = false;
+  &lt;/script&gt;
+  &lt;script for=&quot;window&quot; event=&quot;bar&quot;&gt;
+    // This script should not run, but should not cause a parse error either.
+    run = true;
+  &lt;/script&gt;
+  &lt;script&gt;
+    test(function() {
+      assert_false(run, &quot;Script was unexpectedly run.&quot;)
+    }, &quot;Scripts with for and event attributes should not run.&quot;)
+  &lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptforeventhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-for-event.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-for-event.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-for-event.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,93 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;Scripts with for and event attributes&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Matheus Kerschbaum&quot; href=&quot;mailto:matjk7@gmail.com&quot;&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#prepare-a-script&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+var expected = [
+  false,
+  false,
+  false,
+  false,
+  false,
+  false,
+  false,
+  false,
+  false,
+  false,
+  false,
+  false,
+  true,
+  true,
+  false,
+  true,
+  true,
+];
+var run = expected.map(function() { return false });
+&lt;/script&gt;
+&lt;script for=&quot;w&amp;#x130;ndow&quot; event=&quot;onload&quot;&gt;
+run[0] = true;
+&lt;/script&gt;
+&lt;script for=&quot;window&quot; event=&quot;onload x&quot;&gt;
+run[1] = true;
+&lt;/script&gt;
+&lt;script for=&quot;window&quot; event=&quot;onload(x&quot;&gt;
+run[2] = true;
+&lt;/script&gt;
+&lt;script for=&quot;window&quot; event=&quot;onload(x)&quot;&gt;
+run[3] = true;
+&lt;/script&gt;
+&lt;script for=&quot;window&quot; event=&quot;onclick&quot;&gt;
+run[4] = true;
+&lt;/script&gt;
+&lt;script for=&quot;&quot; event=&quot;onload&quot;&gt;
+run[5] = true;
+&lt;/script&gt;
+&lt;script for=&quot;window&quot; event=&quot;&quot;&gt;
+run[6] = true;
+&lt;/script&gt;
+&lt;script for=&quot;&quot; event=&quot;&quot;&gt;
+run[7] = true;
+&lt;/script&gt;
+&lt;script for=&quot;&amp;#xa0;window&quot; event=&quot;onload&quot;&gt;
+run[8] = true;
+&lt;/script&gt;
+&lt;script for=&quot;window&amp;#xa0;&quot; event=&quot;onload&quot;&gt;
+run[9] = true;
+&lt;/script&gt;
+&lt;script for=&quot;window&quot; event=&quot;&amp;#xa0;onload&quot;&gt;
+run[10] = true;
+&lt;/script&gt;
+&lt;script for=&quot;window&quot; event=&quot;onload&amp;#xa0;&quot;&gt;
+run[11] = true;
+&lt;/script&gt;
+&lt;script for=&quot; window &quot; event=&quot; onload &quot;&gt;
+run[12] = true;
+&lt;/script&gt;
+&lt;script for=&quot; window &quot; event=&quot; onload() &quot;&gt;
+run[13] = true;
+&lt;/script&gt;
+&lt;script for=&quot;object&quot; event=&quot;handler&quot;&gt;
+run[14] = true;
+&lt;/script&gt;
+&lt;script event=&quot;handler&quot;&gt;
+run[15] = true;
+&lt;/script&gt;
+&lt;script for=&quot;object&quot;&gt;
+run[16] = true;
+&lt;/script&gt;
+&lt;script&gt;
+test(function() {
+  for (var i = 0; i &lt; run.length; ++i) {
+    test(function() {
+      var script = document.querySelectorAll(&quot;script[for], script[event]&quot;)[i];
+      assert_equals(run[i], expected[i],
+                    &quot;script for=&quot; + format_value(script.getAttribute(&quot;for&quot;)) +
+                    &quot; event=&quot; + format_value(script.getAttribute(&quot;event&quot;)));
+    }, &quot;Script &quot; + i);
+  }
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptlanguagetypeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-language-type-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-language-type-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-language-type-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+FAIL A script with empty type should run assert_equals: expected true but got false
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptlanguagetypehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-language-type.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-language-type.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-language-type.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;Script: combinations of @type and @language&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#prepare-a-script&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+var run = false;
+&lt;/script&gt;
+&lt;script type=&quot;&quot; language=&quot;foo&quot;&gt;
+run = true;
+&lt;/script&gt;
+&lt;script&gt;
+test(function() {
+  assert_equals(run, true);
+}, &quot;A script with empty type should run&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptlanguages01expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-languages-01-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-languages-01-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-languages-01-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS Script @type: unknown parameters 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptlanguages01html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-languages-01.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-languages-01.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-languages-01.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,24 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;Script @type: unknown parameters&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#scriptingLanguages&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;div id=&quot;test&quot;&gt;
+&lt;script type=&quot;text/javascript;charset=UTF-8&quot;&gt;
+test(function() {
+  assert_unreached(&quot;'charset' should have prevented this script from executing.&quot;);
+})
+&lt;/script&gt;
+&lt;script type=&quot;text/javascript;x-test=abc&quot;&gt;
+test(function() {
+  assert_unreached(&quot;'x-test' should have prevented this script from executing.&quot;);
+})
+&lt;/script&gt;
+&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  assert_true(true)
+})
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptlanguages02expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-languages-02-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-languages-02-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-languages-02-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,326 @@
</span><ins>+
+PASS Script should run with type=&quot;&quot; 
+PASS Script shouldn't run with type=&quot; &quot; 
+PASS Script should run with type=&quot;application/ecmascript&quot; 
+PASS Script should run with type=&quot;application/javascript&quot; 
+FAIL Script should run with type=&quot;application/x-ecmascript&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;application/x-javascript&quot; 
+PASS Script should run with type=&quot;APPLICATION/ECMASCRIPT&quot; 
+PASS Script should run with type=&quot;APPLICATION/JAVASCRIPT&quot; 
+FAIL Script should run with type=&quot;APPLICATION/X-ECMASCRIPT&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;APPLICATION/X-JAVASCRIPT&quot; 
+PASS Script should run with type=&quot;application/ecmascript &quot; 
+PASS Script should run with type=&quot;application/javascript &quot; 
+FAIL Script should run with type=&quot;application/x-ecmascript &quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;application/x-javascript &quot; 
+PASS Script should run with type=&quot; application/ecmascript&quot; 
+PASS Script should run with type=&quot; application/javascript&quot; 
+FAIL Script should run with type=&quot; application/x-ecmascript&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot; application/x-javascript&quot; 
+PASS Script should run with type=&quot;application/ecmascript\t&quot; 
+PASS Script should run with type=&quot;application/javascript\t&quot; 
+FAIL Script should run with type=&quot;application/x-ecmascript\t&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;application/x-javascript\t&quot; 
+PASS Script should run with type=&quot;\tapplication/ecmascript&quot; 
+PASS Script should run with type=&quot;\tapplication/javascript&quot; 
+FAIL Script should run with type=&quot;\tapplication/x-ecmascript&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;\tapplication/x-javascript&quot; 
+PASS Script should run with type=&quot;application/ecmascript\n&quot; 
+PASS Script should run with type=&quot;application/javascript\n&quot; 
+FAIL Script should run with type=&quot;application/x-ecmascript\n&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;application/x-javascript\n&quot; 
+PASS Script should run with type=&quot;\napplication/ecmascript&quot; 
+PASS Script should run with type=&quot;\napplication/javascript&quot; 
+FAIL Script should run with type=&quot;\napplication/x-ecmascript&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;\napplication/x-javascript&quot; 
+PASS Script should run with type=&quot;application/ecmascript\r&quot; 
+PASS Script should run with type=&quot;application/javascript\r&quot; 
+FAIL Script should run with type=&quot;application/x-ecmascript\r&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;application/x-javascript\r&quot; 
+PASS Script should run with type=&quot;\rapplication/ecmascript&quot; 
+PASS Script should run with type=&quot;\rapplication/javascript&quot; 
+FAIL Script should run with type=&quot;\rapplication/x-ecmascript&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;\rapplication/x-javascript&quot; 
+PASS Script should run with type=&quot;application/ecmascript\f&quot; 
+PASS Script should run with type=&quot;application/javascript\f&quot; 
+FAIL Script should run with type=&quot;application/x-ecmascript\f&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;application/x-javascript\f&quot; 
+PASS Script should run with type=&quot;\fapplication/ecmascript&quot; 
+PASS Script should run with type=&quot;\fapplication/javascript&quot; 
+FAIL Script should run with type=&quot;\fapplication/x-ecmascript&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;\fapplication/x-javascript&quot; 
+PASS Script shouldn't run with type=&quot;application/ecmascript\0&quot; 
+PASS Script shouldn't run with type=&quot;application/javascript\0&quot; 
+PASS Script shouldn't run with type=&quot;application/x-ecmascript\0&quot; 
+PASS Script shouldn't run with type=&quot;application/x-javascript\0&quot; 
+PASS Script shouldn't run with type=&quot;application/ecmascript\0foo&quot; 
+PASS Script shouldn't run with type=&quot;application/javascript\0foo&quot; 
+PASS Script shouldn't run with type=&quot;application/x-ecmascript\0foo&quot; 
+PASS Script shouldn't run with type=&quot;application/x-javascript\0foo&quot; 
+PASS Script should run with type=&quot;text/ecmascript&quot; 
+PASS Script should run with type=&quot;text/javascript&quot; 
+FAIL Script should run with type=&quot;text/javascript1.0&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;text/javascript1.1&quot; 
+PASS Script should run with type=&quot;text/javascript1.2&quot; 
+PASS Script should run with type=&quot;text/javascript1.3&quot; 
+FAIL Script should run with type=&quot;text/javascript1.4&quot; assert_equals: expected true but got false
+FAIL Script should run with type=&quot;text/javascript1.5&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;text/jscript&quot; 
+PASS Script should run with type=&quot;text/livescript&quot; 
+FAIL Script should run with type=&quot;text/x-ecmascript&quot; assert_equals: expected true but got false
+FAIL Script should run with type=&quot;text/x-javascript&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;TEXT/ECMASCRIPT&quot; 
+PASS Script should run with type=&quot;TEXT/JAVASCRIPT&quot; 
+FAIL Script should run with type=&quot;TEXT/JAVASCRIPT1.0&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;TEXT/JAVASCRIPT1.1&quot; 
+PASS Script should run with type=&quot;TEXT/JAVASCRIPT1.2&quot; 
+PASS Script should run with type=&quot;TEXT/JAVASCRIPT1.3&quot; 
+FAIL Script should run with type=&quot;TEXT/JAVASCRIPT1.4&quot; assert_equals: expected true but got false
+FAIL Script should run with type=&quot;TEXT/JAVASCRIPT1.5&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;TEXT/JSCRIPT&quot; 
+PASS Script should run with type=&quot;TEXT/LIVESCRIPT&quot; 
+FAIL Script should run with type=&quot;TEXT/X-ECMASCRIPT&quot; assert_equals: expected true but got false
+FAIL Script should run with type=&quot;TEXT/X-JAVASCRIPT&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;text/ecmascript &quot; 
+PASS Script should run with type=&quot;text/javascript &quot; 
+FAIL Script should run with type=&quot;text/javascript1.0 &quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;text/javascript1.1 &quot; 
+PASS Script should run with type=&quot;text/javascript1.2 &quot; 
+PASS Script should run with type=&quot;text/javascript1.3 &quot; 
+FAIL Script should run with type=&quot;text/javascript1.4 &quot; assert_equals: expected true but got false
+FAIL Script should run with type=&quot;text/javascript1.5 &quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;text/jscript &quot; 
+PASS Script should run with type=&quot;text/livescript &quot; 
+FAIL Script should run with type=&quot;text/x-ecmascript &quot; assert_equals: expected true but got false
+FAIL Script should run with type=&quot;text/x-javascript &quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot; text/ecmascript&quot; 
+PASS Script should run with type=&quot; text/javascript&quot; 
+FAIL Script should run with type=&quot; text/javascript1.0&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot; text/javascript1.1&quot; 
+PASS Script should run with type=&quot; text/javascript1.2&quot; 
+PASS Script should run with type=&quot; text/javascript1.3&quot; 
+FAIL Script should run with type=&quot; text/javascript1.4&quot; assert_equals: expected true but got false
+FAIL Script should run with type=&quot; text/javascript1.5&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot; text/jscript&quot; 
+PASS Script should run with type=&quot; text/livescript&quot; 
+FAIL Script should run with type=&quot; text/x-ecmascript&quot; assert_equals: expected true but got false
+FAIL Script should run with type=&quot; text/x-javascript&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;text/ecmascript\t&quot; 
+PASS Script should run with type=&quot;text/javascript\t&quot; 
+FAIL Script should run with type=&quot;text/javascript1.0\t&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;text/javascript1.1\t&quot; 
+PASS Script should run with type=&quot;text/javascript1.2\t&quot; 
+PASS Script should run with type=&quot;text/javascript1.3\t&quot; 
+FAIL Script should run with type=&quot;text/javascript1.4\t&quot; assert_equals: expected true but got false
+FAIL Script should run with type=&quot;text/javascript1.5\t&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;text/jscript\t&quot; 
+PASS Script should run with type=&quot;text/livescript\t&quot; 
+FAIL Script should run with type=&quot;text/x-ecmascript\t&quot; assert_equals: expected true but got false
+FAIL Script should run with type=&quot;text/x-javascript\t&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;\ttext/ecmascript&quot; 
+PASS Script should run with type=&quot;\ttext/javascript&quot; 
+FAIL Script should run with type=&quot;\ttext/javascript1.0&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;\ttext/javascript1.1&quot; 
+PASS Script should run with type=&quot;\ttext/javascript1.2&quot; 
+PASS Script should run with type=&quot;\ttext/javascript1.3&quot; 
+FAIL Script should run with type=&quot;\ttext/javascript1.4&quot; assert_equals: expected true but got false
+FAIL Script should run with type=&quot;\ttext/javascript1.5&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;\ttext/jscript&quot; 
+PASS Script should run with type=&quot;\ttext/livescript&quot; 
+FAIL Script should run with type=&quot;\ttext/x-ecmascript&quot; assert_equals: expected true but got false
+FAIL Script should run with type=&quot;\ttext/x-javascript&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;text/ecmascript\n&quot; 
+PASS Script should run with type=&quot;text/javascript\n&quot; 
+FAIL Script should run with type=&quot;text/javascript1.0\n&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;text/javascript1.1\n&quot; 
+PASS Script should run with type=&quot;text/javascript1.2\n&quot; 
+PASS Script should run with type=&quot;text/javascript1.3\n&quot; 
+FAIL Script should run with type=&quot;text/javascript1.4\n&quot; assert_equals: expected true but got false
+FAIL Script should run with type=&quot;text/javascript1.5\n&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;text/jscript\n&quot; 
+PASS Script should run with type=&quot;text/livescript\n&quot; 
+FAIL Script should run with type=&quot;text/x-ecmascript\n&quot; assert_equals: expected true but got false
+FAIL Script should run with type=&quot;text/x-javascript\n&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;\ntext/ecmascript&quot; 
+PASS Script should run with type=&quot;\ntext/javascript&quot; 
+FAIL Script should run with type=&quot;\ntext/javascript1.0&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;\ntext/javascript1.1&quot; 
+PASS Script should run with type=&quot;\ntext/javascript1.2&quot; 
+PASS Script should run with type=&quot;\ntext/javascript1.3&quot; 
+FAIL Script should run with type=&quot;\ntext/javascript1.4&quot; assert_equals: expected true but got false
+FAIL Script should run with type=&quot;\ntext/javascript1.5&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;\ntext/jscript&quot; 
+PASS Script should run with type=&quot;\ntext/livescript&quot; 
+FAIL Script should run with type=&quot;\ntext/x-ecmascript&quot; assert_equals: expected true but got false
+FAIL Script should run with type=&quot;\ntext/x-javascript&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;text/ecmascript\r&quot; 
+PASS Script should run with type=&quot;text/javascript\r&quot; 
+FAIL Script should run with type=&quot;text/javascript1.0\r&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;text/javascript1.1\r&quot; 
+PASS Script should run with type=&quot;text/javascript1.2\r&quot; 
+PASS Script should run with type=&quot;text/javascript1.3\r&quot; 
+FAIL Script should run with type=&quot;text/javascript1.4\r&quot; assert_equals: expected true but got false
+FAIL Script should run with type=&quot;text/javascript1.5\r&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;text/jscript\r&quot; 
+PASS Script should run with type=&quot;text/livescript\r&quot; 
+FAIL Script should run with type=&quot;text/x-ecmascript\r&quot; assert_equals: expected true but got false
+FAIL Script should run with type=&quot;text/x-javascript\r&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;\rtext/ecmascript&quot; 
+PASS Script should run with type=&quot;\rtext/javascript&quot; 
+FAIL Script should run with type=&quot;\rtext/javascript1.0&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;\rtext/javascript1.1&quot; 
+PASS Script should run with type=&quot;\rtext/javascript1.2&quot; 
+PASS Script should run with type=&quot;\rtext/javascript1.3&quot; 
+FAIL Script should run with type=&quot;\rtext/javascript1.4&quot; assert_equals: expected true but got false
+FAIL Script should run with type=&quot;\rtext/javascript1.5&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;\rtext/jscript&quot; 
+PASS Script should run with type=&quot;\rtext/livescript&quot; 
+FAIL Script should run with type=&quot;\rtext/x-ecmascript&quot; assert_equals: expected true but got false
+FAIL Script should run with type=&quot;\rtext/x-javascript&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;text/ecmascript\f&quot; 
+PASS Script should run with type=&quot;text/javascript\f&quot; 
+FAIL Script should run with type=&quot;text/javascript1.0\f&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;text/javascript1.1\f&quot; 
+PASS Script should run with type=&quot;text/javascript1.2\f&quot; 
+PASS Script should run with type=&quot;text/javascript1.3\f&quot; 
+FAIL Script should run with type=&quot;text/javascript1.4\f&quot; assert_equals: expected true but got false
+FAIL Script should run with type=&quot;text/javascript1.5\f&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;text/jscript\f&quot; 
+PASS Script should run with type=&quot;text/livescript\f&quot; 
+FAIL Script should run with type=&quot;text/x-ecmascript\f&quot; assert_equals: expected true but got false
+FAIL Script should run with type=&quot;text/x-javascript\f&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;\ftext/ecmascript&quot; 
+PASS Script should run with type=&quot;\ftext/javascript&quot; 
+FAIL Script should run with type=&quot;\ftext/javascript1.0&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;\ftext/javascript1.1&quot; 
+PASS Script should run with type=&quot;\ftext/javascript1.2&quot; 
+PASS Script should run with type=&quot;\ftext/javascript1.3&quot; 
+FAIL Script should run with type=&quot;\ftext/javascript1.4&quot; assert_equals: expected true but got false
+FAIL Script should run with type=&quot;\ftext/javascript1.5&quot; assert_equals: expected true but got false
+PASS Script should run with type=&quot;\ftext/jscript&quot; 
+PASS Script should run with type=&quot;\ftext/livescript&quot; 
+FAIL Script should run with type=&quot;\ftext/x-ecmascript&quot; assert_equals: expected true but got false
+FAIL Script should run with type=&quot;\ftext/x-javascript&quot; assert_equals: expected true but got false
+PASS Script shouldn't run with type=&quot;text/ecmascript\0&quot; 
+PASS Script shouldn't run with type=&quot;text/javascript\0&quot; 
+PASS Script shouldn't run with type=&quot;text/javascript1.0\0&quot; 
+PASS Script shouldn't run with type=&quot;text/javascript1.1\0&quot; 
+PASS Script shouldn't run with type=&quot;text/javascript1.2\0&quot; 
+PASS Script shouldn't run with type=&quot;text/javascript1.3\0&quot; 
+PASS Script shouldn't run with type=&quot;text/javascript1.4\0&quot; 
+PASS Script shouldn't run with type=&quot;text/javascript1.5\0&quot; 
+PASS Script shouldn't run with type=&quot;text/jscript\0&quot; 
+PASS Script shouldn't run with type=&quot;text/livescript\0&quot; 
+PASS Script shouldn't run with type=&quot;text/x-ecmascript\0&quot; 
+PASS Script shouldn't run with type=&quot;text/x-javascript\0&quot; 
+PASS Script shouldn't run with type=&quot;text/ecmascript\0foo&quot; 
+PASS Script shouldn't run with type=&quot;text/javascript\0foo&quot; 
+PASS Script shouldn't run with type=&quot;text/javascript1.0\0foo&quot; 
+PASS Script shouldn't run with type=&quot;text/javascript1.1\0foo&quot; 
+PASS Script shouldn't run with type=&quot;text/javascript1.2\0foo&quot; 
+PASS Script shouldn't run with type=&quot;text/javascript1.3\0foo&quot; 
+PASS Script shouldn't run with type=&quot;text/javascript1.4\0foo&quot; 
+PASS Script shouldn't run with type=&quot;text/javascript1.5\0foo&quot; 
+PASS Script shouldn't run with type=&quot;text/jscript\0foo&quot; 
+PASS Script shouldn't run with type=&quot;text/livescript\0foo&quot; 
+PASS Script shouldn't run with type=&quot;text/x-ecmascript\0foo&quot; 
+PASS Script shouldn't run with type=&quot;text/x-javascript\0foo&quot; 
+PASS Script should run with language=&quot;&quot; 
+PASS Script shouldn't run with language=&quot; &quot; 
+PASS Script should run with language=&quot;ecmascript&quot; 
+PASS Script should run with language=&quot;javascript&quot; 
+PASS Script should run with language=&quot;javascript1.0&quot; 
+PASS Script should run with language=&quot;javascript1.1&quot; 
+PASS Script should run with language=&quot;javascript1.2&quot; 
+PASS Script should run with language=&quot;javascript1.3&quot; 
+PASS Script should run with language=&quot;javascript1.4&quot; 
+PASS Script should run with language=&quot;javascript1.5&quot; 
+PASS Script should run with language=&quot;jscript&quot; 
+PASS Script should run with language=&quot;livescript&quot; 
+FAIL Script should run with language=&quot;x-ecmascript&quot; assert_equals: expected true but got false
+FAIL Script should run with language=&quot;x-javascript&quot; assert_equals: expected true but got false
+PASS Script should run with language=&quot;ECMASCRIPT&quot; 
+PASS Script should run with language=&quot;JAVASCRIPT&quot; 
+PASS Script should run with language=&quot;JAVASCRIPT1.0&quot; 
+PASS Script should run with language=&quot;JAVASCRIPT1.1&quot; 
+PASS Script should run with language=&quot;JAVASCRIPT1.2&quot; 
+PASS Script should run with language=&quot;JAVASCRIPT1.3&quot; 
+PASS Script should run with language=&quot;JAVASCRIPT1.4&quot; 
+PASS Script should run with language=&quot;JAVASCRIPT1.5&quot; 
+PASS Script should run with language=&quot;JSCRIPT&quot; 
+PASS Script should run with language=&quot;LIVESCRIPT&quot; 
+FAIL Script should run with language=&quot;X-ECMASCRIPT&quot; assert_equals: expected true but got false
+FAIL Script should run with language=&quot;X-JAVASCRIPT&quot; assert_equals: expected true but got false
+PASS Script shouldn't run with language=&quot;ecmascript &quot; 
+PASS Script shouldn't run with language=&quot;javascript &quot; 
+PASS Script shouldn't run with language=&quot;javascript1.0 &quot; 
+PASS Script shouldn't run with language=&quot;javascript1.1 &quot; 
+PASS Script shouldn't run with language=&quot;javascript1.2 &quot; 
+PASS Script shouldn't run with language=&quot;javascript1.3 &quot; 
+PASS Script shouldn't run with language=&quot;javascript1.4 &quot; 
+PASS Script shouldn't run with language=&quot;javascript1.5 &quot; 
+PASS Script shouldn't run with language=&quot;jscript &quot; 
+PASS Script shouldn't run with language=&quot;livescript &quot; 
+PASS Script shouldn't run with language=&quot;x-ecmascript &quot; 
+PASS Script shouldn't run with language=&quot;x-javascript &quot; 
+PASS Script shouldn't run with language=&quot; ecmascript&quot; 
+PASS Script shouldn't run with language=&quot; javascript&quot; 
+PASS Script shouldn't run with language=&quot; javascript1.0&quot; 
+PASS Script shouldn't run with language=&quot; javascript1.1&quot; 
+PASS Script shouldn't run with language=&quot; javascript1.2&quot; 
+PASS Script shouldn't run with language=&quot; javascript1.3&quot; 
+PASS Script shouldn't run with language=&quot; javascript1.4&quot; 
+PASS Script shouldn't run with language=&quot; javascript1.5&quot; 
+PASS Script shouldn't run with language=&quot; jscript&quot; 
+PASS Script shouldn't run with language=&quot; livescript&quot; 
+PASS Script shouldn't run with language=&quot; x-ecmascript&quot; 
+PASS Script shouldn't run with language=&quot; x-javascript&quot; 
+PASS Script shouldn't run with language=&quot;ecmascriptxyz&quot; 
+PASS Script shouldn't run with language=&quot;javascriptxyz&quot; 
+PASS Script shouldn't run with language=&quot;javascript1.0xyz&quot; 
+PASS Script shouldn't run with language=&quot;javascript1.1xyz&quot; 
+PASS Script shouldn't run with language=&quot;javascript1.2xyz&quot; 
+PASS Script shouldn't run with language=&quot;javascript1.3xyz&quot; 
+PASS Script shouldn't run with language=&quot;javascript1.4xyz&quot; 
+PASS Script shouldn't run with language=&quot;javascript1.5xyz&quot; 
+PASS Script shouldn't run with language=&quot;jscriptxyz&quot; 
+PASS Script shouldn't run with language=&quot;livescriptxyz&quot; 
+PASS Script shouldn't run with language=&quot;x-ecmascriptxyz&quot; 
+PASS Script shouldn't run with language=&quot;x-javascriptxyz&quot; 
+PASS Script shouldn't run with language=&quot;xyzecmascript&quot; 
+PASS Script shouldn't run with language=&quot;xyzjavascript&quot; 
+PASS Script shouldn't run with language=&quot;xyzjavascript1.0&quot; 
+PASS Script shouldn't run with language=&quot;xyzjavascript1.1&quot; 
+PASS Script shouldn't run with language=&quot;xyzjavascript1.2&quot; 
+PASS Script shouldn't run with language=&quot;xyzjavascript1.3&quot; 
+PASS Script shouldn't run with language=&quot;xyzjavascript1.4&quot; 
+PASS Script shouldn't run with language=&quot;xyzjavascript1.5&quot; 
+PASS Script shouldn't run with language=&quot;xyzjscript&quot; 
+PASS Script shouldn't run with language=&quot;xyzlivescript&quot; 
+PASS Script shouldn't run with language=&quot;xyzx-ecmascript&quot; 
+PASS Script shouldn't run with language=&quot;xyzx-javascript&quot; 
+PASS Script shouldn't run with language=&quot;ecmascript\0&quot; 
+PASS Script shouldn't run with language=&quot;javascript\0&quot; 
+PASS Script shouldn't run with language=&quot;javascript1.0\0&quot; 
+PASS Script shouldn't run with language=&quot;javascript1.1\0&quot; 
+PASS Script shouldn't run with language=&quot;javascript1.2\0&quot; 
+PASS Script shouldn't run with language=&quot;javascript1.3\0&quot; 
+PASS Script shouldn't run with language=&quot;javascript1.4\0&quot; 
+PASS Script shouldn't run with language=&quot;javascript1.5\0&quot; 
+PASS Script shouldn't run with language=&quot;jscript\0&quot; 
+PASS Script shouldn't run with language=&quot;livescript\0&quot; 
+PASS Script shouldn't run with language=&quot;x-ecmascript\0&quot; 
+PASS Script shouldn't run with language=&quot;x-javascript\0&quot; 
+PASS Script shouldn't run with language=&quot;ecmascript\0foo&quot; 
+PASS Script shouldn't run with language=&quot;javascript\0foo&quot; 
+PASS Script shouldn't run with language=&quot;javascript1.0\0foo&quot; 
+PASS Script shouldn't run with language=&quot;javascript1.1\0foo&quot; 
+PASS Script shouldn't run with language=&quot;javascript1.2\0foo&quot; 
+PASS Script shouldn't run with language=&quot;javascript1.3\0foo&quot; 
+PASS Script shouldn't run with language=&quot;javascript1.4\0foo&quot; 
+PASS Script shouldn't run with language=&quot;javascript1.5\0foo&quot; 
+PASS Script shouldn't run with language=&quot;jscript\0foo&quot; 
+PASS Script shouldn't run with language=&quot;livescript\0foo&quot; 
+PASS Script shouldn't run with language=&quot;x-ecmascript\0foo&quot; 
+PASS Script shouldn't run with language=&quot;x-javascript\0foo&quot; 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptlanguages02html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-languages-02.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-languages-02.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-languages-02.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,98 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;Script @type: JavaScript types&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#scriptingLanguages&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+function testAttribute(attr, val, shouldRun) {
+  test(function() {
+    assert_false(ran, &quot;ran variable not reset&quot;);
+    var script = document.createElement(&quot;script&quot;);
+    script.setAttribute(attr, val);
+    script.textContent = &quot;ran = true;&quot;
+    document.body.appendChild(script);
+    assert_equals(ran, shouldRun);
+  }, &quot;Script should&quot; + (shouldRun ? &quot;&quot; : &quot;n't&quot;) + &quot; run with &quot; + attr + &quot;=&quot; + format_value(val));
+  ran = false
+}
+function testType(type) {
+  testAttribute(&quot;type&quot;, type, true);
+}
+function testLanguage(lang) {
+  testAttribute(&quot;language&quot;, lang, true);
+}
+function testTypeIgnored(type) {
+  testAttribute(&quot;type&quot;, type, false);
+}
+function testLanguageIgnored(lang) {
+  testAttribute(&quot;language&quot;, lang, false);
+}
+var application = [
+  &quot;ecmascript&quot;,
+  &quot;javascript&quot;,
+  &quot;x-ecmascript&quot;,
+  &quot;x-javascript&quot;
+];
+var text = [
+  &quot;ecmascript&quot;,
+  &quot;javascript&quot;,
+  &quot;javascript1.0&quot;,
+  &quot;javascript1.1&quot;,
+  &quot;javascript1.2&quot;,
+  &quot;javascript1.3&quot;,
+  &quot;javascript1.4&quot;,
+  &quot;javascript1.5&quot;,
+  &quot;jscript&quot;,
+  &quot;livescript&quot;,
+  &quot;x-ecmascript&quot;,
+  &quot;x-javascript&quot;
+];
+var spaces = [&quot; &quot;, &quot;\t&quot;, &quot;\n&quot;, &quot;\r&quot;, &quot;\f&quot;];
+
+var ran = false;
+
+// Type attribute
+
+testType(&quot;&quot;);
+testTypeIgnored(&quot; &quot;);
+
+application.map(function(t) { return &quot;application/&quot; + t; }).forEach(testType);
+application.map(function(t) { return (&quot;application/&quot; + t).toUpperCase(); }).forEach(testType);
+
+spaces.forEach(function(s) {
+  application.map(function(t) { return &quot;application/&quot; + t + s; }).forEach(testType);
+  application.map(function(t) { return s + &quot;application/&quot; + t; }).forEach(testType);
+})
+
+application.map(function(t) { return &quot;application/&quot; + t + &quot;\0&quot;; }).forEach(testTypeIgnored);
+application.map(function(t) { return &quot;application/&quot; + t + &quot;\0foo&quot;; }).forEach(testTypeIgnored);
+
+text.map(function(t) { return &quot;text/&quot; + t; }).forEach(testType);
+text.map(function(t) { return (&quot;text/&quot; + t).toUpperCase(); }).forEach(testType);
+
+spaces.forEach(function(s) {
+  text.map(function(t) { return &quot;text/&quot; + t + s; }).forEach(testType);
+  text.map(function(t) { return s + &quot;text/&quot; + t; }).forEach(testType);
+})
+
+text.map(function(t) { return &quot;text/&quot; + t + &quot;\0&quot;; }).forEach(testTypeIgnored);
+text.map(function(t) { return &quot;text/&quot; + t + &quot;\0foo&quot;; }).forEach(testTypeIgnored);
+
+// Language attribute
+
+testLanguage(&quot;&quot;);
+testLanguageIgnored(&quot; &quot;);
+
+text.forEach(testLanguage);
+text.map(function(t) { return t.toUpperCase(); }).forEach(testLanguage);
+
+text.map(function(t) { return t + &quot; &quot;; }).forEach(testLanguageIgnored);
+text.map(function(t) { return &quot; &quot; + t; }).forEach(testLanguageIgnored);
+text.map(function(t) { return t + &quot;xyz&quot;; }).forEach(testLanguageIgnored);
+text.map(function(t) { return &quot;xyz&quot; + t; }).forEach(testLanguageIgnored);
+
+text.map(function(t) { return t + &quot;\0&quot;; }).forEach(testLanguageIgnored);
+text.map(function(t) { return t + &quot;\0foo&quot;; }).forEach(testLanguageIgnored);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptnoembednoframesiframeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-noembed-noframes-iframe-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-noembed-noframes-iframe-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-noembed-noframes-iframe-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+
+PASS Script inside noembed, noframes and iframe 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptnoembednoframesiframexhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-noembed-noframes-iframe.xhtml (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-noembed-noframes-iframe.xhtml                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-noembed-noframes-iframe.xhtml        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,36 @@
</span><ins>+&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;
+&lt;head&gt;
+&lt;title&gt;Script inside noembed, noframes and iframe&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;/&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+var run = [];
+&lt;/script&gt;
+&lt;div id=&quot;test&quot;&gt;
+&lt;noembed&gt;
+&lt;script&gt;
+run.push(&quot;noembed&quot;);
+&lt;/script&gt;
+&lt;/noembed&gt;
+&lt;noframes&gt;
+&lt;script&gt;
+run.push(&quot;noframes&quot;);
+&lt;/script&gt;
+&lt;/noframes&gt;
+&lt;iframe&gt;
+&lt;script&gt;
+run.push(&quot;iframe&quot;);
+&lt;/script&gt;
+&lt;/iframe&gt;
+&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  assert_array_equals(run, [&quot;noembed&quot;, &quot;noframes&quot;, &quot;iframe&quot;], &quot;Haven't run.&quot;);
+});
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptonloadstringexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-onload-string-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-onload-string-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-onload-string-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS Setting onload to a string should convert to null. 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscriptonloadstringhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-onload-string.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-onload-string.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-onload-string.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,17 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;Script: setting onload to a string&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  var s = document.createElement(&quot;script&quot;);
+  assert_equals(s.onload, null);
+  var dummy = function() {};
+  s.onload = dummy;
+  assert_equals(s.onload, dummy);
+  s.onload = &quot;w('load DOM appended')&quot;;
+  assert_equals(s.onload, null);
+}, &quot;Setting onload to a string should convert to null.&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscripttextexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-text-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-text-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-text-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+
+FAIL Getter assert_equals: expected &quot;  TEXT  &quot; but got &quot;  TEXT  ELEMENT&quot;
+PASS Setter (non-empty string) 
+FAIL Setter (empty string) assert_equals: expected null but got Text node &quot;&quot;
+FAIL Setter (null) assert_equals: expected &quot;null&quot; but got &quot;&quot;
+PASS Setter (undefined) 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscripttextxhtmlexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-text-xhtml-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-text-xhtml-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-text-xhtml-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+FAIL Getter with CDATA section assert_equals: expected &quot;\n\n\n  var x = \&quot;y\&quot;;\n\n&quot; but got &quot;\n7;\n\n  var x = \&quot;y\&quot;;\n\n&quot;
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscripttextxhtmlxhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-text-xhtml.xhtml (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-text-xhtml.xhtml                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-text-xhtml.xhtml        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;
+&lt;head&gt;
+&lt;title&gt;HTMLScriptElement.text&lt;/title&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-script-text&quot;/&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;/&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;/&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+&lt;x&gt;7;&lt;/x&gt;
+&lt;![CDATA[
+  var x = &quot;y&quot;;
+]]&gt;
+&lt;/script&gt;
+&lt;script&gt;
+var script;
+setup(function() {
+  script = document.body.getElementsByTagName(&quot;script&quot;)[0];
+})
+test(function() {
+  assert_equals(script.text, '\n\n\n  var x = &quot;y&quot;;\n\n')
+  assert_equals(script.textContent, '\n7;\n\n  var x = &quot;y&quot;;\n\n')
+}, &quot;Getter with CDATA section&quot;)
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementscripttexthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-text.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-text.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-text.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,53 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;HTMLScriptElement.text&lt;/title&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#dom-script-text&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+var script;
+setup(function() {
+  script = document.createElement(&quot;script&quot;)
+  script.appendChild(document.createComment(&quot;COMMENT&quot;))
+  script.appendChild(document.createTextNode(&quot;  TEXT  &quot;))
+  script.appendChild(document.createProcessingInstruction(&quot;P&quot;, &quot;I&quot;))
+  script.appendChild(document.createElement(&quot;a&quot;))
+        .appendChild(document.createTextNode(&quot;ELEMENT&quot;))
+})
+test(function() {
+  assert_equals(script.text, &quot;  TEXT  &quot;)
+  assert_equals(script.textContent, &quot;  TEXT  ELEMENT&quot;)
+}, &quot;Getter&quot;)
+test(function() {
+  script.text = &quot; text &quot;
+  assert_equals(script.text, &quot; text &quot;)
+  assert_equals(script.textContent, &quot; text &quot;)
+  assert_equals(script.firstChild.nodeType, Node.TEXT_NODE)
+  assert_equals(script.firstChild.data, &quot; text &quot;)
+  assert_equals(script.firstChild, script.lastChild)
+  assert_array_equals(script.childNodes, [script.firstChild])
+}, &quot;Setter (non-empty string)&quot;)
+test(function() {
+  script.text = &quot;&quot;
+  assert_equals(script.text, &quot;&quot;)
+  assert_equals(script.textContent, &quot;&quot;)
+  assert_equals(script.firstChild, null)
+}, &quot;Setter (empty string)&quot;)
+test(function() {
+  script.text = null
+  assert_equals(script.text, &quot;null&quot;)
+  assert_equals(script.textContent, &quot;null&quot;)
+  assert_equals(script.firstChild.nodeType, Node.TEXT_NODE)
+  assert_equals(script.firstChild.data, &quot;null&quot;)
+  assert_equals(script.firstChild, script.lastChild)
+}, &quot;Setter (null)&quot;)
+test(function() {
+  script.text = undefined
+  assert_equals(script.text, &quot;undefined&quot;)
+  assert_equals(script.textContent, &quot;undefined&quot;)
+  assert_equals(script.firstChild.nodeType, Node.TEXT_NODE)
+  assert_equals(script.firstChild.data, &quot;undefined&quot;)
+  assert_equals(script.firstChild, script.lastChild)
+}, &quot;Setter (undefined)&quot;)
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thescriptelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,40 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/async_001.htm
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/async_002.htm
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/async_003.htm
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/async_004.htm
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/async_005.htm
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/async_006.htm
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/async_007.htm
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/async_008.htm
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/async_009.htm
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/async_010.htm
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/async_011.htm
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/contains.json
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/log.py
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-before-after-events.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-for-event.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-for-event.xhtml
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-language-type.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-languages-01.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-languages-02.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-noembed-noframes-iframe.xhtml
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-onload-string.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-text.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-script-element/script-text.xhtml
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstoparsingxhtmldocumentsnodedocumentexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/node-document-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/node-document-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/node-document-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+
+PASS Parsing XHTML: Node's node document must be set to that of the element to which it will be appended. Test empty template 
+PASS Parsing XHTML: Node's node document must be set to that of the element to which it will be appended. Test not empty template 
+PASS Parsing XHTML: Node's node document must be set to that of the element to which it will be appended. Test nested templates 
+PASS Parsing XHTML: Node's node document must be set to that of the element to which it will be appended. Test loading XHTML document from a file 
+PASS Parsing XHTML: Node's node document must be set to that of the element to which it will be appended. Test loading of XHTML document with nested templates from a file 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstoparsingxhtmldocumentsnodedocumenthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/node-document.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/node-document.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/node-document.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,148 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;title&gt;HTML Templates: Parsing XHTML: Node's node document&lt;/title&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Sergey G. Grekhov&quot; href=&quot;mailto:sgrekhov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;Parsing XHTML: Node's node document must be set to that of the element to which it will be appended&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;http://www.w3.org/TR/2013/WD-html-templates-20130214/#parsing-xhtml-documents&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src='/w3c/html/resources/common.js'&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/resources/testharness.css&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+
+
+
+test(function() {
+    var doc = newXHTMLDocument();
+    doc.body = doc.createElement('body');
+    doc.body.innerHTML = '&lt;template id=&quot;tmpl&quot;&gt;&lt;/template&gt;';
+
+    var template = doc.querySelector('#tmpl');
+
+    assert_not_equals(template, null, 'Template element should not be null');
+    assert_not_equals(template.content, undefined,
+            'Content attribute of template element should not be undefined');
+    assert_not_equals(template.content, null,
+            'Content attribute of template element should not be null');
+
+    assert_equals(template.ownerDocument, doc.body.ownerDocument,
+            'Wrong template node owner document');
+    assert_equals(template.content.ownerDocument, doc,
+            'Wrong template content owner document');
+
+}, 'Parsing XHTML: Node\'s node document must be set to that of the element '
+    + 'to which it will be appended. Test empty template');
+
+
+
+test(function() {
+    var doc = newXHTMLDocument();
+
+    doc.body = doc.createElement('body');
+    doc.body.innerHTML = '&lt;template id=&quot;tmpl&quot;&gt;&lt;div&gt;Div content&lt;/div&gt;&lt;/template&gt;';
+
+    var template = doc.querySelector('#tmpl');
+
+    assert_equals(template.ownerDocument, doc.body.ownerDocument,
+            'Wrong template node owner document');
+
+    assert_not_equals(template, null, 'Template element should not be null');
+    assert_not_equals(template.content, undefined,
+            'Content attribute of template element should not be undefined');
+    assert_not_equals(template.content, null,
+            'Content attribute of template element should not be null');
+
+    var div = template.content.querySelector('div');
+    assert_equals(template.content.ownerDocument, div.ownerDocument,
+            'Wrong DIV node owner document');
+
+}, 'Parsing XHTML: Node\'s node document must be set to that of the element '
+    + 'to which it will be appended. Test not empty template');
+
+
+
+test(function() {
+    var doc = newXHTMLDocument();
+    doc.body = doc.createElement('body');
+    doc.body.innerHTML = ''
+            + '&lt;template id=&quot;tmpl&quot;&gt;&lt;div&gt;Div content&lt;/div&gt; And some more text'
+            + '&lt;template id=&quot;tmpl2&quot;&gt;&lt;div&gt;Template content&lt;/div&gt;&lt;/template&gt;'
+            + '&lt;/template&gt;';
+
+    var template = doc.querySelector('#tmpl');
+    assert_not_equals(template, null, 'Template element should not be null');
+    assert_equals(template.ownerDocument, doc, 'Wrong template node owner document');
+    assert_not_equals(template.content, undefined,
+            'Content attribute of template element should not be undefined');
+    assert_not_equals(template.content, null,
+            'Content attribute of template element should not be null');
+
+    var nestedTemplate = template.content.querySelector('#tmpl2');
+    assert_not_equals(nestedTemplate, null, 'Nested template element should not be null');
+    assert_not_equals(nestedTemplate.content, undefined,
+            'Content attribute of nested template element should not be undefined');
+    assert_not_equals(nestedTemplate.content, null,
+            'Content attribute of nested template element should not be null');
+
+    assert_equals(nestedTemplate.ownerDocument, template.content.ownerDocument,
+            'Wrong nested template node owner document');
+
+
+    var div = nestedTemplate.content.querySelector('div');
+    assert_equals(nestedTemplate.content.ownerDocument, div.ownerDocument,
+            'Wrong DIV node owner document');
+
+}, 'Parsing XHTML: Node\'s node document must be set to that of the element '
+    + 'to which it will be appended. Test nested templates');
+
+
+
+testInIFrame('../resources/template-child-nodes-div.xhtml', function(context) {
+    var doc = context.iframes[0].contentDocument;
+
+    var template = doc.querySelector('template');
+
+    assert_equals(template.ownerDocument, doc, 'Wrong template node owner document');
+
+    assert_not_equals(template.content, undefined,
+            'Content attribute of template element should not be undefined');
+    assert_not_equals(template.content, null,
+            'Content attribute of template element should not be null');
+
+    var div = template.content.querySelector('div');
+    assert_equals(template.content.ownerDocument, div.ownerDocument,
+            'Wrong DIV node owner document');
+
+}, 'Parsing XHTML: Node\'s node document must be set to that of the element '
+    + 'to which it will be appended. Test loading XHTML document from a file');
+
+
+
+testInIFrame('../resources/template-child-nodes-nested.xhtml', function(context) {
+    var doc = context.iframes[0].contentDocument;
+
+    var template = doc.querySelector('template');
+
+    assert_equals(template.ownerDocument, doc, 'Wrong template node owner document');
+
+    var nestedTemplate = template.content.querySelector('template');
+
+    assert_equals(nestedTemplate.ownerDocument, template.content.ownerDocument,
+            'Wrong template node owner document');
+
+    var div = nestedTemplate.content.querySelector('div');
+    assert_equals(nestedTemplate.content.ownerDocument, div.ownerDocument,
+            'Wrong DIV node owner document');
+
+}, 'Parsing XHTML: Node\'s node document must be set to that of the element '
+    + 'to which it will be appended. Test loading of XHTML document '
+    + 'with nested templates from a file');
+
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstoparsingxhtmldocumentstemplatechildnodesexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/template-child-nodes-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/template-child-nodes-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/template-child-nodes-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+
+PASS Child nodes of template element in XHTML documents must be appended to template content 
+PASS Child nodes of nested template element in XHTML documents must be appended to template content 
+PASS Child nodes of template element in XHTML documents must be appended to template content. Test loading XHTML document from a file 
+PASS Child nodes of nested template element in XHTML documents must be appended to template content. Test loading XHTML document from a file 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstoparsingxhtmldocumentstemplatechildnodeshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/template-child-nodes.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/template-child-nodes.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/template-child-nodes.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,103 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;title&gt;HTML Templates: Child nodes of template element in XHTML documents&lt;/title&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Sergey G. Grekhov&quot; href=&quot;mailto:sgrekhov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;a.semenov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;Child nodes of template element in XHTML documents are always appended to the template content (instead of template itself)&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;http://www.w3.org/TR/2013/WD-html-templates-20130214/#parsing-xhtml-documents&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src='/w3c/html/resources/common.js'&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/resources/testharness.css&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+
+
+test(function() {
+    var doc = newXHTMLDocument();
+
+    doc.body = doc.createElement('body');
+    doc.body.innerHTML = '&lt;template id=&quot;tmpl1&quot;&gt;'
+            + '&lt;div id=&quot;div1&quot;&gt;This is div inside template&lt;/div&gt;'
+            + '&lt;div id=&quot;div2&quot;&gt;This is another div inside template&lt;/div&gt;'
+            + '&lt;/template&gt;';
+
+    var template = doc.querySelector('#tmpl1');
+
+    assert_equals(template.childNodes.length, 0,
+            'Wrong number of template child nodes');
+    assert_equals(template.content.childNodes.length, 2,
+            'Wrong number of template content child nodes');
+
+}, 'Child nodes of template element in XHTML documents must be appended to template content');
+
+
+
+test(function() {
+    var doc = newXHTMLDocument();
+    doc.body = doc.createElement('body');
+    doc.body.innerHTML = '&lt;template id=&quot;tmpl1&quot;&gt;'
+            + '&lt;div id=&quot;div1&quot;&gt;This is div inside template&lt;/div&gt;'
+            + '&lt;div id=&quot;div2&quot;&gt;This is another div inside template&lt;/div&gt;'
+            + '&lt;template id=&quot;tmpl2&quot;&gt;'
+            + '&lt;div id=&quot;div3&quot;&gt;This is div inside nested template&lt;/div&gt;'
+            + '&lt;div id=&quot;div4&quot;&gt;This is another div inside nested template&lt;/div&gt;'
+            + '&lt;/template&gt;' + '&lt;/template&gt;';
+
+    var template = doc.querySelector('#tmpl1');
+
+    assert_equals(template.childNodes.length, 0,
+            'Wrong number of template child nodes');
+    assert_equals(template.content.childNodes.length, 3,
+            'Wrong number of template content child nodes');
+
+    var nestedTemplate = template.content.querySelector('#tmpl2');
+
+    assert_equals(nestedTemplate.childNodes.length, 0,
+            'Wrong number of template child nodes');
+    assert_equals(nestedTemplate.content.childNodes.length, 2,
+            'Wrong number of nested template content child nodes');
+
+}, 'Child nodes of nested template element in XHTML documents must be appended to template content');
+
+
+
+testInIFrame('../resources/template-child-nodes-div.xhtml', function(context) {
+    var doc = context.iframes[0].contentDocument;
+
+    var template = doc.querySelector('template');
+
+    assert_equals(template.childNodes.length, 0,
+            'Wrong number of template child nodes');
+    assert_equals(template.content.querySelectorAll('div').length, 2,
+            'Wrong number of template content child nodes');
+
+}, 'Child nodes of template element in XHTML documents must be appended to template content. '
+    + 'Test loading XHTML document from a file');
+
+
+testInIFrame('../resources/template-child-nodes-nested.xhtml', function(context) {
+    var doc = context.iframes[0].contentDocument;
+
+    var template = doc.querySelector('template');
+
+    assert_equals(template.childNodes.length, 0,
+            'Wrong number of template child nodes');
+
+    var nestedTemplate = template.content.querySelector('template');
+
+    assert_equals(nestedTemplate.childNodes.length, 0,
+            'Wrong number of template child nodes');
+
+    assert_equals(nestedTemplate.content.querySelectorAll('div').length, 2,
+            'Wrong number of template content child nodes');
+
+}, 'Child nodes of nested template element in XHTML documents must be appended to template content. '
+    + 'Test loading XHTML document from a file');
+
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstoparsingxhtmldocumentsw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/node-document.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/template-child-nodes.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstoserializingxhtmldocumentsouterhtmlexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-serializing-xhtml-documents/outerhtml-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-serializing-xhtml-documents/outerhtml-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-serializing-xhtml-documents/outerhtml-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+
+PASS Template contents should be serialized instead of template element if serializing template element 
+PASS Template contents should be serialized instead of template element if serializing template element. Test nested template 
+PASS Template contents should be serialized instead of template element if serializing template element. Test serializing whole document 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstoserializingxhtmldocumentsouterhtmlhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-serializing-xhtml-documents/outerhtml.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-serializing-xhtml-documents/outerhtml.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-serializing-xhtml-documents/outerhtml.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,72 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;title&gt;HTML Templates: serialize template contents instead of template element&lt;/title&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;a.semenov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;Template contents should be serialized instead of template element if serializing template element in XHTML document&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;http://www.w3.org/TR/2013/WD-html-templates-20130214/#serializing-xhtml-documents&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src='/w3c/html/resources/common.js'&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/resources/testharness.css&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+
+test(function () {
+    var doc = newXHTMLDocument();
+    var template = doc.createElement('template');
+
+    var div = doc.createElement('div');
+    div.setAttribute('id', 'div1');
+    div.innerHTML = 'some text';
+    template.content.appendChild(div);
+
+    assert_equals(template.outerHTML, '&lt;template xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;&lt;div id=&quot;div1&quot;&gt;some text&lt;/div&gt;&lt;/template&gt;',
+       'template element is serialized incorrectly');
+
+}, 'Template contents should be serialized instead of template element if serializing template element');
+
+
+
+test(function () {
+    var doc = newXHTMLDocument();
+    var template = doc.createElement('template');
+    var nestedTemplate = doc.createElement('template');
+
+    template.content.appendChild(nestedTemplate);
+
+    var div = doc.createElement('div');
+    div.setAttribute('id', 'div1');
+    div.innerHTML = 'some text';
+    nestedTemplate.content.appendChild(div);
+
+    assert_equals(template.outerHTML, '&lt;template xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;&lt;template&gt;&lt;div id=&quot;div1&quot;&gt;some text&lt;/div&gt;&lt;/template&gt;&lt;/template&gt;',
+       'template element is serialized incorrectly');
+
+
+}, 'Template contents should be serialized instead of template element if serializing template element. '
+    + 'Test nested template');
+
+
+test(function () {
+    var doc = newXHTMLDocument();
+    var template = doc.createElement('template');
+
+    var div = doc.createElement('div');
+    div.setAttribute('id', 'div1');
+    div.innerHTML = 'some text';
+    template.content.appendChild(div);
+    doc.body = doc.createElement('body');
+    doc.body.appendChild(template);
+
+    assert_equals(doc.documentElement.outerHTML, '&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;&lt;body&gt;&lt;template&gt;&lt;div id=&quot;div1&quot;&gt;some text&lt;/div&gt;&lt;/template&gt;&lt;/body&gt;&lt;/html&gt;',
+       'template element is serialized incorrectly');
+
+}, 'Template contents should be serialized instead of template element if serializing template element. '
+    + 'Test serializing whole document');
+
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstoserializingxhtmldocumentsw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-serializing-xhtml-documents/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-serializing-xhtml-documents/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-serializing-xhtml-documents/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-serializing-xhtml-documents/outerhtml.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstothecssuseragentstylesheetcssuseragentstylesheettest001expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-001-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-001-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-001-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;Template Reftest Reference&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Sergey G. Grekhov&quot; href=&quot;mailto:sgrekhov@unipro.ru&quot;/&gt;
+&lt;body&gt;
+  &lt;p&gt;Test passes if there's no anything below this line.&lt;/p&gt;
+&lt;/body&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstothecssuseragentstylesheetcssuseragentstylesheettest001html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-001.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-001.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-001.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,12 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+    &lt;title&gt;Template Test: check that template content is invisible by default&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Sergey G. Grekhov&quot; href=&quot;mailto:sgrekhov@unipro.ru&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;http://www.w3.org/TR/2013/WD-html-templates-20130214/#css-additions&quot;&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;Test checks that the template contents are hidden implicitly&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;css-user-agent-style-sheet-test-001-ref.html&quot;&gt;
+&lt;body&gt;
+    &lt;p&gt;Test passes if there's no anything below this line.&lt;/p&gt;
+    &lt;template&gt;
+        &lt;span style=&quot;color:red&quot;&gt;Test fails if you can see this text&lt;/span&gt;
+    &lt;/template&gt;
+&lt;/body&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstothecssuseragentstylesheetcssuseragentstylesheettest002expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-002-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-002-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-002-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;Template Reftest Reference&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Sergey G. Grekhov&quot; href=&quot;mailto:sgrekhov@unipro.ru&quot;/&gt;
+&lt;body&gt;
+  &lt;p&gt;Test passes if there's no anything below this line.&lt;/p&gt;
+&lt;/body&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstothecssuseragentstylesheetcssuseragentstylesheettest002html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-002.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-002.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-002.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,12 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+    &lt;title&gt;Template Test: check that template content is invisible by default&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Sergey G. Grekhov&quot; href=&quot;mailto:sgrekhov@unipro.ru&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;http://www.w3.org/TR/2013/WD-html-templates-20130214/#css-additions&quot;&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;The template element itself must be hidden by default&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;css-user-agent-style-sheet-test-001-ref.html&quot;&gt;
+&lt;body&gt;
+    &lt;p&gt;Test passes if there's no anything below this line.&lt;/p&gt;
+    &lt;template style=&quot;border: 1px solid; width: 100px; height: 100px&quot;&gt;
+        &lt;span style=&quot;color:red&quot;&gt;Test fails if you can see this text or border around it&lt;/span&gt;
+    &lt;/template&gt;
+&lt;/body&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstothecssuseragentstylesheetcssuseragentstylesheettest003expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-003-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-003-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-003-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;Template Reftest Reference&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Sergey G. Grekhov&quot; href=&quot;mailto:sgrekhov@unipro.ru&quot;/&gt;
+&lt;body&gt;
+  &lt;p&gt;Test passes if there's no anything below this line.&lt;/p&gt;
+&lt;/body&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstothecssuseragentstylesheetcssuseragentstylesheettest003html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-003.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-003.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-003.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+    &lt;title&gt;HTML Templates: template content is invisible by default&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Sergey G. Grekhov&quot; href=&quot;mailto:sgrekhov@unipro.ru&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;http://www.w3.org/TR/2013/WD-html-templates-20130214/#css-additions&quot;&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;The template element itself must be hidden by default&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;css-user-agent-style-sheet-test-001-ref.html&quot;&gt;
+    &lt;style&gt;
+        template {
+            border: 1px solid;
+            width: 100px;
+            height: 100px;
+        }
+    &lt;/style&gt;
+&lt;body&gt;
+    &lt;p&gt;Test passes if there's no anything below this line.&lt;/p&gt;
+    &lt;template&gt;
+        &lt;span style=&quot;color:red&quot;&gt;Test fails if you can see this text or border around it&lt;/span&gt;
+    &lt;/template&gt;
+&lt;/body&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstothecssuseragentstylesheetw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,23 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-001-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-001.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-002-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-002.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-003-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/css-user-agent-style-sheet-test-003.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstothestepstocloneanodetemplateclonechildrenexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/template-clone-children-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/template-clone-children-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/template-clone-children-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+
+PASS Clone template node. Test call to cloneNode(true) 
+PASS Clone template node. Test call to cloneNode() with the default parameter (false by default) 
+PASS Clone template node. Test call to cloneNode(false) 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstothestepstocloneanodetemplateclonechildrenhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/template-clone-children.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/template-clone-children.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/template-clone-children.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,83 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;title&gt;HTML Templates: Clone template node: All the children of template content are copied if 'copy children flag' set to true&lt;/title&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Sergey G. Grekhov&quot; href=&quot;mailto:sgrekhov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;Clone template node: all the children of template content are copied if 'copy children flag' set to true&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;http://www.w3.org/TR/2013/WD-html-templates-20130214/#node-clone-additions&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src='/w3c/html/resources/common.js'&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/resources/testharness.css&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+
+test(function () {
+    var doc = newHTMLDocument();
+    doc.body.innerHTML = '&lt;template id=&quot;tmpl1&quot;&gt;' +
+        '&lt;div id=&quot;div1&quot;&gt;This is div inside template&lt;/div&gt;' +
+        '&lt;div id=&quot;div2&quot;&gt;This is another div inside template&lt;/div&gt;' +
+        '&lt;/template&gt;';
+
+    var template = doc.querySelector('#tmpl1');
+    var copy = template.cloneNode(true);
+
+    assert_not_equals(copy.content, undefined, 'Template clone content attribute should not be undefined');
+    assert_not_equals(copy.content, null, 'Template clone content attribute should not be null');
+
+    assert_equals(copy.content.childNodes.length, 2,
+            'Wrong number of template content\'s copy child nodes');
+    assert_not_equals(copy.content.querySelector('#div1'), null,
+            'Template child node should be copied');
+    assert_not_equals(copy.content.querySelector('#div2'), null,
+            'Template child node should be copied');
+
+}, 'Clone template node. Test call to cloneNode(true)');
+
+
+
+test(function () {
+    var doc = newHTMLDocument();
+    doc.body.innerHTML = '&lt;template id=&quot;tmpl1&quot;&gt;' +
+        '&lt;div id=&quot;div1&quot;&gt;This is div inside template&lt;/div&gt;' +
+        '&lt;div id=&quot;div2&quot;&gt;This is another div inside template&lt;/div&gt;' +
+        '&lt;/template&gt;';
+
+    var template = doc.querySelector('#tmpl1');
+    var copy = template.cloneNode();
+
+    assert_not_equals(copy.content, undefined, 'Template clone content attribute should not be undefined');
+    assert_not_equals(copy.content, null, 'Template clone content attribute should not be null');
+
+    assert_equals(copy.content.childNodes.length, 0,
+            'Wrong number of template content\'s copy child nodes');
+
+}, 'Clone template node. Test call to cloneNode() with the default parameter '
+    + '(false by default)');
+
+
+
+test(function () {
+    var doc = newHTMLDocument();
+    doc.body.innerHTML = '&lt;template id=&quot;tmpl1&quot;&gt;' +
+        '&lt;div id=&quot;div1&quot;&gt;This is div inside template&lt;/div&gt;' +
+        '&lt;div id=&quot;div2&quot;&gt;This is another div inside template&lt;/div&gt;' +
+        '&lt;/template&gt;';
+
+    var template = doc.querySelector('#tmpl1');
+    var copy = template.cloneNode(false);
+
+    assert_not_equals(copy.content, undefined, 'Template clone content attribute is undefined');
+    assert_not_equals(copy.content, null, 'Template clone content attribute is null');
+
+    assert_equals(copy.content.childNodes.length, 0,
+            'Wrong number of template content\'s copy child nodes');
+
+}, 'Clone template node. Test call to cloneNode(false)');
+
+
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstothestepstocloneanodetemplatescopydocumentownerexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/templates-copy-document-owner-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/templates-copy-document-owner-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/templates-copy-document-owner-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+
+PASS ownerDocument of cloned template content is set to template content owner. Test cloning with children 
+PASS ownerDocument of cloned template content is set to template content owner. Test cloning without children 
+PASS ownerDocument of cloned template content is set to template content owner. Test cloneNode() with no arguments (false by default) 
+PASS ownerDocument of cloned template content is set to template content owner. Test cloning nested template 
+PASS ownerDocument of cloned template content is set to template content owner. Test loading HTML document from file 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstothestepstocloneanodetemplatescopydocumentownerhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/templates-copy-document-owner.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/templates-copy-document-owner.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/templates-copy-document-owner.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,127 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;title&gt;HTML Templates: ownerDocument of cloned template content is set to template content owner&lt;/title&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Sergey G. Grekhov&quot; href=&quot;mailto:sgrekhov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;a.semenov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;ownerDocument of cloned template content is set to template content owner&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;http://www.w3.org/TR/2013/WD-html-templates-20130214/#node-clone-additions&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src='/w3c/html/resources/common.js'&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/resources/testharness.css&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+
+function checkOwnerDocument(node, doc) {
+    if ((node !== null) &amp;&amp; (node !== undefined)) {
+        assert_equals(node.ownerDocument, doc,
+                'Wrong ownerDocument of the template copy\'s node ' + node.nodeName);
+        for (var i = 0; i &lt; node.childNodes.length; i++) {
+            if (node.childNodes[i].nodeType === Node.ELEMENT_NODE) {
+                checkOwnerDocument(node.childNodes[i], doc);
+                if (node.childNodes[i].nodeName === 'TEMPLATE') {
+                    checkOwnerDocument(node.childNodes[i].content, doc);
+                }
+            }
+        }
+    }
+}
+
+
+test(function () {
+    var doc = newHTMLDocument();
+    doc.body.innerHTML = '&lt;template id=&quot;tmpl1&quot;&gt;' +
+        '&lt;div id=&quot;div1&quot;&gt;This is div inside template&lt;/div&gt;' +
+        '&lt;div id=&quot;div2&quot;&gt;This is another div inside template&lt;/div&gt;' +
+        '&lt;/template&gt;';
+
+    var template = doc.querySelector('#tmpl1');
+    var copy = template.cloneNode(true);
+
+    assert_equals(copy.content.childNodes.length, 2,
+            'Wrong number of template content\'s copy child nodes');
+    checkOwnerDocument(copy.content, template.content.ownerDocument);
+
+}, 'ownerDocument of cloned template content is set to template content owner. '
+       + 'Test cloning with children');
+
+
+
+test(function () {
+    var doc = newHTMLDocument();
+    doc.body.innerHTML = '&lt;template id=&quot;tmpl1&quot;&gt;' +
+        '&lt;div id=&quot;div1&quot;&gt;This is div inside template&lt;/div&gt;' +
+        '&lt;div id=&quot;div2&quot;&gt;This is another div inside template&lt;/div&gt;' +
+        '&lt;/template&gt;';
+
+    var template = doc.querySelector('#tmpl1');
+    var copy = template.cloneNode(false);
+
+    assert_equals(copy.content.childNodes.length, 0,
+            'Wrong number of template content\'s copy child nodes');
+    checkOwnerDocument(copy.content, template.content.ownerDocument);
+
+}, 'ownerDocument of cloned template content is set to template content owner. '
+      + 'Test cloning without children');
+
+
+
+test(function () {
+    var doc = newHTMLDocument();
+    doc.body.innerHTML = '&lt;template id=&quot;tmpl1&quot;&gt;' +
+        '&lt;div id=&quot;div1&quot;&gt;This is div inside template&lt;/div&gt;' +
+        '&lt;div id=&quot;div2&quot;&gt;This is another div inside template&lt;/div&gt;' +
+        '&lt;/template&gt;';
+
+    var template = doc.querySelector('#tmpl1');
+    var copy = template.cloneNode();
+
+    assert_equals(copy.content.childNodes.length, 0,
+            'Wrong number of template content\'s copy child nodes');
+    checkOwnerDocument(copy.content, template.content.ownerDocument);
+
+}, 'ownerDocument of cloned template content is set to template content owner. '
+      + 'Test cloneNode() with no arguments (false by default)');
+
+
+
+test(function () {
+    var doc = newHTMLDocument();
+    doc.body.innerHTML = '&lt;template id=&quot;tmpl1&quot;&gt;' +
+        '&lt;div id=&quot;div1&quot;&gt;This is div inside template&lt;/div&gt;' +
+        '&lt;div id=&quot;div2&quot;&gt;This is another div inside template&lt;/div&gt;' +
+        '&lt;template id=&quot;tmpl2&quot;&gt;' +
+        '&lt;div id=&quot;div3&quot;&gt;This is div inside nested template&lt;/div&gt;' +
+        '&lt;div id=&quot;div4&quot;&gt;This is another div inside nested template&lt;/div&gt;' +
+        '&lt;/template&gt;' +
+        '&lt;/template&gt;';
+
+    var template = doc.querySelector('#tmpl1');
+    var copy = template.cloneNode(true);
+
+    assert_equals(copy.content.childNodes.length, 3,
+            'Wrong number of template content\'s copy child nodes');
+    checkOwnerDocument(copy.content, template.content.ownerDocument);
+
+}, 'ownerDocument of cloned template content is set to template content owner. '
+    + 'Test cloning nested template');
+
+
+
+testInIFrame('../resources/template-contents.html', function(context) {
+    var doc = context.iframes[0].contentDocument;
+
+    var template = doc.body.querySelector('template');
+    var copy = template.cloneNode(true);
+
+    checkOwnerDocument(copy.content, template.content.ownerDocument);
+
+}, 'ownerDocument of cloned template content is set to template content owner. '
+   + 'Test loading HTML document from file');
+
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementadditionstothestepstocloneanodew3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/template-clone-children.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/templates-copy-document-owner.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementdefinitionstemplatecontentsexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,11 @@
</span><ins>+
+PASS The template contents must be a DocumentFragment (empty template) 
+PASS The template contents must be a DocumentFragment (non empty template) 
+PASS The template contents must be a DocumentFragment (non empty template containing div which is an Element instance) 
+PASS The template contents must be a DocumentFragment (not empty template containing text node) 
+PASS The template contents must be a DocumentFragment (nested template containing a text node) 
+PASS The template contents must be a DocumentFragment (the empty template tag inside HTML file loaded in iframe) 
+PASS The template contents must be a DocumentFragment (non empty template tag inside HTML file loaded in iframe) 
+PASS The template contents must be a DocumentFragment (the template tag with some text inside HTML file loaded in iframe) 
+PASS The template contents must be a DocumentFragment (the template tag with nested template tag inside HTML file loaded in iframe) 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementdefinitionstemplatecontentsownerdocumenttypeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-document-type-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-document-type-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-document-type-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+
+PASS The template contents owner document type is HTML document (case when document has browsing context and the template is created by HTML parser) 
+PASS The template contents owner document type is HTML document (case when document has browsing context and the template is created by createElement()) 
+PASS The template contents owner document type is HTML document (case when document has no browsing context and the template is created by createElement()) 
+PASS The template contents owner document type is HTML document (case when document has no browsing context and the template is created via innerHTML) 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementdefinitionstemplatecontentsownerdocumenttypehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-document-type.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-document-type.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-document-type.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,72 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;title&gt;HTML Templates: The template contents owner document type is HTML document&lt;/title&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Sergey G. Grekhov&quot; href=&quot;mailto:sgrekhov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;The template contents owner document type is HTML document, if template is declared in HTML document&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;http://www.w3.org/TR/2013/WD-html-templates-20130214/#definitions&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src='/w3c/html/resources/common.js'&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/resources/testharness.css&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+
+testInIFrame('../resources/template-contents.html', function(context) {
+    var doc = context.iframes[0].contentDocument;
+    var template = doc.querySelector('template');
+
+    assert_class_string(template.content.ownerDocument, 'HTMLDocument',
+            'Template content owner should be a HTML document');
+
+}, 'The template contents owner document type is HTML document ' +
+    '(case when document has browsing context and the template ' +
+    'is created by HTML parser)');
+
+
+testInIFrame('../resources/template-contents.html', function(context) {
+    var doc = context.iframes[0].contentDocument;
+    var template = doc.createElement('template');
+    var div = doc.createElement('div');
+    template.appendChild(div);
+
+    doc.body.appendChild(template);
+
+    assert_class_string(template.content.ownerDocument, 'HTMLDocument',
+            'Template content owner should be a HTML document');
+
+}, 'The template contents owner document type is HTML document ' +
+    '(case when document has browsing context and the template ' +
+    'is created by createElement())');
+
+
+test(function() {
+    var doc = newHTMLDocument();
+    var template = doc.createElement('template');
+    var div = doc.createElement('div');
+    template.appendChild(div);
+
+    doc.body.appendChild(template);
+
+    assert_class_string(template.content.ownerDocument, 'HTMLDocument',
+            'Template content owner should be a HTML document');
+
+}, 'The template contents owner document type is HTML document ' +
+    '(case when document has no browsing context and the template is created ' +
+    'by createElement())');
+
+test(function() {
+    var doc = newHTMLDocument();
+    doc.body.innerHTML = '&lt;template&gt;&lt;div&gt;Hello!&lt;/div&gt;&lt;/template&gt;';
+    var template = doc.querySelector('template');
+
+    assert_class_string(template.content.ownerDocument, 'HTMLDocument',
+            'Template content owner should be a HTML document');
+
+}, 'The template contents owner document type is HTML document ' +
+    '(case when document has no browsing context and the template is created via innerHTML)');
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementdefinitionstemplatecontentsownertest001expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-001-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-001-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-001-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+FAIL Test the template contents owner document when enclosing document has no browsing content. Template element is created by createElement() assert_not_equals: Wrong template content owner got disallowed value Document node with 2 children
+FAIL Test the template contents owner document when enclosing document has no browsing content. Template element is created by innerHTML assert_not_equals: Wrong template content owner got disallowed value Document node with 2 children
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementdefinitionstemplatecontentsownertest001html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-001.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-001.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-001.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,45 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;title&gt;HTML Templates: The template contents owner document (no browsing context)&lt;/title&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Sergey G. Grekhov&quot; href=&quot;mailto:sgrekhov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;Even if template's enclosing document has no browsing context, it gets its own template contents owner&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;http://www.w3.org/TR/2013/WD-html-templates-20130214/#definitions&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src='/w3c/html/resources/common.js'&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/resources/testharness.css&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+
+
+test(function() {
+    var doc = newHTMLDocument();
+    var template = doc.createElement('template');
+
+    doc.body.appendChild(template);
+
+    assert_not_equals(template.content.ownerDocument, doc, 'Wrong template content owner');
+
+}, 'Test the template contents owner document when enclosing document has '
+    + 'no browsing content. Template element is created by createElement()');
+
+
+
+test(function() {
+    var doc = newHTMLDocument();
+
+    doc.body.innerHTML = '&lt;template&gt;&lt;div&gt;some text&lt;/div&gt;&lt;/template&gt;';
+
+    var template = doc.querySelector('template');
+
+    assert_not_equals(template.content.ownerDocument, doc, 'Wrong template content owner');
+
+}, 'Test the template contents owner document when enclosing document has '
+    + 'no browsing content. Template element is created by innerHTML');
+
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementdefinitionstemplatecontentsownertest002expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-002-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-002-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-002-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+
+PASS The template contents owner document must be different from template owner document, which has browsing context. Template element is created by createElement() 
+PASS The template contents owner document must be different from template owner document, which has browsing context. Template element is created via innerHTML 
+PASS The template contents owner document must be different from template owner document, which has browsing context. Template element is created by HTML parser 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementdefinitionstemplatecontentsownertest002html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-002.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-002.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-002.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,68 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;title&gt;HTML Templates: The template contents owner document (there's browsing context)&lt;/title&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Sergey G. Grekhov&quot; href=&quot;mailto:sgrekhov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;If template's enclosing document has browsing context, then templates content owner must be a new Document node without browsing context&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;http://www.w3.org/TR/2013/WD-html-templates-20130214/#definitions&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src='/w3c/html/resources/common.js'&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/resources/testharness.css&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+
+
+testInIFrame(null, function(context) {
+    var doc = context.iframes[0].contentDocument;
+    var template = doc.createElement('template');
+
+    var div = doc.createElement('div');
+    div.setAttribute('id', 'div1');
+
+    template.appendChild(div);
+
+    doc.body.appendChild(template);
+
+    // doc has browsing context. There should be another document as a template
+    // content owner
+    assert_not_equals(template.content.ownerDocument, doc, 'Wrong template owner document');
+
+}, 'The template contents owner document must be different from template owner document,' +
+     ' which has browsing context. Template element is created by createElement()');
+
+
+
+testInIFrame(null, function(context) {
+    var doc = context.iframes[0].contentDocument;
+
+    doc.body.innerHTML = '&lt;template&gt;&lt;div&gt;some text&lt;/div&gt;&lt;/template&gt;';
+
+    var template = doc.querySelector('template');
+
+    // doc has browsing context. There should be another document as a template
+    // content owner
+    assert_not_equals(template.content.ownerDocument, doc, 'Wrong template owner document');
+
+}, 'The template contents owner document must be different from template owner document,' +
+     ' which has browsing context. Template element is created via innerHTML');
+
+
+
+testInIFrame('../resources/template-contents.html', function(context) {
+    var doc = context.iframes[0].contentDocument;
+
+    var template = doc.querySelector('template');
+
+    // doc has browsing context. There should be another document as a template
+    // content owner
+    assert_not_equals(template.content.ownerDocument, doc, 'Wrong template owner document');
+
+}, 'The template contents owner document must be different from template owner document,' +
+     ' which has browsing context. Template element is created by HTML parser');
+
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementdefinitionstemplatecontentshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,173 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;title&gt;HTML Templates: The template contents is a DocumentFragment&lt;/title&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Sergey G. Grekhov&quot; href=&quot;mailto:sgrekhov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;The template contents must be a DocumentFragment&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;http://www.w3.org/TR/2013/WD-html-templates-20130214/#definitions&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src='/w3c/html/resources/common.js'&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/resources/testharness.css&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+
+
+test(function() {
+    var doc = newHTMLDocument();
+    var template = doc.createElement('template');
+
+    doc.body.appendChild(template);
+
+    assert_equals(template.content.nodeType, Node.DOCUMENT_FRAGMENT_NODE,
+            'Template content should be a DocumentFragment');
+
+    assert_class_string(template.content, 'DocumentFragment',
+            'Template content class should be a DocumentFragment');
+
+}, 'The template contents must be a DocumentFragment (empty template)');
+
+
+test(function() {
+    var doc = newHTMLDocument();
+    var template = doc.createElement('template');
+
+    template.innerHTML = '&lt;div&gt;This is a div&lt;/div&gt;&lt;span&gt;This is a span&lt;/span&gt;';
+
+    doc.body.appendChild(template);
+
+    assert_equals(template.content.nodeType, Node.DOCUMENT_FRAGMENT_NODE,
+            'Template content should be a DocumentFragment');
+
+    assert_class_string(template.content, 'DocumentFragment',
+            'Template content class should be a DocumentFragment');
+
+}, 'The template contents must be a DocumentFragment (non empty template)');
+
+
+
+test(function() {
+    var doc = newHTMLDocument();
+    var template = doc.createElement('template');
+
+    template.innerHTML = '&lt;div&gt;This is a div&lt;/div&gt;';
+
+    doc.body.appendChild(template);
+
+    assert_equals(template.content.nodeType, Node.DOCUMENT_FRAGMENT_NODE,
+            'Template content should be a documentFragment');
+
+}, 'The template contents must be a DocumentFragment (non empty template '
+        + 'containing div which is an Element instance)');
+
+
+test(function() {
+    var doc = newHTMLDocument();
+    var template = doc.createElement('template');
+
+    template.innerHTML = 'Some text';
+
+    doc.body.appendChild(template);
+
+    assert_equals(template.content.nodeType, Node.DOCUMENT_FRAGMENT_NODE,
+            'Template content should be a documentFragment');
+
+    assert_class_string(template.content, 'DocumentFragment',
+            'Template content class should be a DocumentFragment');
+
+}, 'The template contents must be a DocumentFragment (not empty template '
+        + 'containing text node)');
+
+
+test(function() {
+    var doc = newHTMLDocument();
+    var template = doc.createElement('template');
+
+    template.innerHTML = '&lt;template id=&quot;t2&quot;&gt;Some text&lt;/template&gt;';
+
+    doc.body.appendChild(template);
+
+    assert_equals(template.content.nodeType, Node.DOCUMENT_FRAGMENT_NODE,
+            'Template content should be a documentFragment');
+    assert_class_string(template.content, 'DocumentFragment',
+            'Template content class should be a DocumentFragment');
+
+    var nestedTemplate = template.content.querySelector(&quot;#t2&quot;);
+    assert_equals(nestedTemplate.content.nodeType, Node.DOCUMENT_FRAGMENT_NODE,
+            'Nested template content should be a documentFragment');
+
+    assert_class_string(nestedTemplate.content, 'DocumentFragment',
+            'Nested template content class should be a DocumentFragment');
+
+
+}, 'The template contents must be a DocumentFragment (nested template '
+        + 'containing a text node)');
+
+
+testInIFrame('../resources/template-contents-empty.html', function(context) {
+    var doc = context.iframes[0].contentDocument;
+
+    var template = doc.querySelector('template');
+
+    assert_equals(template.content.nodeType, Node.DOCUMENT_FRAGMENT_NODE,
+            'Template content should be a documentFragment');
+    assert_class_string(template.content, 'DocumentFragment',
+            'Template content class should be a DocumentFragment');
+
+
+}, 'The template contents must be a DocumentFragment (the empty template tag '
+        + 'inside HTML file loaded in iframe)');
+
+
+testInIFrame('../resources/template-contents.html', function(context) {
+    var doc = context.iframes[0].contentDocument;
+
+    var template = doc.querySelector('template');
+
+    assert_equals(template.content.nodeType, Node.DOCUMENT_FRAGMENT_NODE,
+            'Template content should be a documentFragment');
+    assert_class_string(template.content, 'DocumentFragment',
+            'Template content class should be a DocumentFragment');
+
+}, 'The template contents must be a DocumentFragment (non empty template '
+        + 'tag inside HTML file loaded in iframe)');
+
+
+testInIFrame('../resources/template-contents-text.html', function(context) {
+    var doc = context.iframes[0].contentDocument;
+
+    var template = doc.querySelector('template');
+
+    assert_equals(template.content.nodeType, Node.DOCUMENT_FRAGMENT_NODE,
+            'Template content should be a documentFragment');
+    assert_class_string(template.content, 'DocumentFragment',
+            'Template content class should be a DocumentFragment');
+
+}, 'The template contents must be a DocumentFragment (the template tag '
+        + 'with some text inside HTML file loaded in iframe)');
+
+
+testInIFrame('../resources/template-contents-nested.html', function(context) {
+    var doc = context.iframes[0].contentDocument;
+
+    var template = doc.querySelector('template');
+
+    assert_equals(template.content.nodeType, Node.DOCUMENT_FRAGMENT_NODE,
+            'Template content should be a documentFragment');
+    assert_class_string(template.content, 'DocumentFragment',
+            'Template content class should be a DocumentFragment');
+
+    var nestedTemplate = template.content.querySelector(&quot;template&quot;);
+
+    assert_equals(nestedTemplate.content.nodeType, Node.DOCUMENT_FRAGMENT_NODE,
+            'Nested template content should be a documentFragment');
+    assert_class_string(nestedTemplate.content, 'DocumentFragment',
+            'Nested template content class should be a DocumentFragment');
+
+}, 'The template contents must be a DocumentFragment (the template tag '
+        + 'with nested template tag inside HTML file loaded in iframe)');
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementdefinitionsw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,21 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-document-type.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-001.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-test-002.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/definitions/template-contents.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementinnerhtmlontemplatesinnerhtmlexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/innerhtml-on-templates/innerhtml-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/innerhtml-on-templates/innerhtml-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/innerhtml-on-templates/innerhtml-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+
+PASS innerHTML of template element replaces all referenced by the content attribute 
+PASS innerHTML of template element replaces all referenced by the content attribute. Test nested template 
+PASS innerHTML of template element replaces all referenced by the content attribute. Test loading of HTML document from a file 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementinnerhtmlontemplatesinnerhtmlhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/innerhtml-on-templates/innerhtml.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/innerhtml-on-templates/innerhtml.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/innerhtml-on-templates/innerhtml.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,87 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;title&gt;HTML Templates: innerHTML of template element replaces all referenced by the content attribute&lt;/title&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Sergey G. Grekhov&quot; href=&quot;mailto:sgrekhov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;a.semenov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;innerHTML of template element replaces all referenced by the content attribute&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;http://www.w3.org/TR/2013/WD-html-templates-20130214/#innerhtml-on-templates&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src='/w3c/html/resources/common.js'&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/resources/testharness.css&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+
+test(function () {
+    var doc = newHTMLDocument();
+    var template = doc.createElement('template');
+
+    var div1 = doc.createElement('div');
+    div1.setAttribute('id', 'div1');
+    template.content.appendChild(div1);
+
+    assert_not_equals(template.content.querySelector('#div1'), null,
+            'Element should present in template content');
+
+    template.innerHTML = '&lt;div id=&quot;div2&quot;&gt;&lt;/div&gt;';
+
+    assert_equals(template.content.querySelector('#div1'), null,
+            'Template content should be replaced by innerHTML');
+    assert_not_equals(template.content.querySelector('#div2'), null,
+            'Element should present in template content');
+
+}, 'innerHTML of template element replaces all referenced by the content attribute');
+
+
+
+test(function () {
+    var doc = newHTMLDocument();
+    var template = doc.createElement('template');
+    var nestedTemplate = doc.createElement('template');
+
+    template.content.appendChild(nestedTemplate);
+
+    var div1 = doc.createElement('div');
+    div1.setAttribute('id', 'div1');
+    nestedTemplate.content.appendChild(div1);
+
+    assert_not_equals(nestedTemplate.content.querySelector('#div1'), null,
+            'Element should present in template content');
+
+    nestedTemplate.innerHTML = '&lt;div id=&quot;div2&quot;&gt;&lt;/div&gt;';
+
+    assert_equals(nestedTemplate.content.querySelector('#div1'), null,
+            'Template content should be replaced by innerHTML');
+    assert_not_equals(nestedTemplate.content.querySelector('#div2'), null,
+            'Element should present in template content');
+
+}, 'innerHTML of template element replaces all referenced by the content attribute. '
+    + 'Test nested template');
+
+
+testInIFrame('../resources/template-contents.html', function(context) {
+    var doc = context.iframes[0].contentDocument;
+
+    var template = doc.querySelector('template');
+    assert_not_equals(template.content.querySelector('div'), null,
+           'Div element should present in template content');
+
+    template.innerHTML = '&lt;span&gt;span internals&lt;/span&gt;';
+
+    assert_equals(template.content.querySelector('div'), null,
+           'div element should be replaced by span in template content');
+
+    assert_not_equals(template.content.querySelector('span'), null,
+           'span element should present in template content');
+
+
+}, 'innerHTML of template element replaces all referenced by the content attribute. '
+    + 'Test loading of HTML document from a file');
+
+
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementinnerhtmlontemplatesw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/innerhtml-on-templates/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/innerhtml-on-templates/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/innerhtml-on-templates/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/innerhtml-on-templates/innerhtml.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcesendtemplatetaginbodyhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/end-template-tag-in-body.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/end-template-tag-in-body.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/end-template-tag-in-body.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,12 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;title&gt;The file contains several &amp;lt;/template&amp;gt; tag in HTML body without start one&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;/template&gt;
+    &lt;div&gt;The file contains several &amp;lt;/template&amp;gt; tag in HTML body without start one&lt;/div&gt;
+    &lt;/template&gt;&lt;/template&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcesendtemplatetaginheadhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/end-template-tag-in-head.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/end-template-tag-in-head.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/end-template-tag-in-head.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,12 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;/template&gt;
+    &lt;title&gt;The file contains several &amp;lt;/template&amp;gt; tag in HTML head without start one&lt;/title&gt;
+    &lt;/template&gt;&lt;/template&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+    &lt;/template&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcesframesetendtaghtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/frameset-end-tag.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/frameset-end-tag.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/frameset-end-tag.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;title&gt;The file contains frameset with the template and frameset end tag in it&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Sergey G. Grekhov&quot; href=&quot;mailto:sgrekhov@unipro.ru&quot;&gt;
+&lt;/head&gt;
+&lt;frameset&gt;
+    &lt;template&gt;&lt;/frameset&gt;&lt;/template&gt;
+&lt;/frameset&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcesheadtemplatecontentsdivnoendtaghtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/head-template-contents-div-no-end-tag.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/head-template-contents-div-no-end-tag.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/head-template-contents-div-no-end-tag.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,12 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;title&gt;The file contains template element with open div tag, but without end div tag, in the head&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+    &lt;template&gt;
+        &lt;div&gt;Hello, template
+    &lt;/template&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcesheadtemplatecontentstablenoendtaghtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/head-template-contents-table-no-end-tag.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/head-template-contents-table-no-end-tag.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/head-template-contents-table-no-end-tag.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,14 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+  &lt;title&gt;The file contains template element with open table, tr, td tags, but without end td, tr, table tags, in the head&lt;/title&gt;
+  &lt;link rel=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+  &lt;template&gt;
+    &lt;table&gt;
+      &lt;tr&gt;
+        &lt;td&gt;Hello, cell one!
+  &lt;/template&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourceshtmlstarttaghtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/html-start-tag.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/html-start-tag.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/html-start-tag.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html tabindex=&quot;5&quot;&gt;
+&lt;head&gt;
+    &lt;title&gt;The file contains html root element with attributes and some in the body&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Sergey G. Grekhovv&quot; href=&quot;mailto:sgrekhov@unipro.ru&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;template id=&quot;tmpl&quot;&gt;&lt;html class=&quot;htmlClass&quot;&gt;&lt;/html&gt;&lt;/template&gt;&lt;html id=&quot;htmlId&quot; tabindex=&quot;5&quot;&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatechildnodesdivxhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-child-nodes-div.xhtml (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-child-nodes-div.xhtml                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-child-nodes-div.xhtml        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,14 @@
</span><ins>+&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;
+&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;
+&lt;head&gt;
+  &lt;title&gt;Template tag with children div tags inside&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;/&gt;
+&lt;/head&gt;
+&lt;body&gt;
+  &lt;p&gt;Template tag with div tags inside&lt;/p&gt;
+  &lt;template&gt;
+    &lt;div&gt;This is div inside template&lt;/div&gt;
+    &lt;div&gt;This is another div inside template&lt;/div&gt;
+  &lt;/template&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatechildnodesnestedxhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-child-nodes-nested.xhtml (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-child-nodes-nested.xhtml                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-child-nodes-nested.xhtml        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,16 @@
</span><ins>+&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;
+&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;
+&lt;head&gt;
+  &lt;title&gt;Template tag with children div tags inside another template tag&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;/&gt;
+&lt;/head&gt;
+&lt;body&gt;
+  &lt;p&gt;Template tag with children div tags inside another template tag&lt;/p&gt;
+  &lt;template&gt;
+    &lt;template&gt;
+      &lt;div&gt;This is div inside template&lt;/div&gt;
+      &lt;div&gt;This is another div inside template&lt;/div&gt;
+    &lt;/template&gt;
+  &lt;/template&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatecontentsattributehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-attribute.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-attribute.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-attribute.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;title&gt;Empty template tag with attribute content&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+&lt;head&gt;
+&lt;body&gt;
+    &lt;template content='some text'&gt;&lt;/template&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatecontentsbodyhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-body.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-body.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-body.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;title&gt;BODY tag inside template&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+&lt;head&gt;
+&lt;body&gt;
+    &lt;template&gt;&lt;body&gt;&lt;/body&gt;&lt;/template&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatecontentsdivnoendtaghtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-div-no-end-tag.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-div-no-end-tag.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-div-no-end-tag.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,12 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;title&gt;Div tag inside template tag&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;template&gt;
+        &lt;div&gt;Hello, template
+    &lt;/template&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatecontentsemptyhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-empty.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-empty.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-empty.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,11 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;title&gt;Empty template tag&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+&lt;head&gt;
+&lt;body&gt;
+    &lt;template&gt;
+    &lt;/template&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatecontentsframesethtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-frameset.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-frameset.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-frameset.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;title&gt;FRAMESET tag inside template&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+&lt;head&gt;
+&lt;body&gt;
+    &lt;template&gt;&lt;frameset&gt;&lt;/frameset&gt;&lt;/template&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatecontentsheadhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-head.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-head.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-head.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;title&gt;HEAD tag inside template&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+&lt;head&gt;
+&lt;body&gt;
+    &lt;template&gt;&lt;head&gt;&lt;/head&gt;&lt;/template&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatecontentshtmlhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-html.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-html.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-html.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;title&gt;HTML tag inside template&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+&lt;head&gt;
+&lt;body&gt;
+    &lt;template&gt;&lt;html&gt;&lt;/html&gt;&lt;/template&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatecontentsnestedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-nested.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-nested.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-nested.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+    &lt;title&gt;Contains second template tag inside template tag&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+&lt;body&gt;
+    &lt;template&gt;
+        &lt;template&gt;
+            &lt;div&gt;Inside nested template&lt;/div&gt;
+        &lt;/template&gt;
+    &lt;/template&gt;
+&lt;/body&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatecontentstablenoendtaghtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-table-no-end-tag.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-table-no-end-tag.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-table-no-end-tag.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,14 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;title&gt;The file contains template element with open table, tr, td tags, without end td, tr, table tags&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+  &lt;template&gt;
+    &lt;table&gt;
+      &lt;tr&gt;
+        &lt;td&gt;Hello, cell one!
+  &lt;/template&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatecontentstexthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-text.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-text.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-text.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;title&gt;Some text inside template tag&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;template&gt;Some text&lt;/template&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatecontentshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,12 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;title&gt;Div tag inside template tag&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;template&gt;
+        &lt;div&gt;Hello, template&lt;/div&gt;
+    &lt;/template&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatedescendantbodyhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-descendant-body.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-descendant-body.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-descendant-body.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,12 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;title&gt;Div tag inside template tag&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Sergey G. Grekhov&quot; href=&quot;mailto:sgrekhov@unipro.ru&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;template&gt;
+        &lt;div&gt;Hello, template&lt;/div&gt;
+    &lt;/template&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatedescendantframesethtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-descendant-frameset.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-descendant-frameset.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-descendant-frameset.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,12 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;title&gt;Template tag inside frameset&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+&lt;/head&gt;
+&lt;frameset&gt;
+    &lt;template&gt;
+        &lt;div&gt;Hello, template&lt;/div&gt;
+    &lt;/template&gt;
+&lt;/frameset&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestemplatedescendantheadhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-descendant-head.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-descendant-head.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-descendant-head.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,13 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;title&gt;Template tag inside head&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+    &lt;template&gt;
+        &lt;div&gt;Hello, template&lt;/div&gt;
+    &lt;/template&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    Nothing interesting here
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcestwotemplateshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/two-templates.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/two-templates.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/two-templates.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,17 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+    &lt;title&gt;The file contains two template elements&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+    &lt;template id=&quot;template1&quot;&gt;
+        &lt;div&gt;Hello, template&lt;/div&gt;
+    &lt;/template&gt;
+
+    &lt;template id=&quot;template2&quot;&gt;
+        &lt;div&gt;Hello, from second template&lt;/div&gt;
+    &lt;/template&gt;
+
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementresourcesw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,40 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/end-template-tag-in-body.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/end-template-tag-in-head.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/frameset-end-tag.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/head-template-contents-div-no-end-tag.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/head-template-contents-table-no-end-tag.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/html-start-tag.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-child-nodes-div.xhtml
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-child-nodes-nested.xhtml
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-attribute.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-body.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-div-no-end-tag.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-empty.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-frameset.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-head.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-html.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-nested.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-table-no-end-tag.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents-text.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-contents.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-descendant-body.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-descendant-frameset.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/template-descendant-head.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/resources/two-templates.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementserializinghtmltemplatesouterhtmlexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/serializing-html-templates/outerhtml-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/serializing-html-templates/outerhtml-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/serializing-html-templates/outerhtml-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+
+PASS Template contents should be serialized instead of template element if serializing template element 
+PASS Template contents should be serialized instead of template element if serializing template element. Test nested template 
+PASS Template contents should be serialized instead of template element if serializing template element. Test serializing whole document 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementserializinghtmltemplatesouterhtmlhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/serializing-html-templates/outerhtml.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/serializing-html-templates/outerhtml.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/serializing-html-templates/outerhtml.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,71 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;title&gt;HTML Templates: serialize template contents instead of template element&lt;/title&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;a.semenov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;template contents should be serialized instead of template element if serializing template element&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;http://www.w3.org/TR/2013/WD-html-templates-20130214/#serializing-html-templates&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src='/w3c/html/resources/common.js'&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/resources/testharness.css&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+
+test(function () {
+    var doc = newHTMLDocument();
+    var template = doc.createElement('template');
+
+    var div = doc.createElement('div');
+    div.setAttribute('id', 'div1');
+    div.innerHTML = 'some text';
+    template.content.appendChild(div);
+
+    assert_equals(template.outerHTML, '&lt;template&gt;&lt;div id=&quot;div1&quot;&gt;some text&lt;/div&gt;&lt;/template&gt;',
+       'template element is serialized incorrectly');
+
+}, 'Template contents should be serialized instead of template element if serializing template element');
+
+
+
+test(function () {
+    var doc = newHTMLDocument();
+    var template = doc.createElement('template');
+    var nestedTemplate = doc.createElement('template');
+
+    template.content.appendChild(nestedTemplate);
+
+    var div = doc.createElement('div');
+    div.setAttribute('id', 'div1');
+    div.innerHTML = 'some text';
+    nestedTemplate.content.appendChild(div);
+
+    assert_equals(template.outerHTML, '&lt;template&gt;&lt;template&gt;&lt;div id=&quot;div1&quot;&gt;some text&lt;/div&gt;&lt;/template&gt;&lt;/template&gt;',
+       'template element is serialized incorrectly');
+
+
+}, 'Template contents should be serialized instead of template element if serializing template element. '
+    + 'Test nested template');
+
+
+test(function () {
+    var doc = newHTMLDocument();
+    var template = doc.createElement('template');
+
+    var div = doc.createElement('div');
+    div.setAttribute('id', 'div1');
+    div.innerHTML = 'some text';
+    template.content.appendChild(div);
+    doc.body.appendChild(template);
+
+    assert_equals(doc.documentElement.outerHTML, '&lt;html&gt;&lt;head&gt;&lt;title&gt;Test Document&lt;/title&gt;&lt;/head&gt;&lt;body&gt;&lt;template&gt;&lt;div id=&quot;div1&quot;&gt;some text&lt;/div&gt;&lt;/template&gt;&lt;/body&gt;&lt;/html&gt;',
+       'template element is serialized incorrectly');
+
+}, 'Template contents should be serialized instead of template element if serializing template element. '
+    + 'Test serializing whole document');
+
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementserializinghtmltemplatesw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/serializing-html-templates/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/serializing-html-templates/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/serializing-html-templates/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/serializing-html-templates/outerhtml.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementcontentattributeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/content-attribute-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/content-attribute-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/content-attribute-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+
+PASS Content attribute of template element is read-only. Test empty template 
+PASS Content attribute of template element is read-only. Test not empty template populated by appendchild() 
+PASS Content attribute of template element is read-only. Test not empty template populated by innerHTML 
+PASS Content attribute of template element is read-only. Test that custom content attribute named 'content' doesn't make content IDL attribute writable 
+PASS Content attribute of template element is read-only. Test that custom content attribute named 'content' doesn't affect content IDL attribute 
+PASS Content attribute of template element is read-only. Text value of content attribute of template tag should be ignored, when loading document from a file 
+PASS Content attribute of template element is read-only. Test content attribute of a document loaded from a file 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementcontentattributehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/content-attribute.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/content-attribute.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/content-attribute.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,115 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;title&gt;HTML Templates: Content attribute of template element is read-only&lt;/title&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Sergey G. Grekhov&quot; href=&quot;mailto:sgrekhov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;Content attribute of template element is read-only&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;http://www.w3.org/TR/2013/WD-html-templates-20130214/#template-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src='/w3c/html/resources/common.js'&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/resources/testharness.css&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+
+test(function() {
+    var doc = newHTMLDocument();
+    var template = doc.createElement('template');
+
+    assert_readonly(template, 'content',
+            'Content attribute of template element should be read-only');
+
+}, 'Content attribute of template element is read-only. ' +
+    'Test empty template');
+
+
+test(function() {
+    var doc = newHTMLDocument();
+    var template = doc.createElement('template');
+    var el1 = doc.createElement('div');
+    var el2 = doc.createElement('span');
+    el1.appendChild(el2);
+
+    template.content.appendChild(el1);
+
+    assert_readonly(template, 'content',
+            'Content attribute of template element should be read-only');
+
+}, 'Content attribute of template element is read-only. ' +
+    'Test not empty template populated by appendchild()');
+
+
+test(function() {
+    var doc = newHTMLDocument();
+    doc.body.innerHTML = '&lt;template&gt;Text&lt;div&gt;DIV&lt;/div&gt;&lt;/template&gt;';
+
+    var template = doc.querySelector('template');
+
+    assert_readonly(template, 'content',
+            'Content attribute of template element should be read-only');
+
+}, 'Content attribute of template element is read-only. ' +
+    'Test not empty template populated by innerHTML');
+
+
+test(function() {
+    var doc = newHTMLDocument();
+    doc.body.innerHTML = '&lt;template id=&quot;template1&quot; content=&quot;Some text as a content&quot;&gt;&lt;/template&gt;';
+
+    var template = doc.querySelector('#template1');
+
+    assert_readonly(template, 'content',
+            'Content attribute of template element should be read-only');
+
+}, 'Content attribute of template element is read-only. ' +
+    'Test that custom content attribute named \'content\' doesn\'t ' +
+    'make content IDL attribute writable');
+
+
+test(function() {
+    var doc = newHTMLDocument();
+    doc.body.innerHTML = '&lt;template id=&quot;template1&quot; content=&quot;&lt;div id=div1&gt;Div content&lt;/div&gt;&quot;&gt;&lt;/template&gt;';
+
+    var template = doc.querySelector('#template1');
+
+    assert_readonly(template, 'content',
+            'Content attribute of template element should be read-only');
+
+    assert_equals(template.content.childNodes.length, 0,
+            'Content attribute of template element should be read-only');
+
+}, 'Content attribute of template element is read-only. ' +
+    'Test that custom content attribute named \'content\' doesn\'t ' +
+    'affect content IDL attribute');
+
+
+testInIFrame('../resources/template-contents-attribute.html', function(context) {
+    var doc = context.iframes[0].contentDocument;
+
+    var template = doc.body.querySelector('template');
+
+    assert_readonly(template, 'content',
+            'Content attribute of template element should be read-only');
+
+}, 'Content attribute of template element is read-only. '
+    + 'Text value of content attribute of template tag should be ignored, '
+    + 'when loading document from a file');
+
+
+testInIFrame('../resources/template-contents.html', function(context) {
+    var doc = context.iframes[0].contentDocument;
+
+    var template = doc.body.querySelector('template');
+
+    assert_readonly(template, 'content',
+            'Content attribute of template element should be read-only');
+
+}, 'Content attribute of template element is read-only. '
+    + 'Test content attribute of a document loaded from a file');
+
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementnodedocumentchangesexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/node-document-changes-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/node-document-changes-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/node-document-changes-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+
+FAIL Changing of template element's node document. Test that ownerDocument of an empty template and its content changes assert_not_equals: Wrong template content owner document got disallowed value Document node with 2 children
+FAIL Changing of template element's node document. Test that ownerDocument of a not empty template and its content changes assert_not_equals: Wrong template content owner document got disallowed value Document node with 2 children
+FAIL Changing of template element's node document. Test that ownerDocument of nested template and its content changes assert_not_equals: Wrong template content owner document got disallowed value Document node with 2 children
+PASS Changing of template element's node document. Test document loaded from a file 
+PASS Changing of template element's node document. Adobt template element into a document that has a browsing context 
+PASS Changing of template element's node document. Test the case when both old and new owner documents of template element have browsing context 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementnodedocumentchangeshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/node-document-changes.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/node-document-changes.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/node-document-changes.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,200 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;title&gt;HTML Templates: When node's document changes its owner document should be changed&lt;/title&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Sergey G. Grekhov&quot; href=&quot;mailto:sgrekhov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;When a template element's node document changes, the template element's content DocumentFragment must be adopted into the new node document's template contents owner document&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;http://www.w3.org/TR/2013/WD-html-templates-20130214/#template-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src='/w3c/html/resources/common.js'&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/resources/testharness.css&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+
+
+test(function() {
+    var doc1 = newHTMLDocument();
+    var template = doc1.createElement('template');
+
+    assert_equals(template.ownerDocument, doc1, 'Wrong template node owner document');
+    assert_not_equals(template.content.ownerDocument, doc1,
+            'Wrong template content owner document');
+
+    var doc2 = newHTMLDocument();
+    var template2 = doc2.createElement('template');
+    doc2.body.appendChild(template);
+
+    assert_equals(template.ownerDocument, template2.ownerDocument,
+            'Template node owner document should be changed');
+    assert_equals(template.content.ownerDocument, template2.content.ownerDocument,
+            'Template content owner document should be changed');
+
+}, 'Changing of template element\'s node document. ' +
+    'Test that ownerDocument of an empty template and its content changes');
+
+
+test(function() {
+    var doc1 = newHTMLDocument();
+    doc1.body.innerHTML = '&lt;template id=&quot;tmpl&quot;&gt;&lt;div&gt;Div content&lt;/div&gt; And some more text&lt;/template&gt;';
+
+    var template = doc1.querySelector('#tmpl');
+
+    assert_equals(template.ownerDocument, doc1,
+            'Wrong template node owner document');
+    assert_not_equals(template.content.ownerDocument, doc1,
+            'Wrong template content owner document');
+
+    var doc2 = newHTMLDocument();
+    var template2 = doc2.createElement('template');
+    doc2.body.appendChild(template);
+
+    assert_equals(template.ownerDocument, template2.ownerDocument,
+            'Template node owner document should be changed');
+    assert_equals(template.content.ownerDocument, template2.content.ownerDocument,
+            'Template content owner document should be changed');
+
+    assert_equals(template.content.querySelector('div').ownerDocument,
+            template2.content.ownerDocument,
+            'Template content descendants owner document should be changed');
+
+}, 'Changing of template element\'s node document. ' +
+    'Test that ownerDocument of a not empty template and its content changes');
+
+
+test(function() {
+    var doc1 = newHTMLDocument();
+    doc1.body.innerHTML = ''
+            + '&lt;template id=&quot;tmpl&quot;&gt;&lt;div&gt;Div content&lt;/div&gt; And some more text'
+            + '&lt;template id=&quot;tmpl2&quot;&gt;&lt;div&gt;Template content&lt;/div&gt;&lt;/template&gt;'
+            + '&lt;/template&gt;';
+
+    var template = doc1.querySelector('#tmpl');
+
+    assert_equals(template.ownerDocument, doc1, 'Wrong template node owner document');
+    assert_not_equals(template.content.ownerDocument, doc1,
+            'Wrong template content owner document');
+
+    var nestedTemplate = template.content.querySelector('#tmpl2');
+
+    assert_equals(nestedTemplate.ownerDocument, template.content.ownerDocument,
+            'Wrong nested template node owner document');
+    assert_equals(nestedTemplate.content.ownerDocument, template.content.ownerDocument,
+            'Wrong nested template content owner document');
+
+    var doc2 = newHTMLDocument();
+    var template2 = doc2.createElement('template');
+    doc2.body.appendChild(template);
+
+    assert_equals(template.ownerDocument, template2.ownerDocument,
+            'Template node owner document should be changed');
+    assert_equals(template.content.ownerDocument, template2.content.ownerDocument,
+            'Template content owner document should be changed');
+    assert_equals(template.content.querySelector('div').ownerDocument,
+            template2.content.ownerDocument,
+            'Template content descendants owner document should be changed');
+
+    assert_equals(nestedTemplate.ownerDocument,
+            template2.content.ownerDocument,
+            'Nested template node owner document should be changed');
+    assert_equals(nestedTemplate.content.ownerDocument,
+            template2.content.ownerDocument,
+            'Nested template content owner document should be changed');
+    assert_equals(nestedTemplate.content.querySelector('div').ownerDocument,
+            template2.content.ownerDocument,
+            'Owner document of the nested template content descendants should be changed');
+
+}, 'Changing of template element\'s node document. ' +
+    'Test that ownerDocument of nested template and its content changes');
+
+
+testInIFrame('../resources/template-contents.html', function(context) {
+    var doc1 = context.iframes[0].contentDocument;
+
+    var template = doc1.body.querySelector('template');
+
+    var doc2 = newHTMLDocument();
+    var template2 = doc2.createElement('template');
+    doc2.body.appendChild(template);
+
+    assert_equals(template.ownerDocument, template2.ownerDocument,
+            'Template node owner document should be changed');
+    assert_equals(template.content.ownerDocument,
+            template2.content.ownerDocument,
+            'Template content owner document should be changed');
+    assert_equals(template.content.querySelector('div').ownerDocument,
+            template2.content.ownerDocument,
+            'Template content descendants owner document should be changed');
+
+}, 'Changing of template element\'s node document. ' +
+    'Test document loaded from a file');
+
+
+testInIFrame('../resources/template-contents.html', function(context) {
+    var doc1 = context.iframes[0].contentDocument;
+
+    var doc2 = newHTMLDocument();
+    var template = doc2.createElement('template');
+    var div = doc2.createElement('div');
+    template.content.appendChild(div);
+
+    doc1.body.appendChild(template);
+
+    assert_not_equals(template.ownerDocument, doc2,
+            'Template node owner document should be changed');
+    assert_not_equals(template.content.ownerDocument, doc2,
+            'Template content owner document should be changed');
+    assert_not_equals(div.ownerDocument, doc2,
+            'Template content descendants owner document should be changed');
+
+    assert_equals(template.ownerDocument, doc1,
+            'Template node owner document should be changed');
+    // doc1 has browsing context so it cannot be template.content.ownerDocument
+    assert_not_equals(template.content.ownerDocument, doc1,
+            'Template content owner document should be a new document');
+    assert_equals(div.ownerDocument, template.content.ownerDocument,
+            'Template content descendants owner document should be ' +
+            'template content document owner');
+
+}, 'Changing of template element\'s node document. ' +
+    'Adobt template element into a document that has a browsing context');
+
+
+testInIFrame('../resources/template-contents.html', function(context) {
+    var doc1 = context.iframes[0].contentDocument;
+
+    var template = doc1.querySelector('template');
+    var div = template.content.querySelector('div');
+    var templateContentOwner = template.content.ownerDocument;
+
+    var doc2 = document;
+
+    doc2.body.appendChild(template);
+
+
+    assert_not_equals(template.ownerDocument, doc1,
+            'Template node owner document should be changed');
+    assert_not_equals(template.content.ownerDocument, templateContentOwner,
+            'Template content owner document should be changed');
+    assert_not_equals(div.ownerDocument, templateContentOwner,
+            'Template content descendants owner document should be changed');
+
+    assert_equals(template.ownerDocument, doc2,
+            'Template node owner document should be changed');
+    // doc2 has browsing context, so it cannot be template.content.ownerDocument
+    assert_not_equals(template.content.ownerDocument, doc2,
+            'Template content owner document should be a new document');
+    assert_equals(div.ownerDocument, template.content.ownerDocument,
+            'Template content descendants owner document should be ' +
+            'template content document owner');
+
+}, 'Changing of template element\'s node document. ' +
+    'Test the case when both old and new owner documents of template element ' +
+    'have browsing context');
+
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementtemplateasadescendantexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-as-a-descendant-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-as-a-descendant-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-as-a-descendant-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,14 @@
</span><ins>+
+PASS Template element as a descendant of the BODY element. Template element is created by innerHTML 
+PASS Template element as a descendant of the HEAD element. Template element is created by innerHTML 
+PASS Template element as a descendant of the FRAMESET element. Template element is created by innerHTML 
+PASS Template element as an indirect descendant of the BODY element. Template element is created by innerHTML 
+PASS Template element as an indirect descendant of the HEAD element. Template element is created by innerHTML 
+PASS Template element as an indirect descendant of the FRAMESET element. Template element is created by innerHTML 
+PASS Template element as a descendant of the BODY element. Template element is appended by appendChild() 
+PASS Template element as a descendant of the HEAD element. Template element is appended by appendChild() 
+PASS Template element as a descendant of the FRAMESET element. Template element is  appended by appendChild() 
+PASS Template element as an indirect descendant of the BODY element. Template element is appended by appendChild() 
+PASS Template element as an indirect descendant of the HEAD element. Template element is appended by appendChild() 
+PASS Template element as an indirect descendant of the FRAMESET element. Template element is  appended by appendChild() 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementtemplateasadescendanthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-as-a-descendant.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-as-a-descendant.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-as-a-descendant.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,115 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;title&gt;HTML Templates: Template element as a descendant of the body element.&lt;/title&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Sergey G. Grekhov&quot; href=&quot;mailto:sgrekhov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;Template element can be a descendant of the body element&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;http://www.w3.org/TR/2013/WD-html-templates-20130214/#template-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src='/w3c/html/resources/common.js'&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/resources/testharness.css&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+
+function templateIsAChild(element) {
+    element.innerHTML = '&lt;template&gt;some text&lt;/template&gt;';
+
+    assert_not_equals(element.querySelector('template'), null,
+        'Template element should be a descendant of the ' + element.tagName + ' element');
+}
+
+function templateIsAnIndirectChild(element) {
+    element.innerHTML = '&lt;div&gt;&lt;template&gt;some text&lt;/template&gt;&lt;/div&gt;';
+
+    assert_not_equals(element.querySelector('template'), null,
+        'Template element should be a descendant of the ' + element.tagName + ' element');
+}
+
+function templateIsAnAppendedChild(doc, element) {
+    var template = doc.createElement('template');
+
+    element.appendChild(template);
+
+    assert_not_equals(element.querySelector('template'), null,
+        'Template element should be a descendant of the ' + element.tagName + ' element');
+}
+
+function templateIsAnAppendedIndirectChild(doc, element) {
+    var template = doc.createElement('template');
+    var div = doc.createElement('div');
+    div.appendChild(template);
+
+    element.appendChild(div);
+
+    assert_not_equals(element.querySelector('template'), null,
+        'Template element should be a descendant of the ' + element.tagName + ' element');
+}
+
+var doc = newHTMLDocument();
+var frameset = doc.createElement('frameset');
+
+var parameters = [['Template element as a descendant of the BODY element. ' +
+                   'Template element is created by innerHTML',
+                   doc.body],
+                  ['Template element as a descendant of the HEAD element. ' +
+                   'Template element is created by innerHTML',
+                   doc.head],
+                   ['Template element as a descendant of the FRAMESET element. ' +
+                    'Template element is created by innerHTML',
+                    frameset]
+                   ];
+generate_tests(templateIsAChild, parameters,
+        'Template element as a descendant of the HEAD, BODY and FRAMESET elements');
+
+
+
+parameters = [['Template element as an indirect descendant of the BODY element. ' +
+               'Template element is created by innerHTML',
+               doc.body],
+              ['Template element as an indirect descendant of the HEAD element. ' +
+               'Template element is created by innerHTML',
+               doc.head],
+               ['Template element as an indirect descendant of the FRAMESET element. ' +
+                'Template element is created by innerHTML',
+                frameset]
+               ];
+generate_tests(templateIsAnIndirectChild, parameters,
+        'Template element as an indirect descendant of the HEAD, BODY and FRAMESET elements');
+
+
+
+parameters = [['Template element as a descendant of the BODY element. ' +
+               'Template element is appended by appendChild()',
+               doc, doc.body],
+              ['Template element as a descendant of the HEAD element. ' +
+               'Template element is appended by appendChild()',
+               doc, doc.head],
+               ['Template element as a descendant of the FRAMESET element. ' +
+                'Template element is  appended by appendChild()',
+                doc, frameset]
+               ];
+generate_tests(templateIsAnAppendedChild, parameters,
+        'Template element as a descendant of the HEAD, BODY and FRAMESET elements');
+
+
+
+parameters = [['Template element as an indirect descendant of the BODY element. ' +
+               'Template element is appended by appendChild()',
+               doc, doc.body],
+              ['Template element as an indirect descendant of the HEAD element. ' +
+               'Template element is appended by appendChild()',
+               doc, doc.head],
+               ['Template element as an indirect descendant of the FRAMESET element. ' +
+                'Template element is  appended by appendChild()',
+                doc, frameset]
+               ];
+generate_tests(templateIsAnAppendedIndirectChild, parameters,
+        'Template element as a descendant of the HEAD, BODY and FRAMESET elements');
+
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementtemplatecontentexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-content-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-content-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-content-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,210 @@
</span><ins>+
+PASS Template may contain a element 
+PASS Template may contain abbr element 
+PASS Template may contain address element 
+PASS Template may contain area element 
+PASS Template may contain article element 
+PASS Template may contain aside element 
+PASS Template may contain audio element 
+PASS Template may contain b element 
+PASS Template may contain base element 
+PASS Template may contain bdi element 
+PASS Template may contain bdo element 
+PASS Template may contain blockquote element 
+PASS Template may contain br element 
+PASS Template may contain button element 
+PASS Template may contain canvas element 
+PASS Template may contain caption element 
+PASS Template may contain cite element 
+PASS Template may contain code element 
+PASS Template may contain col element 
+PASS Template may contain colgroup element 
+PASS Template may contain command element 
+PASS Template may contain datalist element 
+PASS Template may contain dd element 
+PASS Template may contain del element 
+PASS Template may contain details element 
+PASS Template may contain dfn element 
+PASS Template may contain dialog element 
+PASS Template may contain div element 
+PASS Template may contain dl element 
+PASS Template may contain dt element 
+PASS Template may contain em element 
+PASS Template may contain embed element 
+PASS Template may contain fieldset element 
+PASS Template may contain figcaption element 
+PASS Template may contain figure element 
+PASS Template may contain footer element 
+PASS Template may contain form element 
+PASS Template may contain h1 element 
+PASS Template may contain h2 element 
+PASS Template may contain h3 element 
+PASS Template may contain h4 element 
+PASS Template may contain h5 element 
+PASS Template may contain h6 element 
+PASS Template may contain header element 
+PASS Template may contain hgroup element 
+PASS Template may contain hr element 
+PASS Template may contain i element 
+PASS Template may contain iframe element 
+PASS Template may contain img element 
+PASS Template may contain input element 
+PASS Template may contain ins element 
+PASS Template may contain kbd element 
+PASS Template may contain keygen element 
+PASS Template may contain label element 
+PASS Template may contain legend element 
+PASS Template may contain li element 
+PASS Template may contain link element 
+PASS Template may contain map element 
+PASS Template may contain mark element 
+PASS Template may contain menu element 
+PASS Template may contain meta element 
+PASS Template may contain meter element 
+PASS Template may contain nav element 
+PASS Template may contain noscript element 
+PASS Template may contain object element 
+PASS Template may contain ol element 
+PASS Template may contain optgroup element 
+PASS Template may contain option element 
+PASS Template may contain output element 
+PASS Template may contain p element 
+PASS Template may contain param element 
+PASS Template may contain pre element 
+PASS Template may contain progress element 
+PASS Template may contain q element 
+PASS Template may contain rp element 
+PASS Template may contain rt element 
+PASS Template may contain ruby element 
+PASS Template may contain s element 
+PASS Template may contain samp element 
+PASS Template may contain script element 
+PASS Template may contain section element 
+PASS Template may contain select element 
+PASS Template may contain small element 
+PASS Template may contain source element 
+PASS Template may contain span element 
+PASS Template may contain strong element 
+PASS Template may contain style element 
+PASS Template may contain sub element 
+PASS Template may contain table element 
+PASS Template may contain tbody element 
+PASS Template may contain td element 
+PASS Template may contain textarea element 
+PASS Template may contain tfoot element 
+PASS Template may contain th element 
+PASS Template may contain thead element 
+PASS Template may contain time element 
+PASS Template may contain title element 
+PASS Template may contain tr element 
+PASS Template may contain track element 
+PASS Template may contain u element 
+PASS Template may contain ul element 
+PASS Template may contain var element 
+PASS Template may contain video element 
+PASS Template may contain wbr element 
+PASS Template may contain a element. The template element and contents are added via body.innerHTML 
+PASS Template may contain abbr element. The template element and contents are added via body.innerHTML 
+PASS Template may contain address element. The template element and contents are added via body.innerHTML 
+PASS Template may contain area element. The template element and contents are added via body.innerHTML 
+PASS Template may contain article element. The template element and contents are added via body.innerHTML 
+PASS Template may contain aside element. The template element and contents are added via body.innerHTML 
+PASS Template may contain audio element. The template element and contents are added via body.innerHTML 
+PASS Template may contain b element. The template element and contents are added via body.innerHTML 
+PASS Template may contain base element. The template element and contents are added via body.innerHTML 
+PASS Template may contain bdi element. The template element and contents are added via body.innerHTML 
+PASS Template may contain bdo element. The template element and contents are added via body.innerHTML 
+PASS Template may contain blockquote element. The template element and contents are added via body.innerHTML 
+PASS Template may contain br element. The template element and contents are added via body.innerHTML 
+PASS Template may contain button element. The template element and contents are added via body.innerHTML 
+PASS Template may contain canvas element. The template element and contents are added via body.innerHTML 
+PASS Template may contain caption element. The template element and contents are added via body.innerHTML 
+PASS Template may contain cite element. The template element and contents are added via body.innerHTML 
+PASS Template may contain code element. The template element and contents are added via body.innerHTML 
+PASS Template may contain col element. The template element and contents are added via body.innerHTML 
+PASS Template may contain colgroup element. The template element and contents are added via body.innerHTML 
+PASS Template may contain command element. The template element and contents are added via body.innerHTML 
+PASS Template may contain datalist element. The template element and contents are added via body.innerHTML 
+PASS Template may contain dd element. The template element and contents are added via body.innerHTML 
+PASS Template may contain del element. The template element and contents are added via body.innerHTML 
+PASS Template may contain details element. The template element and contents are added via body.innerHTML 
+PASS Template may contain dfn element. The template element and contents are added via body.innerHTML 
+PASS Template may contain dialog element. The template element and contents are added via body.innerHTML 
+PASS Template may contain div element. The template element and contents are added via body.innerHTML 
+PASS Template may contain dl element. The template element and contents are added via body.innerHTML 
+PASS Template may contain dt element. The template element and contents are added via body.innerHTML 
+PASS Template may contain em element. The template element and contents are added via body.innerHTML 
+PASS Template may contain embed element. The template element and contents are added via body.innerHTML 
+PASS Template may contain fieldset element. The template element and contents are added via body.innerHTML 
+PASS Template may contain figcaption element. The template element and contents are added via body.innerHTML 
+PASS Template may contain figure element. The template element and contents are added via body.innerHTML 
+PASS Template may contain footer element. The template element and contents are added via body.innerHTML 
+PASS Template may contain form element. The template element and contents are added via body.innerHTML 
+PASS Template may contain h1 element. The template element and contents are added via body.innerHTML 
+PASS Template may contain h2 element. The template element and contents are added via body.innerHTML 
+PASS Template may contain h3 element. The template element and contents are added via body.innerHTML 
+PASS Template may contain h4 element. The template element and contents are added via body.innerHTML 
+PASS Template may contain h5 element. The template element and contents are added via body.innerHTML 
+PASS Template may contain h6 element. The template element and contents are added via body.innerHTML 
+PASS Template may contain header element. The template element and contents are added via body.innerHTML 
+PASS Template may contain hgroup element. The template element and contents are added via body.innerHTML 
+PASS Template may contain hr element. The template element and contents are added via body.innerHTML 
+PASS Template may contain i element. The template element and contents are added via body.innerHTML 
+PASS Template may contain iframe element. The template element and contents are added via body.innerHTML 
+PASS Template may contain img element. The template element and contents are added via body.innerHTML 
+PASS Template may contain input element. The template element and contents are added via body.innerHTML 
+PASS Template may contain ins element. The template element and contents are added via body.innerHTML 
+PASS Template may contain kbd element. The template element and contents are added via body.innerHTML 
+PASS Template may contain keygen element. The template element and contents are added via body.innerHTML 
+PASS Template may contain label element. The template element and contents are added via body.innerHTML 
+PASS Template may contain legend element. The template element and contents are added via body.innerHTML 
+PASS Template may contain li element. The template element and contents are added via body.innerHTML 
+PASS Template may contain link element. The template element and contents are added via body.innerHTML 
+PASS Template may contain map element. The template element and contents are added via body.innerHTML 
+PASS Template may contain mark element. The template element and contents are added via body.innerHTML 
+PASS Template may contain menu element. The template element and contents are added via body.innerHTML 
+PASS Template may contain meta element. The template element and contents are added via body.innerHTML 
+PASS Template may contain meter element. The template element and contents are added via body.innerHTML 
+PASS Template may contain nav element. The template element and contents are added via body.innerHTML 
+PASS Template may contain noscript element. The template element and contents are added via body.innerHTML 
+PASS Template may contain object element. The template element and contents are added via body.innerHTML 
+PASS Template may contain ol element. The template element and contents are added via body.innerHTML 
+PASS Template may contain optgroup element. The template element and contents are added via body.innerHTML 
+PASS Template may contain option element. The template element and contents are added via body.innerHTML 
+PASS Template may contain output element. The template element and contents are added via body.innerHTML 
+PASS Template may contain p element. The template element and contents are added via body.innerHTML 
+PASS Template may contain param element. The template element and contents are added via body.innerHTML 
+PASS Template may contain pre element. The template element and contents are added via body.innerHTML 
+PASS Template may contain progress element. The template element and contents are added via body.innerHTML 
+PASS Template may contain q element. The template element and contents are added via body.innerHTML 
+PASS Template may contain rp element. The template element and contents are added via body.innerHTML 
+PASS Template may contain rt element. The template element and contents are added via body.innerHTML 
+PASS Template may contain ruby element. The template element and contents are added via body.innerHTML 
+PASS Template may contain s element. The template element and contents are added via body.innerHTML 
+PASS Template may contain samp element. The template element and contents are added via body.innerHTML 
+PASS Template may contain script element. The template element and contents are added via body.innerHTML 
+PASS Template may contain section element. The template element and contents are added via body.innerHTML 
+PASS Template may contain select element. The template element and contents are added via body.innerHTML 
+PASS Template may contain small element. The template element and contents are added via body.innerHTML 
+PASS Template may contain source element. The template element and contents are added via body.innerHTML 
+PASS Template may contain span element. The template element and contents are added via body.innerHTML 
+PASS Template may contain strong element. The template element and contents are added via body.innerHTML 
+PASS Template may contain style element. The template element and contents are added via body.innerHTML 
+PASS Template may contain sub element. The template element and contents are added via body.innerHTML 
+PASS Template may contain table element. The template element and contents are added via body.innerHTML 
+PASS Template may contain tbody element. The template element and contents are added via body.innerHTML 
+PASS Template may contain td element. The template element and contents are added via body.innerHTML 
+PASS Template may contain textarea element. The template element and contents are added via body.innerHTML 
+PASS Template may contain tfoot element. The template element and contents are added via body.innerHTML 
+PASS Template may contain th element. The template element and contents are added via body.innerHTML 
+PASS Template may contain thead element. The template element and contents are added via body.innerHTML 
+PASS Template may contain time element. The template element and contents are added via body.innerHTML 
+PASS Template may contain title element. The template element and contents are added via body.innerHTML 
+PASS Template may contain tr element. The template element and contents are added via body.innerHTML 
+PASS Template may contain track element. The template element and contents are added via body.innerHTML 
+PASS Template may contain u element. The template element and contents are added via body.innerHTML 
+PASS Template may contain ul element. The template element and contents are added via body.innerHTML 
+PASS Template may contain var element. The template element and contents are added via body.innerHTML 
+PASS Template may contain video element. The template element and contents are added via body.innerHTML 
+PASS Template may contain wbr element. The template element and contents are added via body.innerHTML 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementtemplatecontentnodedocumentexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-content-node-document-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-content-node-document-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-content-node-document-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+
+PASS Node document of the template content attribute must be template contents owner. Nested template element created by createElement 
+PASS Node document of the template content attribute must be template contents owner. Nested template element created by innerHTML 
+PASS Node document of the template content attribute must be template contents owner. Load HTML file with multiple template elements 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementtemplatecontentnodedocumenthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-content-node-document.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-content-node-document.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-content-node-document.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,60 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;title&gt;HTML Templates: Node document of the template content attribute must be template contents owner&lt;/title&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Sergey G. Grekhov&quot; href=&quot;mailto:sgrekhov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;Node document of the template content attribute must be template contents owner&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;http://www.w3.org/TR/2013/WD-html-templates-20130214/#template-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src='/w3c/html/resources/common.js'&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/resources/testharness.css&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+
+test(function() {
+    var doc = newHTMLDocument();
+    var template = doc.createElement('template');
+    var nestedTemplate = doc.createElement('template');
+    template.appendChild(nestedTemplate);
+
+    assert_equals(nestedTemplate.content.ownerDocument, template.content.ownerDocument,
+            'Wrong node document of the template content attribute');
+
+}, 'Node document of the template content attribute must be template contents owner. ' +
+    'Nested template element created by createElement');
+
+
+test(function() {
+    var doc = newHTMLDocument();
+    doc.body.innerHTML = '&lt;template&gt;&lt;template&gt;&lt;/template&gt;&lt;/template&gt;';
+    var template = doc.querySelector('template');
+    var nestedTemplate = template.content.querySelector('template');
+
+    assert_equals(nestedTemplate.content.ownerDocument, template.content.ownerDocument,
+            'Wrong node document of the template content attribute');
+
+}, 'Node document of the template content attribute must be template contents owner. ' +
+    'Nested template element created by innerHTML');
+
+testInIFrame('../resources/two-templates.html', function(context) {
+    var doc = context.iframes[0].contentDocument;
+
+    var template1 = doc.querySelector('#template1');
+    var template2 = doc.querySelector('#template2');
+
+    // when there is a browsing context, template contents owner is only accessible via template.content.ownerDocument
+    // because template contents owner is bounded to document
+    // verify that multiple templates share the same instance of template contents owner
+
+    assert_equals(template1.content.ownerDocument, template2.content.ownerDocument,
+            'Wrong node document of the template content attribute');
+}, 'Node document of the template content attribute must be template contents owner. ' +
+    'Load HTML file with multiple template elements');
+
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementtemplatecontenthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-content.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-content.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-content.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,78 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;title&gt;HTML Templates: HTML elements in template content&lt;/title&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Sergey G. Grekhov&quot; href=&quot;mailto:sgrekhov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;a.semenov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;Template may contain any element, except the html element, the head element, the body element, or the frameset element&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;http://www.w3.org/TR/2013/WD-html-templates-20130214/#template-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src='/w3c/html/resources/common.js'&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/resources/testharness.css&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+
+var parameters = [];
+
+HTML5_ELEMENTS.forEach(function(value) {
+    if (value !== 'body' &amp;&amp; value !== 'html' &amp;&amp; value !== 'head' &amp;&amp; value !== 'frameset') {
+
+        var doc = newHTMLDocument();
+        var template = doc.createElement('template');
+        var element = doc.createElement(value);
+        template.content.appendChild(element);
+        var valueToTest = template.content.querySelector(value);
+
+        doc.body.appendChild(template);
+
+        parameters.push([
+                'Template may contain ' + value + ' element',
+                valueToTest,
+                null
+            ]);
+    }
+});
+
+generate_tests(assert_not_equals, parameters,
+        'Template may contain any element, except the html element, '
+        + 'the head element, the body element, or the frameset element');
+
+
+
+
+var parameters = [];
+
+HTML5_ELEMENTS.forEach(function(value) {
+   if (value !== 'body' &amp;&amp; value !== 'html' &amp;&amp; value !== 'head' &amp;&amp; value !== 'frameset') {
+
+      var doc = newHTMLDocument();
+
+      if (isVoidElement(value)) {
+         doc.body.innerHTML = '&lt;template&gt;&lt;' + value + '/&gt;&lt;/template&gt;';
+      } else {
+         doc.body.innerHTML = '&lt;template&gt;&lt;' + value + '&gt;&lt;/' + value + '&gt;&lt;/template&gt;';
+      }
+
+      var template = doc.querySelector('template');
+      var element = template.content.querySelector(value);
+
+      parameters.push([
+              'Template may contain ' + value + ' element. '
+              +'The template element and contents are added via body.innerHTML',
+              element,
+              null
+          ]);
+      }
+});
+
+generate_tests(assert_not_equals, parameters,
+        'Template may contain any element, except the html element, '
+        + 'the head element, the body element, or the frameset element. '
+        +'The template element and contents are added via body.innerHTML');
+
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementtemplatedescendantbodyexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-body-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-body-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-body-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS Template element as a descendant of the body element. Test loading from a file 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementtemplatedescendantbodyhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-body.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-body.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-body.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,27 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;title&gt;HTML Templates: Template element as a descendant of the body element.&lt;/title&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;Template element can be a descendant of the body element&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;http://www.w3.org/TR/2013/WD-html-templates-20130214/#template-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src='/w3c/html/resources/common.js'&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/resources/testharness.css&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+
+testInIFrame('../resources/template-contents.html', function(ctx) {
+    var doc = ctx.iframes[0].contentDocument;
+
+    assert_not_equals(doc.body.querySelector('template'), null,
+        'Template element should be a descendant of the body element');
+
+}, 'Template element as a descendant of the body element. Test loading from a file');
+
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementtemplatedescendantframesetexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-frameset-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-frameset-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-frameset-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+
+PASS Template element as a descendant of the frameset element. Test loading from a file 
+PASS Template element as a descendant of the frameset element. Test template element is assigned to frameset's innerHTML) 
+PASS Template element as a descendant of the frameset element. Test template element appended to frameset by appendChild() 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementtemplatedescendantframesethtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-frameset.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-frameset.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-frameset.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,63 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;title&gt;HTML Templates: Template element as a descendant of the frameset element.&lt;/title&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;Template element can be a descendant of the frameset element&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;http://www.w3.org/TR/2013/WD-html-templates-20130214/#template-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src='/w3c/html/resources/common.js'&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/resources/testharness.css&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+
+testInIFrame('../resources/template-descendant-frameset.html', function(context) {
+    var doc = context.iframes[0].contentDocument;
+
+    var frameset = doc.querySelector('frameset');
+
+    assert_not_equals(frameset.querySelector('template'), null,
+        'Template element should be a descendant of the frameset element');
+
+}, 'Template element as a descendant of the frameset element. Test loading from a file');
+
+
+testInIFrame('../resources/template-descendant-frameset.html', function(context) {
+    var doc = context.iframes[0].contentDocument;
+
+    var frameset = doc.querySelector('frameset');
+
+    frameset.innerHTML = '';
+    assert_equals(doc.querySelector('template'), null,
+            'Initial conditions are not satisfied');
+
+    frameset.innerHTML = '&lt;template&gt;some text&lt;/template&gt;';
+
+    assert_not_equals(frameset.querySelector('template'), null,
+        'Template element should be a descendant of the frameset element');
+
+}, 'Template element as a descendant of the frameset element. '
+    + 'Test template element is assigned to frameset\'s innerHTML)');
+
+
+testInIFrame('../resources/template-descendant-frameset.html', function(context) {
+    var doc = context.iframes[0].contentDocument;
+
+    var frameset = doc.querySelector('frameset');
+
+    var template = doc.createElement('template');
+    frameset.appendChild(template);
+
+    assert_equals(frameset.querySelectorAll('template').length, 2,
+        'Template element should be a descendant of the frameset element');
+
+}, 'Template element as a descendant of the frameset element. '
+    + 'Test template element appended to frameset by appendChild()');
+
+
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementtemplatedescendantheadexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-head-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-head-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-head-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS Template element as a descendant of the head element. Test loading from a file 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementtemplatedescendantheadhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-head.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-head.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-head.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,27 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;title&gt;HTML Templates: Template element as a descendant of the head element.&lt;/title&gt;
+&lt;meta name=&quot;author&quot; title=&quot;Aleksei Yu. Semenov&quot; href=&quot;mailto:a.semenov@unipro.ru&quot;&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;Template element can be a descendant of the head element&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;http://www.w3.org/TR/2013/WD-html-templates-20130214/#template-element&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src='/w3c/html/resources/common.js'&gt;&lt;/script&gt;
+&lt;link rel=&quot;stylesheet&quot; href=&quot;/resources/testharness.css&quot;&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script type=&quot;text/javascript&quot;&gt;
+
+testInIFrame('../resources/template-descendant-head.html', function(context) {
+    var doc = context.iframes[0].contentDocument;
+
+    assert_not_equals(doc.head.querySelector('template'), null,
+        'Template element should be a descendant of the head element');
+
+}, 'Template element as a descendant of the head element. Test loading from a file');
+
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsscripting1thetemplateelementtemplateelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,25 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/content-attribute.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/node-document-changes.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-as-a-descendant.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-content-node-document.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-content.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-body.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-frameset.html
+/LayoutTests/http/tests/w3c/html/semantics/scripting-1/the-template-element/template-element/template-descendant-head.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticssectionsheadingsandsectionscontainsjson"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/sections/headings-and-sections/contains.json (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/sections/headings-and-sections/contains.json                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/sections/headings-and-sections/contains.json        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+[
+    {
+        &quot;id&quot;: &quot;outlines&quot;,
+        &quot;original_id&quot;: &quot;outlines&quot;
+    }
+]
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticssectionsheadingsandsectionsw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/sections/headings-and-sections/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/sections/headings-and-sections/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/sections/headings-and-sections/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/sections/headings-and-sections/contains.json
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticssectionstheh1h2h3h4h5andh6elementsoriginalidjson"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/sections/the-h1-h2-h3-h4-h5-and-h6-elements/original-id.json (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/sections/the-h1-h2-h3-h4-h5-and-h6-elements/original-id.json                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/sections/the-h1-h2-h3-h4-h5-and-h6-elements/original-id.json        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1 @@
</span><ins>+{&quot;original_id&quot;:&quot;the-h1,-h2,-h3,-h4,-h5,-and-h6-elements&quot;}
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticssectionstheh1h2h3h4h5andh6elementsw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/sections/the-h1-h2-h3-h4-h5-and-h6-elements/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/sections/the-h1-h2-h3-h4-h5-and-h6-elements/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/sections/the-h1-h2-h3-h4-h5-and-h6-elements/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/sections/the-h1-h2-h3-h4-h5-and-h6-elements/original-id.json
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassescheckedexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/checked-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/checked-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/checked-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+     
+
+
+
+FAIL ':checked' matches checked &lt;input&gt;/&lt;menuitem&gt; in checkbox and radio button states, selected &lt;option&gt;s assert_array_equals: lengths differ, expected 5 got 3
+FAIL ':checked' should no longer match &lt;input&gt;s whose type checkbox/radio has been removed assert_array_equals: lengths differ, expected 3 got 1
+FAIL ':checked' matches clicked checkbox and radio buttons assert_array_equals: lengths differ, expected 5 got 3
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassescheckedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/checked.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/checked.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/checked.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,43 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Selector: pseudo-classes (:checked)&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot; id=link1&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#pseudo-classes&quot; id=link2&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;utils.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;select id=select1&gt;
+ &lt;optgroup label=&quot;options&quot; id=optgroup1&gt;
+  &lt;option value=&quot;option1&quot; id=option1 selected&gt;option1
+  &lt;option value=&quot;option2&quot; id=option2&gt;option2
+  &lt;option value=&quot;option2&quot; id=option3 checked&gt;option3
+&lt;/select&gt;
+&lt;input type=checkbox id=checkbox1 checked&gt;
+&lt;input type=checkbox id=checkbox2&gt;
+&lt;input type=checkbox id=checkbox3 selected&gt;
+&lt;input type=radio id=radio1 checked&gt;
+&lt;input type=radio id=radio2&gt;
+&lt;form&gt;
+  &lt;p&gt;&lt;input type=submit contextmenu=formmenu id=&quot;submitbutton&quot;&gt;&lt;/p&gt;
+  &lt;menu type=popup id=formmenu&gt;
+    &lt;menuitem type=checkbox checked default id=menuitem1&gt;
+    &lt;menuitem type=checkbox default id=menuitem2&gt;
+    &lt;menuitem type=checkbox id=menuitem3&gt;
+    &lt;menuitem type=radio checked id=menuitem4&gt;
+    &lt;menuitem type=radio id=menuitem5&gt;
+  &lt;/menu&gt;
+&lt;/form&gt;
+
+&lt;script&gt;
+  testSelector(&quot;:checked&quot;, [&quot;option1&quot;, &quot;checkbox1&quot;, &quot;radio1&quot;, &quot;menuitem1&quot;, &quot;menuitem4&quot;], &quot;':checked' matches checked &lt;input&gt;/&lt;menuitem&gt; in checkbox and radio button states, selected &lt;option&gt;s&quot;);
+
+  document.getElementById(&quot;checkbox1&quot;).removeAttribute(&quot;type&quot;);  // change type of input
+  document.getElementById(&quot;radio1&quot;).removeAttribute(&quot;type&quot;);  // change type of input
+  testSelector(&quot;:checked&quot;, [&quot;option1&quot;, &quot;menuitem1&quot;, &quot;menuitem4&quot;], &quot;':checked' should no longer match &lt;input&gt;s whose type checkbox/radio has been removed&quot;);
+
+  document.getElementById(&quot;option2&quot;).selected = &quot;selected&quot;;  // select option2
+  document.getElementById(&quot;checkbox2&quot;).click();  // check chekbox2
+  document.getElementById(&quot;radio2&quot;).click();  // check radio2
+  testSelector(&quot;:checked&quot;, [&quot;option2&quot;, &quot;checkbox2&quot;, &quot;radio2&quot;, &quot;menuitem1&quot;, &quot;menuitem4&quot;], &quot;':checked' matches clicked checkbox and radio buttons&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesdefaultexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/default-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/default-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/default-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,15 @@
</span><ins>+button1  button2
+button3  button4
+button5
+
+
+  
+  
+
+     
+button6  button7
+button8  button9
+
+FAIL ':default' matches &lt;button&gt;s that are their form's default button, &lt;input&gt;s of type submit/image that are their form's default button, checked &lt;input&gt;s and selected &lt;option&gt;s assert_array_equals: lengths differ, expected 9 got 7
+FAIL ':default' matches dynamically changed form's default buttons assert_array_equals: lengths differ, expected 9 got 7
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesdefaulthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/default.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/default.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/default.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,61 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Selector: pseudo-classes (:default)&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot; id=link1&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#pseudo-classes&quot; id=link2&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;utils.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;form&gt;
+  &lt;button id=button1 type=button&gt;button1&lt;/button&gt;
+  &lt;button id=button2 type=submit&gt;button2&lt;/button&gt;
+&lt;/form&gt;
+&lt;form&gt;
+  &lt;button id=button3 type=reset&gt;button3&lt;/button&gt;
+  &lt;button id=button4&gt;button4&lt;/button&gt;
+&lt;/form&gt;
+&lt;button id=button5 type=submit&gt;button5&lt;/button&gt;
+&lt;form id=form1&gt;
+  &lt;input type=text id=input1&gt;
+&lt;/form&gt;
+&lt;input type=text id=input2 form=form1&gt;
+&lt;form&gt;
+  &lt;input type=submit id=input3&gt;
+  &lt;input type=submit id=input4&gt;
+&lt;/form&gt;
+&lt;form&gt;
+  &lt;input type=image id=input5&gt;
+  &lt;input type=image id=input6&gt;
+&lt;/form&gt;
+&lt;form&gt;
+  &lt;input type=submit id=input7&gt;
+&lt;/form&gt;
+&lt;input type=checkbox id=checkbox1 checked&gt;
+&lt;input type=checkbox id=checkbox2&gt;
+&lt;input type=checkbox id=checkbox3 default&gt;
+&lt;select id=select1&gt;
+ &lt;optgroup label=&quot;options&quot; id=optgroup1&gt;
+  &lt;option value=&quot;option1&quot; id=option1 selected&gt;option1
+  &lt;option value=&quot;option1&quot; id=option1&gt;option1
+&lt;/select&gt;
+&lt;dialog id=&quot;dialog&quot;&gt;
+  &lt;input type=submit id=input8&gt;
+&lt;/dialog&gt;
+&lt;form&gt;
+  &lt;button id=button6 type='invalid'&gt;button6&lt;/button&gt;
+  &lt;button id=button7&gt;button7&lt;/button&gt;
+&lt;/form&gt;
+&lt;form&gt;
+  &lt;button id=button8&gt;button8&lt;/button&gt;
+  &lt;button id=button9&gt;button9&lt;/button&gt;
+&lt;/form&gt;
+
+
+&lt;script&gt;
+  testSelector(&quot;:default&quot;, [&quot;button2&quot;, &quot;button4&quot;, &quot;input3&quot;, &quot;input5&quot;, &quot;input7&quot;, &quot;checkbox1&quot;, &quot;option1&quot;, &quot;button6&quot;, &quot;button8&quot;], &quot;':default' matches &lt;button&gt;s that are their form's default button, &lt;input&gt;s of type submit/image that are their form's default button, checked &lt;input&gt;s and selected &lt;option&gt;s&quot;);
+
+  document.getElementById(&quot;button1&quot;).type = &quot;submit&quot;; // change the form's default button
+  testSelector(&quot;:default&quot;, [&quot;button1&quot;, &quot;button4&quot;, &quot;input3&quot;, &quot;input5&quot;, &quot;input7&quot;, &quot;checkbox1&quot;, &quot;option1&quot;, &quot;button6&quot;, &quot;button8&quot;], &quot;':default' matches dynamically changed form's default buttons&quot;);
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesdirexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/dir-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/dir-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/dir-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+WERBEH HEBREW HEBREW WERBEH HEBREW WERBEH WERBEH HEBREW ‮WERBEH‬ HEBREW إيان עברית
+
+FAIL ':dir(rtl)' matches all elements whose directionality is 'rtl'. assert_array_equals: lengths differ, expected 7 got 0
+FAIL ':dir(ltr)' matches all elements whose directionality is 'ltr'. assert_array_equals: lengths differ, expected 18 got 0
+FAIL ':dir(ltr)' doesn't match elements not in the document. assert_array_equals: lengths differ, expected 14 got 0
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesdirhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/dir.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/dir.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/dir.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,36 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8 id=meta&gt;
+&lt;title id=title&gt;Selector: pseudo-classes (:dir(ltr), :dir(rtl))&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot; id=link1&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#pseudo-classes&quot; id=link2&gt;
+&lt;script src=&quot;/resources/testharness.js&quot; id=script1&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot; id=script2&gt;&lt;/script&gt;
+&lt;script src=&quot;utils.js&quot; id=script3&gt;&lt;/script&gt;
+&lt;style id=style&gt;
+  #span1 {direction: rtl;}
+  #span5, #span6 {display: none;}
+&lt;/style&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;bdo dir=&quot;rtl&quot; id=bdo1&gt;WERBEH&lt;/bdo&gt;
+&lt;bdo dir=&quot;ltr&quot; id=bdo2&gt;HEBREW&lt;/bdo&gt;
+&lt;bdi id=bdi1&gt;HEBREW&lt;/bdi&gt;
+&lt;bdi dir=&quot;rtl&quot; id=bdi2&gt;WERBEH&lt;/bdi&gt;
+&lt;bdi dir=&quot;ltr&quot; id=bdi3&gt;HEBREW&lt;/bdi&gt;
+&lt;span id=span1&gt;WERBEH&lt;/span&gt;
+&lt;span dir=&quot;rtl&quot; id=span2&gt;WERBEH&lt;/span&gt;
+&lt;span dir=&quot;ltr&quot; id=span3&gt;HEBREW&lt;/span&gt;
+&amp;#x202E;&lt;span id=span4&gt;WERBEH&lt;/span&gt;&amp;#x202C;
+&lt;span dir=&quot;rtl&quot; id=span5&gt;WERBEH&lt;/span&gt;
+&lt;span dir=&quot;ltr&quot; id=span6&gt;HEBREW&lt;/span&gt;
+&lt;bdo dir=&quot;auto&quot; id=bdo3&gt;HEBREW&lt;/bdo&gt;
+&lt;bdo dir=&quot;auto&quot; id=bdo4&gt;إيان&lt;/bdo&gt;
+&lt;bdo dir=&quot;ltr&quot; id=bdo5&gt;עברית&lt;/bdo&gt;
+
+&lt;script&gt;
+  testSelector(&quot;:dir(rtl)&quot;, [&quot;bdo1&quot;, &quot;bdi2&quot;, &quot;span1&quot;, &quot;span2&quot;, &quot;span4&quot;, &quot;span5&quot;, &quot;bdo4&quot;], &quot;':dir(rtl)' matches all elements whose directionality is 'rtl'.&quot;);
+  testSelector(&quot;:dir(ltr)&quot;, [&quot;html&quot;, &quot;head&quot;, &quot;body&quot;, &quot;meta&quot;, &quot;title&quot;, &quot;link1&quot;, &quot;link2&quot;, &quot;script1&quot;, &quot;script2&quot;, &quot;script3&quot;, &quot;stlyle&quot;, &quot;log&quot;, &quot;bdo2&quot;, &quot;bdi3&quot;, &quot;span3&quot;, &quot;span6&quot;, &quot;bdo3&quot;, &quot;bdo5&quot;], &quot;':dir(ltr)' matches all elements whose directionality is 'ltr'.&quot;);
+
+  var bdo = document.createElement(&quot;bdo&quot;);
+  bdo.setAttribute(&quot;dir&quot;, &quot;ltr&quot;);
+  testSelector(&quot;:dir(ltr)&quot;, [&quot;meta&quot;, &quot;title&quot;, &quot;link1&quot;, &quot;link2&quot;, &quot;script1&quot;, &quot;script2&quot;, &quot;script3&quot;, &quot;stlyle&quot;, &quot;log&quot;, &quot;bdo2&quot;, &quot;bdi3&quot;, &quot;span3&quot;, &quot;span6&quot;, &quot;bdo3&quot;], &quot;':dir(ltr)' doesn't match elements not in the document.&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesdir01expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/dir01-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/dir01-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/dir01-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+This text is left to right
+this is right to left
+This text is left to rightthis is left to right
+
+FAIL direction doesn't affect :dir() assert_array_equals: lengths differ, expected 16 got 0
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesdir01html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/dir01.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/dir01.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/dir01.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=iso-8859-8 id=meta&gt;
+&lt;title id=title&gt;Selector: pseudo-classes (:dir(ltr), :dir(rtl)) in iso-8859-8 documents&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot; id=link1&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#pseudo-classes&quot; id=link2&gt;
+&lt;script src=&quot;/resources/testharness.js&quot; id=script1&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot; id=script2&gt;&lt;/script&gt;
+&lt;script src=&quot;utils.js&quot; id=script3&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;div&gt;This text is left to right&lt;div id=div1 style=&quot;direction:rtl&quot;&gt;this is right to left&lt;/div&gt;&lt;/div&gt;
+&lt;div&gt;This text is left to right&lt;span id=div2 style=&quot;direction:rtl&quot;&gt;this is left to right&lt;/span&gt;&lt;/div&gt;
+
+&lt;script&gt;
+  var ltr = new Array(),
+      all = document.querySelectorAll('*');
+  for(var i = all.length; i--; ltr.unshift(all[i]));
+  testSelector(&quot;:dir(ltr)&quot;, ltr, &quot;direction doesn't affect :dir()&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesdisabledexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/disabled-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/disabled-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/disabled-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,13 @@
</span><ins>+button1 button2         
+Name on card: 
+
+Card number: 
+
+     
+
+FAIL ':disabled' should match only disabled elements assert_array_equals: lengths differ, expected 9 got 10
+FAIL ':disabled' should not match elements whose disabled attribute has been removed assert_array_equals: lengths differ, expected 8 got 9
+FAIL ':disabled' should also match elements whose disabled attribute has been set assert_array_equals: lengths differ, expected 9 got 10
+FAIL ':disabled' should also match disabled elements whose type has changed assert_array_equals: lengths differ, expected 9 got 10
+FAIL ':disabled' should not match elements not in the document assert_array_equals: lengths differ, expected 9 got 10
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesdisabledhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/disabled.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/disabled.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/disabled.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,57 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Selector: pseudo-classes (:disabled)&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot; id=link1&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#pseudo-classes&quot; id=link2&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;utils.js&quot;&gt;&lt;/script&gt;
+&lt;style&gt;
+  #input4 {display:none;}
+&lt;/style&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;button id=button1 type=submit&gt;button1&lt;/button&gt;
+&lt;button id=button2 disabled&gt;button2&lt;/button&gt;
+&lt;input id=input1&gt;
+&lt;input id=input2 disabled&gt;
+&lt;input id=input3 readonly&gt;
+&lt;input id=input4&gt;
+&lt;select id=select1&gt;
+ &lt;optgroup label=&quot;options&quot; id=optgroup1&gt;
+  &lt;option value=&quot;option1&quot; id=option1 selected&gt;option1
+&lt;/select&gt;
+&lt;select disabled id=select2&gt;
+ &lt;optgroup label=&quot;options&quot; disabled id=optgroup2&gt;
+  &lt;option value=&quot;option2&quot; disabled id=option2&gt;option2
+&lt;/select&gt;
+&lt;textarea id=textarea1&gt;textarea1&lt;/textarea&gt;
+&lt;textarea disabled id=textarea2&gt;textarea2&lt;/textarea&gt;
+&lt;fieldset id=fieldset1&gt;&lt;/fieldset&gt;
+&lt;fieldset disabled id=fieldset2&gt;
+  &lt;legend&gt;&lt;input type=checkbox id=club&gt;&lt;/legend&gt;
+  &lt;p&gt;&lt;label&gt;Name on card: &lt;input id=clubname required&gt;&lt;/label&gt;&lt;/p&gt;
+  &lt;p&gt;&lt;label&gt;Card number: &lt;input id=clubnum required pattern=&quot;[-0-9]+&quot;&gt;&lt;/label&gt;&lt;/p&gt;
+&lt;/fieldset&gt;
+&lt;label disabled&gt;&lt;/label&gt;
+&lt;object disabled&gt;&lt;/object&gt;
+&lt;output disabled&gt;&lt;/output&gt;
+&lt;img disabled/&gt;
+&lt;meter disabled&gt;&lt;/meter&gt;
+&lt;progress disabled&gt;&lt;/progress&gt;
+
+&lt;script&gt;
+  testSelector(&quot;:disabled&quot;, [&quot;button2&quot;, &quot;input2&quot;, &quot;select2&quot;, &quot;optgroup2&quot;, &quot;option2&quot;, &quot;textarea2&quot;, &quot;fieldset2&quot;, &quot;clubname&quot;, &quot;clubnum&quot;], &quot;':disabled' should match only disabled elements&quot;);
+
+  document.getElementById(&quot;button2&quot;).removeAttribute(&quot;disabled&quot;);
+  testSelector(&quot;:disabled&quot;, [&quot;input2&quot;, &quot;select2&quot;, &quot;optgroup2&quot;, &quot;option2&quot;, &quot;textarea2&quot;, &quot;fieldset2&quot;, &quot;clubname&quot;, &quot;clubnum&quot;], &quot;':disabled' should not match elements whose disabled attribute has been removed&quot;);
+
+  document.getElementById(&quot;button1&quot;).setAttribute(&quot;disabled&quot;, &quot;disabled&quot;);
+  testSelector(&quot;:disabled&quot;, [&quot;button1&quot;, &quot;input2&quot;, &quot;select2&quot;, &quot;optgroup2&quot;, &quot;option2&quot;, &quot;textarea2&quot;, &quot;fieldset2&quot;, &quot;clubname&quot;, &quot;clubnum&quot;], &quot;':disabled' should also match elements whose disabled attribute has been set&quot;);
+
+  document.getElementById(&quot;input2&quot;).setAttribute(&quot;type&quot;, &quot;submit&quot;); // change input type to submit
+  testSelector(&quot;:disabled&quot;, [&quot;button1&quot;, &quot;input2&quot;, &quot;select2&quot;, &quot;optgroup2&quot;, &quot;option2&quot;, &quot;textarea2&quot;, &quot;fieldset2&quot;, &quot;clubname&quot;, &quot;clubnum&quot;], &quot;':disabled' should also match disabled elements whose type has changed&quot;);
+
+  var input = document.createElement(&quot;input&quot;);
+  input.setAttribute(&quot;disabled&quot;, &quot;disabled&quot;);
+  testSelector(&quot;:disabled&quot;, [&quot;button1&quot;, &quot;input2&quot;, &quot;select2&quot;, &quot;optgroup2&quot;, &quot;option2&quot;, &quot;textarea2&quot;, &quot;fieldset2&quot;, &quot;clubname&quot;, &quot;clubnum&quot;], &quot;':disabled' should not match elements not in the document&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesenabledexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/enabled-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/enabled-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/enabled-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+ button1 button2      
+
+

+
+FAIL ':enabled' elements that are not disabled assert_array_equals: lengths differ, expected 9 got 8
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesenabledhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/enabled.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/enabled.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/enabled.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,42 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Selector: pseudo-classes (:enabled)&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot; id=link1&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#pseudo-classes&quot; id=link2&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;utils.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;a id=link3&gt;&lt;/a&gt;
+&lt;area id=link4&gt;&lt;/area&gt;
+&lt;link id=link5&gt;&lt;/link&gt;
+&lt;a href=&quot;http://www.w3.org&quot; id=link6&gt;&lt;/a&gt;
+&lt;area href=&quot;http://www.w3.org&quot; id=link7&gt;&lt;/area&gt;
+&lt;link href=&quot;http://www.w3.org&quot; id=link8&gt;&lt;/link&gt;
+&lt;button id=button1&gt;button1&lt;/button&gt;
+&lt;button id=button2 disabled&gt;button2&lt;/button&gt;
+&lt;input id=input1&gt;
+&lt;input id=input2 disabled&gt;
+&lt;select id=select1&gt;
+ &lt;optgroup label=&quot;options&quot; id=optgroup1&gt;
+  &lt;option value=&quot;option1&quot; id=option1 selected&gt;option1
+&lt;/select&gt;
+&lt;select disabled id=select2&gt;
+ &lt;optgroup label=&quot;options&quot; disabled id=optgroup2&gt;
+  &lt;option value=&quot;option2&quot; disabled id=option2&gt;option2
+&lt;/select&gt;
+&lt;textarea id=textarea1&gt;textarea1&lt;/textarea&gt;
+&lt;textarea disabled id=textarea2&gt;textarea2&lt;/textarea&gt;
+&lt;form&gt;
+ &lt;p&gt;&lt;input type=submit contextmenu=formmenu id=submitbutton&gt;&lt;/p&gt;
+ &lt;menu type=popup id=formmenu&gt;
+  &lt;menuitem command=&quot;submitbutton&quot; default id=menuitem1&gt;
+  &lt;menuitem command=&quot;resetbutton&quot; disabled id=menuitem2&gt;
+ &lt;/menu&gt;
+&lt;/form&gt;
+&lt;fieldset id=fieldset1&gt;&lt;/fieldset&gt;
+&lt;fieldset disabled id=fieldset2&gt;&lt;/fieldset&gt;
+
+&lt;script&gt;
+  testSelector(&quot;:enabled&quot;, [&quot;button1&quot;, &quot;input1&quot;, &quot;select1&quot;, &quot;optgroup1&quot;, &quot;option1&quot;, &quot;textarea1&quot;, &quot;submitbutton&quot;, &quot;menuitem1&quot;, &quot;fieldset1&quot;], &quot;':enabled' elements that are not disabled&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesfocusexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/focus-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/focus-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/focus-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,12 @@
</span><ins>+button1            
+hello
+content
+
+
+FAIL input3 has the attribute autofocus assert_array_equals: lengths differ, expected 1 got 0
+PASS input1 has the focus 
+PASS tabindex attribute makes the element focusable 
+PASS editable elements are focusable 
+PASS ':focus' matches focussed body with tabindex 
+PASS ':focus' doesn't match focused elements in iframe 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesfocushtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/focus.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/focus.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/focus.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,42 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Selector: pseudo-classes (:focus)&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot; id=link1&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#pseudo-classes&quot; id=link2&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;utils.js&quot;&gt;&lt;/script&gt;
+&lt;body id=body tabindex=0&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;button id=button1 type=submit&gt;button1&lt;/button&gt;
+  &lt;input id=input1&gt;
+  &lt;input id=input2 disabled&gt;
+  &lt;input id=input3 autofocus&gt;
+  &lt;textarea id=textarea1&gt;textarea1&lt;/textarea&gt;
+  &lt;input type=checkbox id=checkbox1 checked&gt;
+  &lt;input type=radio id=radio1 checked&gt;
+  &lt;div tabindex=0 id=div1&gt;hello&lt;/div&gt;
+  &lt;div contenteditable id=div2&gt;content&lt;/div&gt;
+  &lt;iframe src=&quot;resources/focus-iframe.html&quot; id=iframe onload=&quot;load()&quot;&gt;&lt;/iframe&gt;
+
+  &lt;script&gt;
+    testSelector(&quot;:focus&quot;, [&quot;input3&quot;], &quot;input3 has the attribute autofocus&quot;);
+
+    document.getElementById(&quot;input1&quot;).focus(); // set the focus on input1
+    testSelector(&quot;:focus&quot;, [&quot;input1&quot;], &quot;input1 has the focus&quot;);
+
+    document.getElementById(&quot;div1&quot;).focus();
+    testSelector(&quot;:focus&quot;, [&quot;div1&quot;], &quot;tabindex attribute makes the element focusable&quot;);
+
+    document.getElementById(&quot;div2&quot;).focus();
+    testSelector(&quot;:focus&quot;, [&quot;div2&quot;], &quot;editable elements are focusable&quot;);
+
+    function load() {
+      document.getElementById(&quot;iframe&quot;).contentDocument.getElementById(&quot;inputiframe&quot;).focus();
+      testSelector(&quot;:focus&quot;, [], &quot;':focus' doesn't match focused elements in iframe&quot;);
+    }
+
+    document.body.focus();
+    testSelector(&quot;:focus&quot;, [&quot;body&quot;], &quot;':focus' matches focussed body with tabindex&quot;);
+  &lt;/script&gt;
+&lt;/body&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesindeterminateexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/indeterminate-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/indeterminate-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/indeterminate-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+        
+
+FAIL ':progress' matches &lt;input&gt;s radio buttons whose radio button group contains no checked input and &lt;progress&gt; elements without value attribute assert_array_equals: lengths differ, expected 5 got 1
+FAIL dynamically check a radio input in a radio button group assert_array_equals: lengths differ, expected 3 got 1
+FAIL click on radio4 which is in the indeterminate state assert_array_equals: lengths differ, expected 2 got 1
+PASS adding a value to progress1 should put it in a determinate state 
+PASS removing progress2's value should put it in an indeterminate state 
+PASS ':progress' also matches &lt;input&gt; checkbox whose indeterminate IDL is set to true 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesindeterminatehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/indeterminate.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/indeterminate.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/indeterminate.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,37 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Selector: pseudo-classes (:indeterminate)&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot; id=link1&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#pseudo-classes&quot; id=link2&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;utils.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;input type=checkbox id=checkbox1&gt;
+&lt;input type=checkbox id=checkbox2&gt;
+&lt;input type=radio id=radio1 checked&gt;
+&lt;input type=radio name=radiogroup id=radio2&gt;
+&lt;input type=radio name=radiogroup id=radio3&gt;
+&lt;input type=radio name=group2 id=radio4&gt;
+&lt;input type=radio name=group2 id=radio5&gt;
+&lt;progress id=&quot;progress1&quot;&gt;&lt;/progress&gt;
+&lt;progress id=&quot;progress2&quot; value=10&gt;&lt;/progress&gt;
+
+&lt;script&gt;
+  testSelector(&quot;:indeterminate&quot;, [&quot;radio2&quot;, &quot;radio3&quot;, &quot;radio4&quot;, &quot;radio5&quot;, &quot;progress1&quot;], &quot;':progress' matches &lt;input&gt;s radio buttons whose radio button group contains no checked input and &lt;progress&gt; elements without value attribute&quot;);
+
+  document.getElementById(&quot;radio2&quot;).setAttribute(&quot;checked&quot;, &quot;checked&quot;);
+  testSelector(&quot;:indeterminate&quot;, [&quot;radio4&quot;, &quot;radio5&quot;, &quot;progress1&quot;], &quot;dynamically check a radio input in a radio button group&quot;);
+
+  document.getElementById(&quot;radio4&quot;).click();
+  testSelector(&quot;:indeterminate&quot;, [&quot;checkbox1&quot;, &quot;progress2&quot;], &quot;click on radio4 which is in the indeterminate state&quot;);
+
+  document.getElementById(&quot;progress1&quot;).setAttribute(&quot;value&quot;, &quot;20&quot;);
+  testSelector(&quot;:indeterminate&quot;, [], &quot;adding a value to progress1 should put it in a determinate state&quot;);
+
+  document.getElementById(&quot;progress2&quot;).removeAttribute(&quot;value&quot;);
+  testSelector(&quot;:indeterminate&quot;, [&quot;progress2&quot;], &quot;removing progress2's value should put it in an indeterminate state&quot;);
+
+  document.getElementById(&quot;checkbox1&quot;).indeterminate = true; // set checkbox1 in the indeterminate state
+  testSelector(&quot;:indeterminate&quot;, [&quot;checkbox1&quot;, &quot;progress2&quot;], &quot;':progress' also matches &lt;input&gt; checkbox whose indeterminate IDL is set to true&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesinrangeoutofrangeexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/inrange-outofrange-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/inrange-outofrange-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/inrange-outofrange-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+   
+
+FAIL ':in-range' matches all elements that are candidates for constraint validation, have range limitations, and that are neither suffering from an underflow nor suffering from an overflow assert_array_equals: lengths differ, expected 1 got 2
+PASS ':out-of-range' matches all elements that are candidates for constraint validation, have range limitations, and that are either suffering from an underflow or suffering from an overflow 
+FAIL ':in-range' update number1's value &lt; min assert_array_equals: lengths differ, expected 0 got 1
+PASS ':out-of-range' update number1's value &lt; min 
+FAIL ':in-range' update number3's min &lt; value assert_array_equals: lengths differ, expected 1 got 2
+PASS ':out-of-range' update number3's min &lt; value 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesinrangeoutofrangehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/inrange-outofrange.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/inrange-outofrange.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/inrange-outofrange.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,27 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Selector: pseudo-classes (:in-range, :out-of-range)&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot; id=link1&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#pseudo-classes&quot; id=link2&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;utils.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;input type=number value=0 min=0 max=10 id=number1&gt;
+&lt;input type=number value=0 min=0 max=10 id=number2 disabled&gt;
+&lt;input type=number value=0 min=1 max=10 id=number3&gt;
+&lt;input type=number value=11 min=0 max=10 id=number4&gt;
+
+&lt;script&gt;
+  testSelector(&quot;:in-range&quot;, [&quot;number1&quot;], &quot;':in-range' matches all elements that are candidates for constraint validation, have range limitations, and that are neither suffering from an underflow nor suffering from an overflow&quot;);
+
+  testSelector(&quot;:out-of-range&quot;, [&quot;number3&quot;, &quot;number4&quot;], &quot;':out-of-range' matches all elements that are candidates for constraint validation, have range limitations, and that are either suffering from an underflow or suffering from an overflow&quot;);
+
+  document.getElementById(&quot;number1&quot;).value = -10;
+  testSelector(&quot;:in-range&quot;, [], &quot;':in-range' update number1's value &lt; min&quot;);
+  testSelector(&quot;:out-of-range&quot;, [&quot;number1&quot;, &quot;number3&quot;, &quot;number4&quot;], &quot;':out-of-range' update number1's value &lt; min&quot;);
+
+  document.getElementById(&quot;number3&quot;).min = 0;
+  testSelector(&quot;:in-range&quot;, [&quot;number3&quot;], &quot;':in-range' update number3's min &lt; value&quot;);
+  testSelector(&quot;:out-of-range&quot;, [&quot;number1&quot;, &quot;number4&quot;], &quot;':out-of-range' update number3's min &lt; value&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclasseslinkexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/link-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/link-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/link-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+
+PASS Only &lt;a&gt;s, &lt;area&gt;s and &lt;link&gt;s that have a href attribute match ':link' 
+PASS ':link' doesn't match elements whos href attribute has been removed 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclasseslinkhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/link.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/link.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/link.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,24 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Selector: pseudo-classes (:link)&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot; id=link1&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#pseudo-classes&quot; id=link2&gt;
+&lt;link rel=stylesheet href=&quot;/resources/testharness.css&quot; id=link3&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;utils.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;a id=link4&gt;&lt;/a&gt;
+&lt;area id=link5&gt;&lt;/area&gt;
+&lt;link id=link6&gt;&lt;/link&gt;
+&lt;a href=&quot;http://www.w3.org&quot; id=link7&gt;&lt;/a&gt;
+&lt;area href=&quot;http://www.w3.org&quot; id=link8&gt;&lt;/area&gt;
+&lt;link href=&quot;http://www.w3.org&quot; id=link9&gt;&lt;/link&gt;
+&lt;a href=&quot;http://[&quot; id=link10&gt;&lt;/a&gt;
+
+&lt;script&gt;
+  testSelector(&quot;:link&quot;, [&quot;link1&quot;, &quot;link2&quot;, &quot;link3&quot;, &quot;link7&quot;, &quot;link8&quot;, &quot;link9&quot;, &quot;link10&quot;], &quot;Only &lt;a&gt;s, &lt;area&gt;s and &lt;link&gt;s that have a href attribute match ':link'&quot;);
+
+  document.getElementById(&quot;link9&quot;).removeAttribute(&quot;href&quot;);
+  testSelector(&quot;:link&quot;, [&quot;link1&quot;, &quot;link2&quot;, &quot;link3&quot;, &quot;link7&quot;, &quot;link8&quot;, &quot;link10&quot;], &quot;':link' doesn't match elements whos href attribute has been removed&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesreadwritereadonlyexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/readwrite-readonly-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/readwrite-readonly-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/readwrite-readonly-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,25 @@
</span><ins>+    


+paragraph1.
+
+paragraph2.
+
+
+PASS The :read-write pseudo-class must match input elements to which the readonly attribute applies, and that are mutable 
+FAIL The :read-only pseudo-class must not match input elements to which the readonly attribute applies, and that are mutable assert_array_equals: lengths differ, expected 1 got 4
+PASS The :read-write pseudo-class must not match input elements after the readonly attribute has been added 
+FAIL The :read-only pseudo-class must match input elements after the readonly attribute has been added assert_array_equals: lengths differ, expected 2 got 5
+PASS The :read-write pseudo-class must not match input elements after the readonly attribute has been removed 
+FAIL The :read-only pseudo-class must match input elements after the readonly attribute has been removed assert_array_equals: lengths differ, expected 1 got 4
+PASS The :read-write pseudo-class must match textarea elements that do not have a readonly attribute, and that are not disabled 
+PASS The :read-only pseudo-class must match textarea elements that have a readonly attribute, or that are disabled 
+PASS The :read-write pseudo-class must match textarea elements after the readonly attribute has been added 
+PASS The :read-only pseudo-class must match textarea elements after the readonly attribute has been added 
+PASS The :read-write pseudo-class must not match textarea elements that are disabled 
+PASS The :read-only pseudo-class must match textarea elements that are disabled 
+PASS The :read-write pseudo-class must match elements that are editable 
+PASS The :read-only pseudo-class must not match elements that are editable 
+PASS The :read-write pseudo-class must match elements that are editing hosts 
+PASS The :read-only pseudo-class must not match elements that are editing hosts 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesreadwritereadonlyhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/readwrite-readonly.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/readwrite-readonly.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/readwrite-readonly.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,71 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Selector: pseudo-classes (:read-write, :read-only)&lt;/title&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#pseudo-classes&quot; id=link2&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;utils.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+
+&lt;div id=set1&gt;
+&lt;input id=input1&gt;
+&lt;input id=input2 readonly&gt;
+&lt;input id=input3 disabled&gt;
+&lt;input id=input4 type=checkbox&gt;
+&lt;input id=input5 type=checkbox readonly&gt;
+&lt;/div&gt;
+
+&lt;div id=set2&gt;
+&lt;textarea id=textarea1&gt;textarea1&lt;/textarea&gt;
+&lt;textarea readonly id=textarea2&gt;textarea2&lt;/textarea&gt;
+&lt;/div&gt;
+
+&lt;div id=set3&gt;
+&lt;textarea id=textarea3&gt;textarea3&lt;/textarea&gt;
+&lt;textarea disabled id=textarea4&gt;textarea4&lt;/textarea&gt;
+&lt;/div&gt;
+
+&lt;div id=set4&gt;
+&lt;p id=p1&gt;paragraph1.&lt;/p&gt;
+&lt;p id=p2 contenteditable&gt;paragraph2.&lt;/p&gt;
+&lt;/div&gt;
+
+&lt;script&gt;
+  testSelector(&quot;#set1 :read-write&quot;, [&quot;input1&quot;], &quot;The :read-write pseudo-class must match input elements to which the readonly attribute applies, and that are mutable&quot;);
+
+  testSelector(&quot;#set1 :read-only&quot;, [&quot;input2&quot;], &quot;The :read-only pseudo-class must not match input elements to which the readonly attribute applies, and that are mutable&quot;);
+
+  document.getElementById(&quot;input1&quot;).setAttribute(&quot;readonly&quot;, &quot;readonly&quot;);
+  testSelector(&quot;#set1 :read-write&quot;, [], &quot;The :read-write pseudo-class must not match input elements after the readonly attribute has been added&quot;);
+
+  testSelector(&quot;#set1 :read-only&quot;, [&quot;input1&quot;, &quot;input2&quot;], &quot;The :read-only pseudo-class must match input elements after the readonly attribute has been added&quot;);
+
+  document.getElementById(&quot;input1&quot;).removeAttribute(&quot;readonly&quot;);
+  testSelector(&quot;#set1 :read-write&quot;, [&quot;input1&quot;], &quot;The :read-write pseudo-class must not match input elements after the readonly attribute has been removed&quot;);
+
+  testSelector(&quot;#set1 :read-only&quot;, [&quot;input2&quot;], &quot;The :read-only pseudo-class must match input elements after the readonly attribute has been removed&quot;);
+
+  testSelector(&quot;#set2 :read-write&quot;, [&quot;textarea1&quot;], &quot;The :read-write pseudo-class must match textarea elements that do not have a readonly attribute, and that are not disabled&quot;);
+
+  testSelector(&quot;#set2 :read-only&quot;, [&quot;textarea2&quot;], &quot;The :read-only pseudo-class must match textarea elements that have a readonly attribute, or that are disabled&quot;);
+
+  document.getElementById(&quot;textarea1&quot;).setAttribute(&quot;readonly&quot;, &quot;readonly&quot;);
+  testSelector(&quot;#set2 :read-write&quot;, [], &quot;The :read-write pseudo-class must match textarea elements after the readonly attribute has been added&quot;);
+
+  testSelector(&quot;#set2 :read-only&quot;, [&quot;textarea1&quot;, &quot;textarea2&quot;], &quot;The :read-only pseudo-class must match textarea elements after the readonly attribute has been added&quot;);
+
+  testSelector(&quot;#set3 :read-write&quot;, [&quot;textarea3&quot;], &quot;The :read-write pseudo-class must not match textarea elements that are disabled&quot;);
+
+  testSelector(&quot;#set3 :read-only&quot;, [&quot;textarea4&quot;], &quot;The :read-only pseudo-class must match textarea elements that are disabled&quot;);
+
+  testSelector(&quot;#set4 :read-write&quot;, [&quot;p2&quot;], &quot;The :read-write pseudo-class must match elements that are editable&quot;);
+
+  testSelector(&quot;#set4 :read-only&quot;, [&quot;p1&quot;], &quot;The :read-only pseudo-class must not match elements that are editable&quot;);
+
+  document.designMode = &quot;on&quot;;
+
+  testSelector(&quot;#set4 :read-write&quot;, [&quot;p1&quot;, &quot;p2&quot;], &quot;The :read-write pseudo-class must match elements that are editing hosts&quot;);
+
+  testSelector(&quot;#set4 :read-only&quot;, [], &quot;The :read-only pseudo-class must not match elements that are editing hosts&quot;);
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesrequiredoptionalexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/required-optional-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/required-optional-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/required-optional-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+      
+
+PASS ':required' matches required &lt;input&gt;s, &lt;select&gt;s and &lt;textarea&gt;s 
+PASS ':optional' matches elements &lt;input&gt;s, &lt;select&gt;s and &lt;textarea&gt;s that are not required 
+PASS ':required' doesn't match elements whose required attribute has been removed 
+PASS ':optional' matches elements whose required attribute has been removed 
+PASS ':required' matches elements whose required attribute has been added 
+PASS ':optional' doesn't match elements whose required attribute has been added 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesrequiredoptionalhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/required-optional.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/required-optional.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/required-optional.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,35 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Selector: pseudo-classes (:required, :optional)&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot; id=link1&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#pseudo-classes&quot; id=link2&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;utils.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;input type=text id=text1 value=&quot;foobar&quot; required&gt;
+&lt;input type=text id=text2 required&gt;
+&lt;input type=text id=text3&gt;
+&lt;select id=select1 required&gt;
+ &lt;optgroup label=&quot;options&quot; id=optgroup1&gt;
+   &lt;option value=&quot;option1&quot; id=option1&gt;option1
+&lt;/select&gt;
+&lt;select id=select2&gt;
+ &lt;optgroup label=&quot;options&quot; id=optgroup2&gt;
+   &lt;option value=&quot;option2&quot; id=option2&gt;option2
+&lt;/select&gt;
+&lt;textarea required id=textarea1&gt;textarea1&lt;/textarea&gt;
+&lt;textarea id=textarea2&gt;textarea2&lt;/textarea&gt;
+
+&lt;script&gt;
+  testSelector(&quot;:required&quot;, [&quot;text1&quot;, &quot;text2&quot;, &quot;select1&quot;, &quot;textarea1&quot;], &quot;':required' matches required &lt;input&gt;s, &lt;select&gt;s and &lt;textarea&gt;s&quot;);
+  testSelector(&quot;:optional&quot;, [&quot;text3&quot;, &quot;select2&quot;, &quot;textarea2&quot;], &quot;':optional' matches elements &lt;input&gt;s, &lt;select&gt;s and &lt;textarea&gt;s that are not required&quot;);
+
+  document.getElementById(&quot;text1&quot;).removeAttribute(&quot;required&quot;);
+  testSelector(&quot;:required&quot;, [&quot;text2&quot;, &quot;select1&quot;, &quot;textarea1&quot;], &quot;':required' doesn't match elements whose required attribute has been removed&quot;);
+  testSelector(&quot;:optional&quot;, [&quot;text1&quot;, &quot;text3&quot;, &quot;select2&quot;, &quot;textarea2&quot;], &quot;':optional' matches elements whose required attribute has been removed&quot;);
+
+  document.getElementById(&quot;select2&quot;).setAttribute(&quot;required&quot;, &quot;required&quot;);
+  testSelector(&quot;:required&quot;, [&quot;text2&quot;, &quot;select1&quot;, &quot;select2&quot;, &quot;textarea1&quot;], &quot;':required' matches elements whose required attribute has been added&quot;);
+  testSelector(&quot;:optional&quot;, [&quot;text1&quot;, &quot;text3&quot;, &quot;textarea2&quot;], &quot;':optional' doesn't match elements whose required attribute has been added&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesresourcesfocusiframehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/resources/focus-iframe.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/resources/focus-iframe.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/resources/focus-iframe.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Selector: pseudo-classes (:focus)&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;input id=&quot;inputiframe&quot; type=text value=&quot;foobar&quot; /&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesutilsjs"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/utils.js (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/utils.js                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/utils.js        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,14 @@
</span><ins>+function getElementsByIds(ids) {
+  var result = [];
+  ids.forEach(function(id) {
+    result.push(document.getElementById(id));
+  });
+  return result;
+}
+
+function testSelector(selector, expected, testName) {
+  test(function(){
+    var elements = document.querySelectorAll(selector);
+    assert_array_equals(elements, getElementsByIds(expected));
+  }, testName);
+}
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesvalidinvalidexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/valid-invalid-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/valid-invalid-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/valid-invalid-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,23 @@
</span><ins>+  
+
+
+
+
+  
+  
+
+PASS ':valid' matches elements that satisfy their constraints 
+PASS ':valid' matches form elements that are not the form owner of any elements that themselves are candidates for constraint validation but do not satisfy their constraints 
+PASS ':valid' matches fieldset elements that have no descendant elements that themselves are candidates for constraint validation but do not satisfy their constraints 
+PASS ':valid' matches elements that satisfy their pattern constraints 
+PASS ':valid' matches elements that satisfy their number constraints 
+PASS ':invalid' matches elements that do not satisfy their simple text  constraints 
+PASS ':invalid' matches form elements that are the form owner of one or more elements that themselves are candidates for constraint validation but do not satisfy their constraints 
+PASS ':invalid' matches fieldset elements that have of one or more descendant elements that themselves are candidates for constraint validation but do not satisfy their constraints 
+PASS ':invalid' matches elements that do not satisfy their pattern constraints 
+PASS ':invalid' matches elements that do not satisfy their number constraints 
+PASS ':valid' matches new elements that satisfy their constraints 
+PASS ':invalid' doesn't match new elements that satisfy their constraints 
+PASS ':valid' doesn't match new elements that do not satisfy their constraints 
+PASS ':invalid' matches new elements that do not satisfy their constraints 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesvalidinvalidhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/valid-invalid.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/valid-invalid.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/valid-invalid.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,68 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;Selector: pseudo-classes (:valid, :invalid)&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot; id=link1&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#pseudo-classes&quot; id=link2&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;utils.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;div id='simpleConstraints'&gt;
+  &lt;input type=text id=text1 value=&quot;foobar&quot; required&gt;
+  &lt;input type=text id=text2 required&gt;
+&lt;/div&gt;
+&lt;div id='FormSelection'&gt;
+  &lt;form id=form1&gt;
+    &lt;input type=text id=text3 value=&quot;foobar&quot; required&gt;
+  &lt;/form&gt;
+  &lt;form id=form2&gt;
+    &lt;input type=text id=text4 required&gt;
+  &lt;/form&gt;
+&lt;/div&gt;
+&lt;div id='FieldSetSelection'&gt;
+  &lt;fieldset id=fieldset1&gt;
+    &lt;input type=text id=text5 value=&quot;foobar&quot; required&gt;
+  &lt;/fieldset&gt;
+  &lt;fieldset id=fieldset2&gt;
+    &lt;input type=text id=text6 required&gt;
+  &lt;/fieldset&gt;
+&lt;/div&gt;
+&lt;div id='patternConstraints'&gt;
+  &lt;input type=text id=text7 value=&quot;AAA&quot; pattern=&quot;[0-9][A-Z]{3}&quot;&gt;
+  &lt;input type=text id=text8 value=&quot;0AAA&quot; pattern=&quot;[0-9][A-Z]{3}&quot;&gt;
+&lt;/div&gt;
+&lt;div id='numberConstraints'&gt;
+  &lt;input type=number id=number1 value=0 min=1&gt;
+  &lt;input type=number id=number2 value=1 min=1&gt;
+&lt;/div&gt;
+
+&lt;script&gt;
+  testSelector(&quot;#simpleConstraints :valid&quot;, [&quot;text1&quot;], &quot;':valid' matches elements that satisfy their constraints&quot;);
+
+  testSelector(&quot;#FormSelection :valid&quot;, [&quot;form1&quot;, &quot;text3&quot;], &quot;':valid' matches form elements that are not the form owner of any elements that themselves are candidates for constraint validation but do not satisfy their constraints&quot;);
+
+  testSelector(&quot;#FieldSetSelection :valid&quot;, [&quot;fieldset1&quot;, &quot;text5&quot;], &quot;':valid' matches fieldset elements that have no descendant elements that themselves are candidates for constraint validation but do not satisfy their constraints&quot;);
+
+  testSelector(&quot;#patternConstraints :valid&quot;, [ &quot;text8&quot; ], &quot;':valid' matches elements that satisfy their pattern constraints&quot;);
+
+  testSelector(&quot;#numberConstraints :valid&quot;, [ &quot;number2&quot; ], &quot;':valid' matches elements that satisfy their number constraints&quot;);
+
+
+  testSelector(&quot;#simpleConstraints :invalid&quot;, [&quot;text2&quot;], &quot;':invalid' matches elements that do not satisfy their simple text  constraints&quot;);
+
+  testSelector(&quot;#FormSelection :invalid&quot;, [&quot;form2&quot;, &quot;text4&quot;], &quot;':invalid' matches form elements that are the form owner of one or more elements that themselves are candidates for constraint validation but do not satisfy their constraints&quot;);
+
+  testSelector(&quot;#FieldSetSelection :invalid&quot;, [&quot;fieldset2&quot;, &quot;text6&quot;], &quot;':invalid' matches fieldset elements that have of one or more descendant elements that themselves are candidates for constraint validation but do not satisfy their constraints&quot;);
+
+  testSelector(&quot;#patternConstraints :invalid&quot;, [&quot;text7&quot;], &quot;':invalid' matches elements that do not satisfy their pattern constraints&quot;);
+
+  testSelector(&quot;#numberConstraints :invalid&quot;, [&quot;number1&quot;], &quot;':invalid' matches elements that do not satisfy their number constraints&quot;);
+
+  document.getElementById(&quot;text7&quot;).value=&quot;0BBB&quot;;
+  testSelector(&quot;#patternConstraints :valid&quot;, [ &quot;text7&quot;, &quot;text8&quot; ], &quot;':valid' matches new elements that satisfy their constraints&quot;);
+  testSelector(&quot;#patternConstraints :invalid&quot;, [], &quot;':invalid' doesn't match new elements that satisfy their constraints&quot;);
+
+  document.getElementById(&quot;text8&quot;).value=&quot;BBB&quot;;
+  testSelector(&quot;#patternConstraints :valid&quot;, [&quot;text7&quot;], &quot;':valid' doesn't match new elements that do not satisfy their constraints&quot;);
+  testSelector(&quot;#patternConstraints :invalid&quot;, [&quot;text8&quot;], &quot;':invalid' matches new elements that do not satisfy their constraints&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsselectorspseudoclassesw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,31 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/checked.html
+/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/default.html
+/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/dir.html
+/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/dir01.html
+/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/disabled.html
+/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/enabled.html
+/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/focus.html
+/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/indeterminate.html
+/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/inrange-outofrange.html
+/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/link.html
+/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/readwrite-readonly.html
+/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/required-optional.html
+/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/utils.js
+/LayoutTests/http/tests/w3c/html/semantics/selectors/pseudo-classes/valid-invalid.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardataattributescommontotdandthelementscellIndexexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/attributes-common-to-td-and-th-elements/cellIndex-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/attributes-common-to-td-and-th-elements/cellIndex-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/attributes-common-to-td-and-th-elements/cellIndex-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+
+PASS cellIndex should exist. 
+PASS For cells without a parent, cellIndex should be -1. 
+PASS For cells whose parent is not a tr, cellIndex should be -1. 
+PASS For cells whose parent is not a HTML tr, cellIndex should be -1. 
+PASS For cells whose parent is a tr, cellIndex should be the index. 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardataattributescommontotdandthelementscellIndexhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/attributes-common-to-td-and-th-elements/cellIndex.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/attributes-common-to-td-and-th-elements/cellIndex.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/attributes-common-to-td-and-th-elements/cellIndex.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,41 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;HTMLTableCellElement.cellIndex&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  var th = document.createElement(&quot;th&quot;);
+  assert_true(&quot;cellIndex&quot; in th, '&quot;cellIndex&quot; in th');
+  var td = document.createElement(&quot;td&quot;);
+  assert_true(&quot;cellIndex&quot; in td, '&quot;cellIndex&quot; in td');
+}, &quot;cellIndex should exist.&quot;)
+test(function() {
+  var th = document.createElement(&quot;th&quot;);
+  assert_equals(th.cellIndex, -1);
+  var td = document.createElement(&quot;td&quot;);
+  assert_equals(td.cellIndex, -1);
+}, &quot;For cells without a parent, cellIndex should be -1.&quot;)
+test(function() {
+  var table = document.createElement(&quot;table&quot;);
+  var th = table.appendChild(document.createElement(&quot;th&quot;));
+  assert_equals(th.cellIndex, -1);
+  var td = table.appendChild(document.createElement(&quot;td&quot;));
+  assert_equals(td.cellIndex, -1);
+}, &quot;For cells whose parent is not a tr, cellIndex should be -1.&quot;)
+test(function() {
+  var tr = document.createElementNS(&quot;&quot;, &quot;tr&quot;);
+  var th = tr.appendChild(document.createElement(&quot;th&quot;));
+  assert_equals(th.cellIndex, -1);
+  var td = tr.appendChild(document.createElement(&quot;td&quot;));
+  assert_equals(td.cellIndex, -1);
+}, &quot;For cells whose parent is not a HTML tr, cellIndex should be -1.&quot;)
+test(function() {
+  var tr = document.createElement(&quot;tr&quot;);
+  var th = tr.appendChild(document.createElement(&quot;th&quot;));
+  assert_equals(th.cellIndex, 0);
+  var td = tr.appendChild(document.createElement(&quot;td&quot;));
+  assert_equals(td.cellIndex, 1);
+}, &quot;For cells whose parent is a tr, cellIndex should be the index.&quot;)
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardataattributescommontotdandthelementsw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/attributes-common-to-td-and-th-elements/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/attributes-common-to-td-and-th-elements/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/attributes-common-to-td-and-th-elements/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/tabular-data/attributes-common-to-td-and-th-elements/cellIndex.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardataprocessingmodel1containsjson"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/processing-model-1/contains.json (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/processing-model-1/contains.json                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/processing-model-1/contains.json        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+[
+    {
+        &quot;id&quot;: &quot;forming-a-table&quot;,
+        &quot;original_id&quot;: &quot;forming-a-table&quot;
+    },
+    {
+        &quot;id&quot;: &quot;header-and-data-cell-semantics&quot;,
+        &quot;original_id&quot;: &quot;header-and-data-cell-semantics&quot;
+    }
+]
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardataprocessingmodel1w3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/processing-model-1/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/processing-model-1/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/processing-model-1/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/tabular-data/processing-model-1/contains.json
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathecaptionelementcaption_001expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-caption-element/caption_001-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-caption-element/caption_001-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-caption-element/caption_001-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+
+PASS first caption element child of the first table element 
+PASS setting caption on a table 
+PASS caption IDL attribute is null 
+PASS caption of the third table element should be null 
+PASS dynamically removing caption on a table 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathecaptionelementcaption_001html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-caption-element/caption_001.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-caption-element/caption_001.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-caption-element/caption_001.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,70 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;title&gt;HTML5 Table API Tests&lt;/title&gt;
+    &lt;meta content=&quot;text/html; charset=UTF-8&quot; http-equiv=&quot;Content-Type&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Microsoft&quot; href=&quot;http://www.microsoft.com/&quot; /&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-caption-element&quot; /&gt;
+  &lt;/head&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;body&gt;
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+    &lt;table id=&quot;table1&quot; style=&quot;display:none&quot;&gt;
+      &lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;
+      &lt;caption&gt;first caption&lt;/caption&gt;
+      &lt;caption&gt;second caption&lt;/caption&gt;
+    &lt;/table&gt;
+    &lt;table id=&quot;table2&quot; style=&quot;display:none&quot;&gt;
+      &lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;
+    &lt;/table&gt;
+    &lt;table id=&quot;table3&quot; style=&quot;display:none&quot;&gt;
+      &lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;
+    &lt;/table&gt;
+    &lt;table id=&quot;table4&quot; style=&quot;display:none&quot;&gt;
+      &lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;
+      &lt;caption&gt;first caption&lt;/caption&gt;
+    &lt;/table&gt;
+    &lt;script&gt;
+      test(function () {
+        assert_equals(document.getElementById('table1').caption.innerHTML, &quot;first caption&quot;);
+      }, &quot;first caption element child of the first table element&quot;);
+
+      test(function () {
+        var caption = document.createElement(&quot;caption&quot;);
+        caption.innerHTML = &quot;new caption&quot;;
+        var table = document.getElementById('table1');
+        table.caption = caption;
+
+        assert_equals(caption.parentNode, table);
+        assert_equals(table.firstChild, caption);
+        assert_equals(table.caption.innerHTML, &quot;new caption&quot;);
+
+        captions = table.getElementsByTagName('caption');
+        assert_equals(captions.length, 2);
+        assert_equals(captions[0].innerHTML, &quot;new caption&quot;);
+        assert_equals(captions[1].innerHTML, &quot;second caption&quot;);
+      }, &quot;setting caption on a table&quot;);
+
+      test(function () {
+        assert_equals(document.getElementById('table2').caption, null);
+      }, &quot;caption IDL attribute is null&quot;);
+
+      test(function () {
+        var table = document.getElementById('table3');
+        var caption = document.createElement(&quot;caption&quot;)
+        table.rows[0].appendChild(caption);
+        assert_equals(table.caption, null);
+      }, &quot;caption of the third table element should be null&quot;);
+
+      test(function () {
+        assert_not_equals(document.getElementById('table4').caption, null);
+
+        var parent = document.getElementById('table4').caption.parentNode;
+        parent.removeChild(document.getElementById('table4').caption);
+
+        assert_equals(document.getElementById('table4').caption, null);
+      }, &quot;dynamically removing caption on a table&quot;);
+    &lt;/script&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathecaptionelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-caption-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-caption-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-caption-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-caption-element/caption_001.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementcaptionmethodsexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/caption-methods-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/caption-methods-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/caption-methods-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+caption
+
+PASS createCaption method creates new caption if existing caption is not in html namespace 
+PASS createCaption method returns the first caption element child of the table 
+PASS createCaption method creates a new caption and inserts it as the first node of the table element 
+PASS createCaption will not create new caption if one exists 
+PASS createCaption will not copy table's prefix 
+PASS deleteCaption method removes the first caption element child of the table element 
+PASS deleteCaption method not remove caption that is not in html namespace 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementcaptionmethodshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/caption-methods.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/caption-methods.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/caption-methods.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,86 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;html&gt;
+&lt;head&gt;
+  &lt;title&gt;Creating and deleting captions&lt;/title&gt;
+  &lt;link rel=&quot;author&quot; title=&quot;Erika Navara&quot; href=&quot;mailto:edoyle@microsoft.com&quot;&gt;
+  &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-table-element&quot; /&gt;
+  &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-table-createcaption&quot; /&gt;
+  &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-table-deletecaption&quot; /&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+  &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+  &lt;table id=&quot;table0&quot; style=&quot;display:none&quot;&gt;
+  &lt;/table&gt;
+  &lt;table id=&quot;table1&quot; style=&quot;display:none&quot;&gt;
+    &lt;caption id=&quot;caption1&quot;&gt;caption&lt;/caption&gt;
+    &lt;tr&gt;
+      &lt;td&gt;cell&lt;/td&gt;
+      &lt;td&gt;cell&lt;/td&gt;
+    &lt;/tr&gt;
+  &lt;/table&gt;
+  &lt;table id=&quot;table2&quot; style=&quot;display:none&quot;&gt;
+    &lt;foo:caption&gt;caption&lt;/foo:caption&gt;
+    &lt;tr&gt;
+      &lt;td&gt;cell&lt;/td&gt;
+      &lt;td&gt;cell&lt;/td&gt;
+    &lt;/tr&gt;
+  &lt;/table&gt;
+  &lt;table id=&quot;table3&quot; style=&quot;display:none&quot;&gt;
+    &lt;caption id=&quot;caption3&quot;&gt;caption 3&lt;/caption&gt;
+    &lt;tr&gt;
+      &lt;td&gt;cell&lt;/td&gt;
+      &lt;td&gt;cell&lt;/td&gt;
+    &lt;/tr&gt;
+  &lt;/table&gt;
+  &lt;table id=&quot;table4&quot; style=&quot;display:none&quot;&gt;
+  &lt;/table&gt;
+  &lt;script&gt;
+    test(function () {
+      var table0 = document.getElementById('table0');
+      var caption = document.createElementNS(&quot;foo&quot;, &quot;caption&quot;);
+      table0.appendChild(caption);
+      var table0FirstNode = table0.firstChild;
+      var testCaption = table0.createCaption();
+      assert_not_equals(testCaption, table0FirstNode);
+      assert_equals(testCaption, table0.firstChild);
+    }, &quot;createCaption method creates new caption if existing caption is not in html namespace&quot;)
+    test(function () {
+      var table1 = document.getElementById('table1');
+      var testCaption = table1.createCaption();
+      var table1FirstCaption = table1.caption;
+      assert_equals(testCaption, table1FirstCaption);
+    }, &quot;createCaption method returns the first caption element child of the table&quot;)
+    test(function () {
+      var table2 = document.getElementById('table2');
+      var test2Caption = table2.createCaption();
+      var table2FirstNode = table2.firstChild;
+      assert_true(test2Caption instanceof  HTMLTableCaptionElement);
+      assert_equals(table2FirstNode, test2Caption);
+    }, &quot;createCaption method creates a new caption and inserts it as the first node of the table element&quot;)
+    test(function () {
+      var table = document.createElement('table');
+      assert_equals(table.createCaption(), table.createCaption());
+    }, &quot;createCaption will not create new caption if one exists&quot;)
+    test(function () {
+      var table = document.createElementNS(&quot;http://www.w3.org/1999/xhtml&quot;, &quot;foo:table&quot;)
+      var caption = table.createCaption();
+      assert_equals(caption.prefix, null);
+    }, &quot;createCaption will not copy table's prefix&quot;)
+    test(function () {
+      var table3 = document.getElementById('table3');
+      assert_equals(table3.caption.textContent, &quot;caption 3&quot;);
+      table3.deleteCaption();
+      assert_equals(table3.caption, null);
+    }, &quot;deleteCaption method removes the first caption element child of the table element&quot;)
+    test(function () {
+      var table4 = document.getElementById('table4');
+      var caption = document.createElementNS(&quot;foo&quot;, &quot;caption&quot;);
+      table4.appendChild(caption);
+      table4.deleteCaption();
+      assert_equals(caption.parentNode, table4);
+    }, &quot;deleteCaption method not remove caption that is not in html namespace&quot;)
+  &lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementcontainsjson"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/contains.json (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/contains.json                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/contains.json        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+[
+    {
+        &quot;id&quot;: &quot;table-descriptions-techniques&quot;,
+        &quot;original_id&quot;: &quot;table-descriptions-techniques&quot;
+    },
+    {
+        &quot;id&quot;: &quot;table-layout-techniques&quot;,
+        &quot;original_id&quot;: &quot;table-layout-techniques&quot;
+    }
+]
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementcreateTBodyexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/createTBody-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/createTBody-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/createTBody-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,17 @@
</span><ins>+
+PASS No child nodes 
+PASS One tbody child node 
+PASS Two tbody child nodes 
+PASS A thead and a tbody child node 
+PASS A tfoot and a tbody child node 
+PASS A tbody and a thead child node 
+PASS A tbody and a tfoot child node 
+PASS Two tbody child nodes and a div 
+PASS One HTML and one namespaced tbody child node 
+PASS Two nested tbody child nodes 
+PASS A tbody node inside a thead child node 
+PASS A tbody node inside a tfoot child node 
+PASS A tbody node inside a thead child node after a tbody child node 
+PASS A tbody node inside a tfoot child node after a tbody child node 
+PASS A prefixed table creates tbody without prefix 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementcreateTBodyhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/createTBody.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/createTBody.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/createTBody.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,173 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;HTMLTableElement.createTBody&lt;/title&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+function assert_tbody(tbody) {
+  assert_equals(tbody.localName, &quot;tbody&quot;);
+  assert_equals(tbody.namespaceURI, htmlNS);
+  assert_equals(tbody.prefix, null);
+}
+var htmlNS = &quot;http://www.w3.org/1999/xhtml&quot;;
+test(function() {
+  var table = document.createElement(&quot;table&quot;);
+  var tbody = table.createTBody();
+  assert_equals(table.firstChild, tbody);
+  assert_tbody(tbody);
+}, &quot;No child nodes&quot;);
+
+test(function() {
+  var table = document.createElement(&quot;table&quot;);
+  var before = table.appendChild(document.createElement(&quot;tbody&quot;));
+  assert_array_equals(table.childNodes, [before]);
+
+  var tbody = table.createTBody();
+  assert_array_equals(table.childNodes, [before, tbody]);
+  assert_tbody(tbody);
+}, &quot;One tbody child node&quot;);
+
+test(function() {
+  var table = document.createElement(&quot;table&quot;);
+  var before1 = table.appendChild(document.createElement(&quot;tbody&quot;));
+  var before2 = table.appendChild(document.createElement(&quot;tbody&quot;));
+  assert_array_equals(table.childNodes, [before1, before2]);
+
+  var tbody = table.createTBody();
+  assert_array_equals(table.childNodes, [before1, before2, tbody]);
+  assert_tbody(tbody);
+}, &quot;Two tbody child nodes&quot;);
+
+test(function() {
+  var table = document.createElement(&quot;table&quot;);
+  var before1 = table.appendChild(document.createElement(&quot;thead&quot;));
+  var before2 = table.appendChild(document.createElement(&quot;tbody&quot;));
+  assert_array_equals(table.childNodes, [before1, before2]);
+
+  var tbody = table.createTBody();
+  assert_array_equals(table.childNodes, [before1, before2, tbody]);
+  assert_tbody(tbody);
+}, &quot;A thead and a tbody child node&quot;);
+
+test(function() {
+  var table = document.createElement(&quot;table&quot;);
+  var before1 = table.appendChild(document.createElement(&quot;tfoot&quot;));
+  var before2 = table.appendChild(document.createElement(&quot;tbody&quot;));
+  assert_array_equals(table.childNodes, [before1, before2]);
+
+  var tbody = table.createTBody();
+  assert_array_equals(table.childNodes, [before1, before2, tbody]);
+  assert_tbody(tbody);
+}, &quot;A tfoot and a tbody child node&quot;);
+
+test(function() {
+  var table = document.createElement(&quot;table&quot;);
+  var before = table.appendChild(document.createElement(&quot;tbody&quot;));
+  var after = table.appendChild(document.createElement(&quot;thead&quot;));
+  assert_array_equals(table.childNodes, [before, after]);
+
+  var tbody = table.createTBody();
+  assert_array_equals(table.childNodes, [before, tbody, after]);
+  assert_tbody(tbody);
+}, &quot;A tbody and a thead child node&quot;);
+
+test(function() {
+  var table = document.createElement(&quot;table&quot;);
+  var before = table.appendChild(document.createElement(&quot;tbody&quot;));
+  var after = table.appendChild(document.createElement(&quot;tfoot&quot;));
+  assert_array_equals(table.childNodes, [before, after]);
+
+  var tbody = table.createTBody();
+  assert_array_equals(table.childNodes, [before, tbody, after]);
+  assert_tbody(tbody);
+}, &quot;A tbody and a tfoot child node&quot;);
+
+test(function() {
+  var table = document.createElement(&quot;table&quot;);
+  var before1 = table.appendChild(document.createElement(&quot;tbody&quot;));
+  var before2 = table.appendChild(document.createElement(&quot;tbody&quot;));
+  var after = table.appendChild(document.createElement(&quot;div&quot;));
+  assert_array_equals(table.childNodes, [before1, before2, after]);
+
+  var tbody = table.createTBody();
+  assert_array_equals(table.childNodes, [before1, before2, tbody, after]);
+  assert_tbody(tbody);
+}, &quot;Two tbody child nodes and a div&quot;);
+
+test(function() {
+  var table = document.createElement(&quot;table&quot;);
+  var before = table.appendChild(document.createElement(&quot;tbody&quot;));
+  var after = table.appendChild(document.createElementNS(&quot;x&quot;, &quot;tbody&quot;));
+  assert_array_equals(table.childNodes, [before, after]);
+
+  var tbody = table.createTBody();
+  assert_array_equals(table.childNodes, [before, tbody, after]);
+  assert_tbody(tbody);
+}, &quot;One HTML and one namespaced tbody child node&quot;);
+
+test(function() {
+  var table = document.createElement(&quot;table&quot;);
+  var before1 = table.appendChild(document.createElement(&quot;tbody&quot;));
+  var before2 = before1.appendChild(document.createElement(&quot;tbody&quot;));
+  assert_array_equals(table.childNodes, [before1]);
+
+  var tbody = table.createTBody();
+  assert_array_equals(table.childNodes, [before1, tbody]);
+  assert_tbody(tbody);
+}, &quot;Two nested tbody child nodes&quot;);
+
+test(function() {
+  var table = document.createElement(&quot;table&quot;);
+  var before1 = table.appendChild(document.createElement(&quot;thead&quot;));
+  var before2 = before1.appendChild(document.createElement(&quot;tbody&quot;));
+  assert_array_equals(table.childNodes, [before1]);
+
+  var tbody = table.createTBody();
+  assert_array_equals(table.childNodes, [before1, tbody]);
+  assert_tbody(tbody);
+}, &quot;A tbody node inside a thead child node&quot;);
+
+test(function() {
+  var table = document.createElement(&quot;table&quot;);
+  var before1 = table.appendChild(document.createElement(&quot;tfoot&quot;));
+  var before2 = before1.appendChild(document.createElement(&quot;tbody&quot;));
+  assert_array_equals(table.childNodes, [before1]);
+
+  var tbody = table.createTBody();
+  assert_array_equals(table.childNodes, [before1, tbody]);
+  assert_tbody(tbody);
+}, &quot;A tbody node inside a tfoot child node&quot;);
+
+test(function() {
+  var table = document.createElement(&quot;table&quot;);
+  var before = table.appendChild(document.createElement(&quot;tbody&quot;));
+  var after1 = table.appendChild(document.createElement(&quot;thead&quot;));
+  var after2 = after1.appendChild(document.createElement(&quot;tbody&quot;));
+  assert_array_equals(table.childNodes, [before, after1]);
+
+  var tbody = table.createTBody();
+  assert_array_equals(table.childNodes, [before, tbody, after1]);
+  assert_tbody(tbody);
+}, &quot;A tbody node inside a thead child node after a tbody child node&quot;);
+
+test(function() {
+  var table = document.createElement(&quot;table&quot;);
+  var before = table.appendChild(document.createElement(&quot;tbody&quot;));
+  var after1 = table.appendChild(document.createElement(&quot;tfoot&quot;));
+  var after2 = after1.appendChild(document.createElement(&quot;tbody&quot;));
+  assert_array_equals(table.childNodes, [before, after1]);
+
+  var tbody = table.createTBody();
+  assert_array_equals(table.childNodes, [before, tbody, after1]);
+  assert_tbody(tbody);
+}, &quot;A tbody node inside a tfoot child node after a tbody child node&quot;);
+
+test(function() {
+  var table = document.createElementNS(htmlNS, &quot;foo:table&quot;);
+  var tbody = table.createTBody();
+
+  assert_equals(tbody.prefix, null);
+}, &quot;A prefixed table creates tbody without prefix&quot;);
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementdeletecaptionexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/delete-caption-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/delete-caption-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/delete-caption-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+Nested caption
+
+PASS deleteCaption() delete only caption on table 
+PASS deleteCaption() returns undefined 
+PASS deleteCaption() 
+PASS deleteCaption() does not throw any exceptions when called on a table without a caption 
+PASS deleteCaption() does not delete captions in descendent tables 
+PASS deleteCaption() handles captions from different namespaces 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementdeletecaptionhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/delete-caption.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/delete-caption.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/delete-caption.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,94 @@
</span><ins>+&lt;!DOCTYPE HTML&gt;
+&lt;html&gt;
+&lt;head&gt;
+  &lt;title&gt;deleteCaption()&lt;/title&gt;
+  &lt;link rel=&quot;author&quot; title=&quot;Ben Boyle&quot; href=&quot;mailto:benjamins.boyle@gmail.com&quot;&gt;
+  &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-table-deletecaption&quot; /&gt;
+  &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+  &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;/head&gt;
+&lt;body&gt;
+  &lt;table id=&quot;one-caption&quot;&gt;
+    &lt;caption&gt;Fixture table caption&lt;/caption&gt;
+  &lt;/table&gt;
+
+  &lt;table id=&quot;two-captions&quot;&gt;
+    &lt;caption&gt;Fixture table caption&lt;/caption&gt;
+    &lt;caption&gt;A second caption element&lt;/caption&gt;
+  &lt;/table&gt;
+
+  &lt;table id=&quot;zero-captions&quot;&gt;&lt;/table&gt;
+
+  &lt;table id=&quot;descendent-caption&quot;&gt;
+    &lt;tr&gt;
+      &lt;td&gt;
+        &lt;table&gt;
+          &lt;caption&gt;Nested caption&lt;/caption&gt;
+        &lt;/table&gt;
+      &lt;/td&gt;
+    &lt;/tr&gt;
+  &lt;/table&gt;
+
+  &lt;script&gt;
+  // The deleteCaption() method must remove the first caption element child of the table element, if any.
+  // https://html.spec.whatwgorg/multipage/tables.html#dom-table-deletecaption
+  test(function() {
+    var table = document.getElementById('one-caption');
+
+    table.deleteCaption();
+    assert_equals(table.getElementsByTagName('caption').length, 0, 'caption was removed');
+
+  }, 'deleteCaption() delete only caption on table');
+
+  test(function() {
+    var table = document.getElementById('one-caption');
+    var result;
+
+    result = table.deleteCaption();
+    // does .deleteCaption() have a return value?
+    assert_equals(result, undefined, '.deleteCaption() returns undefined');
+  }, 'deleteCaption() returns undefined');
+
+  test(function() {
+    var table = document.getElementById('two-captions');
+
+    table.deleteCaption();
+    assert_equals(table.getElementsByTagName('caption').length, 1, '1 caption (of 2) was removed');
+    assert_equals(table.getElementsByTagName('caption')[0].textContent, 'A second caption element', 'The first caption was removed');
+
+    // removing the only caption
+    table.deleteCaption();
+    assert_equals(table.getElementsByTagName('caption').length, 0, 'last caption was removed');
+  }, 'deleteCaption()');
+
+  test(function() {
+    var table = document.getElementById('zero-captions');
+    // removing a caption when none exists
+    table.deleteCaption();
+
+    assert_equals(table.getElementsByTagName('caption').length, 0, 'no exceptions using .deleteCaption() on a table without any captions');
+
+  }, 'deleteCaption() does not throw any exceptions when called on a table without a caption');
+
+  test(function() {
+    var table = document.getElementById( 'descendent-caption' );
+    table.deleteCaption();
+
+    assert_equals(table.getElementsByTagName('caption').length, 1, 'descendent caption was not deleted');
+  }, 'deleteCaption() does not delete captions in descendent tables');
+
+  test(function() {
+    var table = document.getElementById('zero-captions');
+    var caption;
+
+    caption = document.createElementNS('http://www.w3.org/2000/svg', 'caption');
+    table.insertBefore(caption, table.firstChild);
+    assert_equals(table.getElementsByTagName('caption').length, 1, 'SVG:caption is created');
+
+    table.deleteCaption();
+    assert_equals(table.getElementsByTagName('caption').length, 1, 'SVG:caption is not deleted');
+
+  }, 'deleteCaption() handles captions from different namespaces');
+&lt;/script&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementinsertRowmethod01expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/insertRow-method-01-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/insertRow-method-01-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/insertRow-method-01-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+
+PASS insertRow(): INDEX_SIZE_ERR 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementinsertRowmethod01html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/insertRow-method-01.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/insertRow-method-01.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/insertRow-method-01.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,24 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;insertRow(): INDEX_SIZE_ERR&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-table-insertrow&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;div id=&quot;test&quot;&gt;
+&lt;table&gt;
+&lt;tr&gt;
+&lt;td&gt;
+&lt;/table&gt;
+&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  var table = document.getElementById(&quot;test&quot;).getElementsByTagName(&quot;table&quot;)[0];
+  assert_throws(&quot;INDEX_SIZE_ERR&quot;, function() {
+    table.insertRow(-2);
+  })
+  assert_throws(&quot;INDEX_SIZE_ERR&quot;, function() {
+    table.insertRow(2);
+  })
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementinsertRowmethod02expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/insertRow-method-02-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/insertRow-method-02-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/insertRow-method-02-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+
+PASS insertRow(): Empty table 
+PASS table should start out empty 
+PASS insertRow should insert a tr element 
+PASS insertRow should insert a tbody element 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementinsertRowmethod02html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/insertRow-method-02.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/insertRow-method-02.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/insertRow-method-02.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,34 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;insertRow(): Empty table&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-table-insertrow&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;div id=&quot;test&quot;&gt;
+&lt;table&gt;&lt;/table&gt;
+&lt;/div&gt;
+&lt;script&gt;
+var HTML = &quot;http://www.w3.org/1999/xhtml&quot;;
+test(function() {
+  var table = document.getElementById(&quot;test&quot;).getElementsByTagName(&quot;table&quot;)[0];
+  test(function() {
+    assert_equals(table.childNodes.length, 0);
+    assert_equals(table.rows.length, 0);
+  }, &quot;table should start out empty&quot;)
+
+  var tr;
+  test(function() {
+    tr = table.insertRow(0);
+    assert_equals(tr.localName, &quot;tr&quot;);
+    assert_equals(tr.namespaceURI, HTML);
+  }, &quot;insertRow should insert a tr element&quot;)
+
+  var tbody = tr.parentNode;
+  test(function() {
+    assert_equals(tbody.localName, &quot;tbody&quot;);
+    assert_equals(tbody.namespaceURI, HTML);
+    assert_equals(tbody.parentNode, table);
+  }, &quot;insertRow should insert a tbody element&quot;)
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementtBodiesexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/tBodies-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/tBodies-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/tBodies-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+Cell 1        Cell 2
+Cell 3        Cell 4
+Cell 5        Cell 6
+
+PASS HTMLTableElement.tBodies 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementtBodieshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/tBodies.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/tBodies.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/tBodies.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,40 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;HTMLTableElement.tBodies&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  var text =
+    '&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;' +
+    '  &lt;head&gt;' +
+    '    &lt;title&gt;Virtual Library&lt;/title&gt;' +
+    '  &lt;/head&gt;' +
+    '  &lt;body&gt;' +
+    '    &lt;table id=&quot;mytable&quot; border=&quot;1&quot;&gt;' +
+    '      &lt;tbody&gt;' +
+    '        &lt;tr&gt;&lt;td&gt;Cell 1&lt;/td&gt;&lt;td&gt;Cell 2&lt;/td&gt;&lt;/tr&gt;' +
+    '        &lt;tr&gt;&lt;td&gt;Cell 3&lt;/td&gt;&lt;td&gt;Cell 4&lt;/td&gt;&lt;/tr&gt;' +
+    '      &lt;/tbody&gt;' +
+    '    &lt;/table&gt;' +
+    '  &lt;/body&gt;' +
+    '&lt;/html&gt;';
+
+  var parser = new DOMParser();
+  var doc = parser.parseFromString(text, &quot;text/xml&quot;);
+
+  // import &lt;table&gt;
+  var table = doc.documentElement.getElementsByTagName('table')[0];
+  var mytable = document.body.appendChild(document.importNode(table, true));
+
+  assert_equals(mytable.tBodies.length, 1);
+  var tbody = document.createElement('tbody');
+  mytable.appendChild(tbody);
+  var tr = tbody.insertRow(-1);
+  tr.insertCell(-1).appendChild(document.createTextNode('Cell 5'));
+  tr.insertCell(-1).appendChild(document.createTextNode('Cell 6'));
+  assert_equals(mytable.tBodies.length, 2);
+  assert_equals(mytable.rows.length, 3);
+  assert_equals(tr.rowIndex, 2);
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementtableinsertRowexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/table-insertRow-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/table-insertRow-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/table-insertRow-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+
+FAIL insertRow should not copy prefixes assert_equals: Parent tag name should be HTML:TABLE expected &quot;HTML:TABLE&quot; but got &quot;html:table&quot;
+PASS insertRow should insert into a tbody, not into a thead, if table.rows is empty 
+PASS insertRow should insert into a tbody, not into a tfoot, if table.rows is empty 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementtableinsertRowhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/table-insertRow.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/table-insertRow.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/table-insertRow.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,56 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;HTMLTableElement.insertRow&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  var HTMLNS = &quot;http://www.w3.org/1999/xhtml&quot;
+  var parentEl = document.createElementNS(HTMLNS, &quot;html:table&quot;)
+  assert_equals(parentEl.namespaceURI, HTMLNS, &quot;Parent should be in the HTML namespace&quot;)
+  assert_equals(parentEl.prefix, &quot;html&quot;, &quot;Parent prefix should be html&quot;)
+  assert_equals(parentEl.localName, &quot;table&quot;, &quot;Parent local name should be table&quot;)
+  assert_equals(parentEl.tagName, &quot;HTML:TABLE&quot;, &quot;Parent tag name should be HTML:TABLE&quot;)
+
+  var row = parentEl.insertRow(-1)
+  assert_equals(row.namespaceURI, HTMLNS, &quot;Row should be in the HTML namespace&quot;)
+  assert_equals(row.prefix, null, &quot;Row prefix should be null&quot;)
+  assert_equals(row.localName, &quot;tr&quot;, &quot;Row local name should be tr&quot;)
+  assert_equals(row.tagName, &quot;TR&quot;, &quot;Row tag name should be TR&quot;)
+
+  var body = row.parentNode
+  assert_equals(body.namespaceURI, HTMLNS, &quot;Body should be in the HTML namespace&quot;)
+  assert_equals(body.prefix, null, &quot;Body prefix should be null&quot;)
+  assert_equals(body.localName, &quot;tbody&quot;, &quot;Body local name should be tr&quot;)
+  assert_equals(body.tagName, &quot;TBODY&quot;, &quot;Body tag name should be TR&quot;)
+
+  assert_array_equals(parentEl.childNodes, [body])
+  assert_array_equals(body.childNodes, [row])
+  assert_array_equals(parentEl.rows, [row])
+}, &quot;insertRow should not copy prefixes&quot;)
+test(function() {
+  var table = document.createElement(&quot;table&quot;)
+  var head = table.appendChild(document.createElement(&quot;thead&quot;))
+  assert_array_equals(table.rows, [])
+
+  var row = table.insertRow(-1)
+  var body = row.parentNode
+  assert_array_equals(table.childNodes, [head, body])
+  assert_array_equals(head.childNodes, [])
+  assert_array_equals(body.childNodes, [row])
+  assert_array_equals(table.rows, [row])
+}, &quot;insertRow should insert into a tbody, not into a thead, if table.rows is empty&quot;)
+test(function() {
+  var table = document.createElement(&quot;table&quot;)
+  var foot = table.appendChild(document.createElement(&quot;tfoot&quot;))
+  assert_array_equals(table.rows, [])
+
+  var row = table.insertRow(-1)
+  var body = row.parentNode
+  assert_array_equals(table.childNodes, [foot, body])
+  assert_array_equals(foot.childNodes, [])
+  assert_array_equals(body.childNodes, [row])
+  assert_array_equals(table.rows, [row])
+}, &quot;insertRow should insert into a tbody, not into a tfoot, if table.rows is empty&quot;)
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementtablerowsexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/table-rows-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/table-rows-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/table-rows-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+
+PASS Children of table 
+PASS Children of thead 
+PASS Children of tbody 
+PASS Children of tfoot 
+PASS Complicated case 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementtablerowshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/table-rows.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/table-rows.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/table-rows.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,186 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;HTMLTableElement.rows&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+function assert_nodelist_equals(actual, expected) {
+  assert_equals(actual.length, expected.length);
+
+  for (var i = 0; i &lt; actual.length; ++i) {
+    assert_true(i in actual);
+    assert_true(actual.hasOwnProperty(i),
+                &quot;property &quot; + i + &quot; expected to be present on the object&quot;);
+    assert_equals(actual.item(i), expected[i]);
+    assert_equals(actual[i], expected[i]);
+  }
+}
+
+function test_table_simple(group, table) {
+  var foo1 = group.appendChild(document.createElement(&quot;tr&quot;));
+  foo1.id = &quot;foo&quot;;
+  var bar1 = group.appendChild(document.createElement(&quot;tr&quot;));
+  bar1.id = &quot;bar&quot;;
+  var foo2 = group.appendChild(document.createElement(&quot;tr&quot;));
+  foo2.id = &quot;foo&quot;;
+  var bar2 = group.appendChild(document.createElement(&quot;tr&quot;));
+  bar2.id = &quot;bar&quot;;
+
+  assert_true(table.rows instanceof HTMLCollection, &quot;table.rows should be a HTMLCollection.&quot;);
+  assert_nodelist_equals(table.rows, [foo1, bar1, foo2, bar2]);
+  assert_equals(table.rows.foo, foo1);
+  assert_equals(table.rows[&quot;foo&quot;], foo1);
+  assert_equals(table.rows.namedItem(&quot;foo&quot;), foo1);
+  assert_equals(table.rows.bar, bar1);
+  assert_equals(table.rows[&quot;bar&quot;], bar1);
+  assert_equals(table.rows.namedItem(&quot;bar&quot;), bar1);
+}
+test(function() {
+  var table = document.createElement(&quot;table&quot;);
+  test_table_simple(table, table);
+}, &quot;Children of table&quot;);
+test(function() {
+  var table = document.createElement(&quot;table&quot;);
+  var group = table.appendChild(document.createElement(&quot;thead&quot;));
+  test_table_simple(group, table);
+}, &quot;Children of thead&quot;);
+test(function() {
+  var table = document.createElement(&quot;table&quot;);
+  var group = table.appendChild(document.createElement(&quot;tbody&quot;));
+  test_table_simple(group, table);
+}, &quot;Children of tbody&quot;);
+test(function() {
+  var table = document.createElement(&quot;table&quot;);
+  var group = table.appendChild(document.createElement(&quot;tfoot&quot;));
+  test_table_simple(group, table);
+}, &quot;Children of tfoot&quot;);
+test(function() {
+  var table = document.createElement(&quot;table&quot;);
+  var orphan1 = table.appendChild(document.createElement(&quot;tr&quot;));
+  orphan1.id = &quot;orphan1&quot;;
+  var foot1 = table.appendChild(document.createElement(&quot;tfoot&quot;));
+  var orphan2 = table.appendChild(document.createElement(&quot;tr&quot;));
+  orphan2.id = &quot;orphan2&quot;;
+  var foot2 = table.appendChild(document.createElement(&quot;tfoot&quot;));
+  var orphan3 = table.appendChild(document.createElement(&quot;tr&quot;));
+  orphan3.id = &quot;orphan3&quot;;
+  var body1 = table.appendChild(document.createElement(&quot;tbody&quot;));
+  var orphan4 = table.appendChild(document.createElement(&quot;tr&quot;));
+  orphan4.id = &quot;orphan4&quot;;
+  var body2 = table.appendChild(document.createElement(&quot;tbody&quot;));
+  var orphan5 = table.appendChild(document.createElement(&quot;tr&quot;));
+  orphan5.id = &quot;orphan5&quot;;
+  var head1 = table.appendChild(document.createElement(&quot;thead&quot;));
+  var orphan6 = table.appendChild(document.createElement(&quot;tr&quot;));
+  orphan6.id = &quot;orphan6&quot;;
+  var head2 = table.appendChild(document.createElement(&quot;thead&quot;));
+  var orphan7 = table.appendChild(document.createElement(&quot;tr&quot;));
+  orphan7.id = &quot;orphan7&quot;;
+
+  var foot1row1 = foot1.appendChild(document.createElement(&quot;tr&quot;));
+  foot1row1.id = &quot;foot1row1&quot;;
+  var foot1row2 = foot1.appendChild(document.createElement(&quot;tr&quot;));
+  foot1row2.id = &quot;foot1row2&quot;;
+  var foot2row1 = foot2.appendChild(document.createElement(&quot;tr&quot;));
+  foot2row1.id = &quot;foot2row1&quot;;
+  var foot2row2 = foot2.appendChild(document.createElement(&quot;tr&quot;));
+  foot2row2.id = &quot;foot2row2&quot;;
+
+  var body1row1 = body1.appendChild(document.createElement(&quot;tr&quot;));
+  body1row1.id = &quot;body1row1&quot;;
+  var body1row2 = body1.appendChild(document.createElement(&quot;tr&quot;));
+  body1row2.id = &quot;body1row2&quot;;
+  var body2row1 = body2.appendChild(document.createElement(&quot;tr&quot;));
+  body2row1.id = &quot;body2row1&quot;;
+  var body2row2 = body2.appendChild(document.createElement(&quot;tr&quot;));
+  body2row2.id = &quot;body2row2&quot;;
+
+  var head1row1 = head1.appendChild(document.createElement(&quot;tr&quot;));
+  head1row1.id = &quot;head1row1&quot;;
+  var head1row2 = head1.appendChild(document.createElement(&quot;tr&quot;));
+  head1row2.id = &quot;head1row2&quot;;
+  var head2row1 = head2.appendChild(document.createElement(&quot;tr&quot;));
+  head2row1.id = &quot;head2row1&quot;;
+  var head2row2 = head2.appendChild(document.createElement(&quot;tr&quot;));
+  head2row2.id = &quot;head2row2&quot;;
+
+  // These elements should not end up in any collection.
+  table.appendChild(document.createElement(&quot;div&quot;))
+       .appendChild(document.createElement(&quot;tr&quot;));
+  foot1.appendChild(document.createElement(&quot;div&quot;))
+       .appendChild(document.createElement(&quot;tr&quot;));
+  body1.appendChild(document.createElement(&quot;div&quot;))
+       .appendChild(document.createElement(&quot;tr&quot;));
+  head1.appendChild(document.createElement(&quot;div&quot;))
+       .appendChild(document.createElement(&quot;tr&quot;));
+  table.appendChild(document.createElementNS(&quot;http://example.com/test&quot;, &quot;tr&quot;));
+  foot1.appendChild(document.createElementNS(&quot;http://example.com/test&quot;, &quot;tr&quot;));
+  body1.appendChild(document.createElementNS(&quot;http://example.com/test&quot;, &quot;tr&quot;));
+  head1.appendChild(document.createElementNS(&quot;http://example.com/test&quot;, &quot;tr&quot;));
+
+  assert_true(table.rows instanceof HTMLCollection, &quot;table.rows should be a HTMLCollection.&quot;);
+  assert_nodelist_equals(table.rows, [
+    // thead
+    head1row1,
+    head1row2,
+    head2row1,
+    head2row2,
+
+    // tbody + table
+    orphan1,
+    orphan2,
+    orphan3,
+    body1row1,
+    body1row2,
+    orphan4,
+    body2row1,
+    body2row2,
+    orphan5,
+    orphan6,
+    orphan7,
+
+    // tfoot
+    foot1row1,
+    foot1row2,
+    foot2row1,
+    foot2row2
+  ]);
+
+  var ids = [
+    &quot;orphan1&quot;,
+    &quot;orphan2&quot;,
+    &quot;orphan3&quot;,
+    &quot;orphan4&quot;,
+    &quot;orphan5&quot;,
+    &quot;orphan6&quot;,
+    &quot;orphan7&quot;,
+    &quot;foot1row1&quot;,
+    &quot;foot1row2&quot;,
+    &quot;foot2row1&quot;,
+    &quot;foot2row2&quot;,
+    &quot;body1row1&quot;,
+    &quot;body1row2&quot;,
+    &quot;body2row1&quot;,
+    &quot;body2row2&quot;,
+    &quot;head1row1&quot;,
+    &quot;head1row2&quot;,
+    &quot;head2row1&quot;,
+    &quot;head2row2&quot;
+  ];
+  ids.forEach(function(id) {
+    assert_equals(table.rows.namedItem(id).id, id);
+    assert_true(id in table.rows);
+    assert_equals(table.rows[id].id, id);
+    assert_true(id in table.rows);
+  });
+  while (table.firstChild) {
+    table.removeChild(table.firstChild);
+  }
+  ids.forEach(function(id) {
+    assert_equals(table.rows.namedItem(id), null);
+    assert_false(id in table.rows);
+    assert_equals(table.rows[id], undefined);
+    assert_false(id in table.rows);
+  });
+}, &quot;Complicated case&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetableelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,26 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/caption-methods.html
+/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/contains.json
+/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/createTBody.html
+/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/delete-caption.html
+/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/insertRow-method-01.html
+/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/insertRow-method-02.html
+/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/tBodies.html
+/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/table-insertRow.html
+/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-table-element/table-rows.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetbodyelementdeleteRowexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tbody-element/deleteRow-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tbody-element/deleteRow-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tbody-element/deleteRow-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+12345
+
+PASS HTMLTableSectionElement deleteRow(0) 
+PASS HTMLTableSectionElement deleteRow(-1) 
+PASS HTMLTableSectionElement deleteRow(rows.length) 
+PASS HTMLTableSectionElement deleteRow(-2) 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetbodyelementdeleteRowhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tbody-element/deleteRow.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tbody-element/deleteRow.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tbody-element/deleteRow.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,46 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;HTMLTableSectionElement#deleteRow&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+
+&lt;div id =&quot;log&quot;&gt;&lt;/div&gt;
+
+&lt;table&gt;
+  &lt;tbody id=&quot;testBody&quot;&gt;
+    &lt;tr&gt;&lt;td&gt;ABCDEF&lt;/td&gt;&lt;/tr&gt;
+    &lt;tr&gt;&lt;td&gt;12345&lt;/td&gt;&lt;/tr&gt;
+    &lt;tr&gt;&lt;td&gt;ABC12345DEF&lt;/td&gt;&lt;/tr&gt;
+  &lt;/tbody&gt;
+&lt;/table&gt;
+
+&lt;script&gt;
+
+var tbody = document.getElementById(&quot;testBody&quot;);
+
+test(function () {
+  tbody.deleteRow(0);
+  assert_equals(tbody.rows.length, 2);
+  assert_equals(tbody.rows[0].childNodes[0].innerHTML, &quot;12345&quot;);
+}, &quot;HTMLTableSectionElement deleteRow(0)&quot;);
+
+test(function () {
+  tbody.deleteRow(-1);
+  assert_equals(tbody.rows.length, 1);
+  assert_equals(tbody.rows[0].childNodes[0].innerHTML, &quot;12345&quot;);
+}, &quot;HTMLTableSectionElement deleteRow(-1)&quot;);
+
+test(function () {
+  assert_throws(&quot;IndexSizeError&quot;, function () {
+    tbody.deleteRow(tbody.rows.length);
+  });
+}, &quot;HTMLTableSectionElement deleteRow(rows.length)&quot;);
+
+test(function () {
+  assert_throws(&quot;IndexSizeError&quot;, function () {
+    tbody.deleteRow(-2);
+  });
+}, &quot;HTMLTableSectionElement deleteRow(-2)&quot;);
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetbodyelementinsertRowexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tbody-element/insertRow-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tbody-element/insertRow-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tbody-element/insertRow-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+ABCDEF
+
+PASS HTMLTableSectionElement insertRow(0) 
+PASS HTMLTableSectionElement insertRow(-1) 
+PASS HTMLTableSectionElement insertRow() 
+PASS HTMLTableSectionElement insertRow(-2) 
+PASS HTMLTableSectionElement insertRow(rows.length + 1) 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetbodyelementinsertRowhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tbody-element/insertRow.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tbody-element/insertRow.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tbody-element/insertRow.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,50 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;HTMLTableSectionElement#insertRow&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+
+&lt;div id =&quot;log&quot;&gt;&lt;/div&gt;
+
+&lt;table&gt;
+  &lt;tbody id=&quot;testBody&quot;&gt;
+    &lt;tr&gt;&lt;td&gt;ABCDEF&lt;/td&gt;&lt;/tr&gt;
+  &lt;/tbody&gt;
+&lt;/table&gt;
+
+&lt;script&gt;
+
+var tbody = document.getElementById(&quot;testBody&quot;);
+
+test(function () {
+  var trEle = tbody.insertRow(0);
+  assert_equals(tbody.rows[0], trEle);
+  assert_equals(tbody.rows.length, 2);
+}, &quot;HTMLTableSectionElement insertRow(0)&quot;);
+
+test(function () {
+  var trEle = tbody.insertRow(-1);
+  assert_equals(tbody.rows[tbody.rows.length - 1], trEle);
+  assert_equals(tbody.rows.length, 3);
+}, &quot;HTMLTableSectionElement insertRow(-1)&quot;);
+
+test(function () {
+  var trEle = tbody.insertRow();
+  assert_equals(tbody.rows[tbody.rows.length - 1], trEle);
+  assert_equals(tbody.rows.length, 4);
+}, &quot;HTMLTableSectionElement insertRow()&quot;);
+
+test(function () {
+  assert_throws(&quot;IndexSizeError&quot;, function () {
+    tbody.insertRow(-2);
+  });
+}, &quot;HTMLTableSectionElement insertRow(-2)&quot;);
+
+test(function () {
+  assert_throws(&quot;IndexSizeError&quot;, function () {
+    tbody.insertRow(tbody.rows.length + 1);
+  });
+}, &quot;HTMLTableSectionElement insertRow(rows.length + 1)&quot;);
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetbodyelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tbody-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tbody-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tbody-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tbody-element/deleteRow.html
+/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tbody-element/insertRow.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetrelementdeleteCellexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/deleteCell-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/deleteCell-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/deleteCell-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,7 @@
</span><ins>+12345
+
+PASS HTMLTableRowElement deleteCell(0) 
+PASS HTMLTableRowElement deleteCell(-1) 
+PASS HTMLTableRowElement deleteCell(-2) 
+PASS HTMLTableRowElement deleteCell(cells.length) 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetrelementdeleteCellhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/deleteCell.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/deleteCell.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/deleteCell.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,46 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;HTMLTableRowElement#deleteCell&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+
+&lt;table&gt;
+  &lt;tr id=&quot;testTr&quot;&gt;
+    &lt;td&gt;ABCDE&lt;/td&gt;
+    &lt;td&gt;12345&lt;/td&gt;
+    &lt;td&gt;ABC12&lt;/td&gt;
+  &lt;/tr&gt;
+&lt;/table&gt;
+
+&lt;script&gt;
+
+var tr = document.getElementById(&quot;testTr&quot;);
+
+test(function () {
+  tr.deleteCell(0);
+  assert_equals(tr.cells[0].innerHTML, &quot;12345&quot;);
+  assert_equals(tr.cells.length, 2);
+}, &quot;HTMLTableRowElement deleteCell(0)&quot;);
+
+test(function () {
+  tr.deleteCell(-1);
+  assert_equals(tr.cells[tr.cells.length - 1].innerHTML, &quot;12345&quot;);
+  assert_equals(tr.cells.length, 1);
+}, &quot;HTMLTableRowElement deleteCell(-1)&quot;);
+
+test(function () {
+  assert_throws(&quot;IndexSizeError&quot;, function () {
+    tr.deleteCell(-2);
+  });
+}, &quot;HTMLTableRowElement deleteCell(-2)&quot;);
+
+test(function () {
+  assert_throws(&quot;IndexSizeError&quot;, function () {
+    tr.deleteCell(tr.cells.length);
+  });
+}, &quot;HTMLTableRowElement deleteCell(cells.length)&quot;);
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetrelementinsertCellexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/insertCell-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/insertCell-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/insertCell-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+
+PASS HTMLTableRowElement insertCell(0) 
+PASS HTMLTableRowElement insertCell(-1) 
+PASS HTMLTableRowElement insertCell(cells.length) 
+PASS HTMLTableRowElement insertCell() 
+PASS HTMLTableRowElement insertCell(-2) 
+PASS HTMLTableRowElement insertCell(cells.length + 1) 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetrelementinsertCellhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/insertCell.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/insertCell.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/insertCell.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,55 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=&quot;utf-8&quot;&gt;
+&lt;title&gt;HTMLTableRowElement#insertCell&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+
+&lt;table&gt;
+  &lt;tr id=&quot;testTr&quot;&gt;&lt;/tr&gt;
+&lt;/table&gt;
+
+&lt;script&gt;
+
+var tr = document.getElementById(&quot;testTr&quot;);
+
+test(function () {
+  var tdEle = tr.insertCell(0);
+  assert_equals(tr.cells[0], tdEle);
+  assert_equals(tr.cells.length, 1);
+}, &quot;HTMLTableRowElement insertCell(0)&quot;);
+
+test(function () {
+  var tdEle = tr.insertCell(-1);
+  assert_equals(tr.cells[tr.cells.length - 1], tdEle);
+  assert_equals(tr.cells.length, 2);
+}, &quot;HTMLTableRowElement insertCell(-1)&quot;);
+
+
+test(function () {
+  var tdEle = tr.insertCell(tr.cells.length);
+  assert_equals(tr.cells[tr.cells.length - 1], tdEle);
+  assert_equals(tr.cells.length, 3);
+}, &quot;HTMLTableRowElement insertCell(cells.length)&quot;);
+
+test(function () {
+  var tdEle = tr.insertCell();
+  assert_equals(tr.cells[tr.cells.length - 1], tdEle);
+  assert_equals(tr.cells.length, 4);
+}, &quot;HTMLTableRowElement insertCell()&quot;);
+
+test(function () {
+  assert_throws(&quot;IndexSizeError&quot;, function () {
+    tr.insertCell(-2);
+  });
+}, &quot;HTMLTableRowElement insertCell(-2)&quot;);
+
+test(function () {
+  assert_throws(&quot;IndexSizeError&quot;, function () {
+    tr.insertCell(tr.cells.length + 1);
+  });
+}, &quot;HTMLTableRowElement insertCell(cells.length + 1)&quot;);
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetrelementrowIndexexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/rowIndex-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/rowIndex-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/rowIndex-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,14 @@
</span><ins>+
+PASS HTMLTableRowElement.rowIndex 
+PASS HTMLTableRowElement.rowIndex 1 
+PASS HTMLTableRowElement.rowIndex 2 
+PASS HTMLTableRowElement.rowIndex 3 
+FAIL HTMLTableRowElement.rowIndex 4 assert_equals: expected 0 but got -1
+PASS HTMLTableRowElement.rowIndex 5 
+PASS HTMLTableRowElement.rowIndex 6 
+PASS HTMLTableRowElement.rowIndex 7 
+PASS HTMLTableRowElement.rowIndex 8 
+PASS HTMLTableRowElement.rowIndex 9 
+PASS HTMLTableRowElement.rowIndex 10 
+PASS HTMLTableRowElement.rowIndex 11 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetrelementrowIndexhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/rowIndex.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/rowIndex.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/rowIndex.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,77 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;HTMLTableRowElement.rowIndex&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  var row = document.createElement(&quot;table&quot;)
+                    .appendChild(document.createElement(&quot;div&quot;))
+                    .appendChild(document.createElement(&quot;tr&quot;));
+  assert_equals(row.rowIndex, -1);
+});
+test(function() {
+  var row = document.createElement(&quot;table&quot;)
+                    .appendChild(document.createElement(&quot;thead&quot;))
+                    .appendChild(document.createElement(&quot;tr&quot;));
+  assert_equals(row.rowIndex, 0);
+});
+test(function() {
+  var row = document.createElement(&quot;table&quot;)
+                    .appendChild(document.createElement(&quot;tbody&quot;))
+                    .appendChild(document.createElement(&quot;tr&quot;));
+  assert_equals(row.rowIndex, 0);
+});
+test(function() {
+  var row = document.createElement(&quot;table&quot;)
+                    .appendChild(document.createElement(&quot;tfoot&quot;))
+                    .appendChild(document.createElement(&quot;tr&quot;));
+  assert_equals(row.rowIndex, 0);
+});
+test(function() {
+  var row = document.createElement(&quot;table&quot;)
+                    .appendChild(document.createElement(&quot;tr&quot;));
+  assert_equals(row.rowIndex, 0);
+});
+test(function() {
+  var row = document.createElementNS(&quot;&quot;, &quot;table&quot;)
+                    .appendChild(document.createElement(&quot;thead&quot;))
+                    .appendChild(document.createElement(&quot;tr&quot;));
+  assert_equals(row.rowIndex, -1);
+});
+test(function() {
+  var row = document.createElementNS(&quot;&quot;, &quot;table&quot;)
+                    .appendChild(document.createElement(&quot;tbody&quot;))
+                    .appendChild(document.createElement(&quot;tr&quot;));
+  assert_equals(row.rowIndex, -1);
+});
+test(function() {
+  var row = document.createElementNS(&quot;&quot;, &quot;table&quot;)
+                    .appendChild(document.createElement(&quot;tfoot&quot;))
+                    .appendChild(document.createElement(&quot;tr&quot;));
+  assert_equals(row.rowIndex, -1);
+});
+test(function() {
+  var row = document.createElementNS(&quot;&quot;, &quot;table&quot;)
+                    .appendChild(document.createElement(&quot;tr&quot;));
+  assert_equals(row.rowIndex, -1);
+});
+test(function() {
+  var row = document.createElement(&quot;table&quot;)
+                    .appendChild(document.createElementNS(&quot;&quot;, &quot;thead&quot;))
+                    .appendChild(document.createElement(&quot;tr&quot;));
+  assert_equals(row.rowIndex, -1);
+});
+test(function() {
+  var row = document.createElement(&quot;table&quot;)
+                    .appendChild(document.createElementNS(&quot;&quot;, &quot;tbody&quot;))
+                    .appendChild(document.createElement(&quot;tr&quot;));
+  assert_equals(row.rowIndex, -1);
+});
+test(function() {
+  var row = document.createElement(&quot;table&quot;)
+                    .appendChild(document.createElementNS(&quot;&quot;, &quot;tfoot&quot;))
+                    .appendChild(document.createElement(&quot;tr&quot;));
+  assert_equals(row.rowIndex, -1);
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetrelementsectionRowIndexexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/sectionRowIndex-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/sectionRowIndex-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/sectionRowIndex-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,21 @@
</span><ins>+
+PASS Row in thead in HTML 
+PASS Row in implicit tbody in HTML 
+PASS Other row in implicit tbody in HTML 
+PASS Row in explicit tbody in HTML 
+PASS Row in tfoot in HTML 
+PASS Row in thead in nested table in HTML 
+PASS Row in implicit tbody in nested table in HTML 
+PASS Row in explicit tbody in nested table in HTML 
+PASS Row in script-created table 
+FAIL Row in script-created div in table assert_equals: expected -1 but got 0
+PASS Row in script-created thead in table 
+PASS Row in script-created tbody in table 
+PASS Row in script-created tfoot in table 
+FAIL Row in script-created tr in tbody in table assert_equals: expected -1 but got 0
+FAIL Row in script-created td in tr in tbody in table assert_equals: expected -1 but got 0
+PASS Row in script-created nested table 
+PASS Row in script-created thead in nested table 
+PASS Row in script-created tbody in nested table 
+PASS Row in script-created tfoot in nested table 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetrelementsectionRowIndexhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/sectionRowIndex.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/sectionRowIndex.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/sectionRowIndex.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,130 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;HTMLTableRowElement.sectionRowIndex&lt;/title&gt;
+&lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+&lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+&lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+&lt;table&gt;
+  &lt;thead&gt;
+    &lt;tr id=&quot;ht1&quot;&gt;&lt;/tr&gt;
+  &lt;/thead&gt;
+  &lt;tr id=&quot;t1&quot;&gt;&lt;/tr&gt;
+  &lt;tr id=&quot;t2&quot;&gt;
+    &lt;td&gt;
+      &lt;table&gt;
+        &lt;thead&gt;
+          &lt;tr id=&quot;nht1&quot;&gt;&lt;/tr&gt;
+        &lt;/thead&gt;
+        &lt;tr&gt;&lt;/tr&gt;
+        &lt;tr id=&quot;nt1&quot;&gt;&lt;/tr&gt;
+        &lt;tbody&gt;
+          &lt;tr id=&quot;nbt1&quot;&gt;&lt;/tr&gt;
+        &lt;/tbody&gt;
+      &lt;/table&gt;
+    &lt;/td&gt;
+  &lt;/tr&gt;
+  &lt;tbody&gt;
+    &lt;tr&gt;&lt;/tr&gt;
+    &lt;tr id=&quot;bt1&quot;&gt;&lt;/tr&gt;
+  &lt;/tbody&gt;
+  &lt;tfoot&gt;
+    &lt;tr&gt;&lt;/tr&gt;
+    &lt;tr&gt;&lt;/tr&gt;
+    &lt;tr id=&quot;ft1&quot;&gt;&lt;/tr&gt;
+  &lt;/tfoot&gt;
+&lt;/table&gt;
+
+&lt;script&gt;
+test(function() {
+  var tHeadRow = document.getElementById('ht1');
+  assert_equals(tHeadRow.sectionRowIndex, 0);
+}, &quot;Row in thead in HTML&quot;);
+
+test(function() {
+  var tRow1 = document.getElementById('t1');
+  assert_equals(tRow1.sectionRowIndex, 0);
+}, &quot;Row in implicit tbody in HTML&quot;);
+
+test(function() {
+  var tRow2 = document.getElementById('t2');
+  assert_equals(tRow2.sectionRowIndex, 1);
+}, &quot;Other row in implicit tbody in HTML&quot;);
+
+test(function() {
+  var tBodyRow = document.getElementById('bt1');
+  assert_equals(tBodyRow.sectionRowIndex, 1);
+}, &quot;Row in explicit tbody in HTML&quot;);
+
+test(function() {
+  var tFootRow = document.getElementById('ft1');
+  assert_equals(tFootRow.sectionRowIndex, 2);
+}, &quot;Row in tfoot in HTML&quot;);
+
+test(function() {
+  var childHeadRow = document.getElementById('nht1');
+  assert_equals(childHeadRow.sectionRowIndex, 0);
+}, &quot;Row in thead in nested table in HTML&quot;);
+
+test(function() {
+  var childRow = document.getElementById('nt1');
+  assert_equals(childRow.sectionRowIndex, 1);
+}, &quot;Row in implicit tbody in nested table in HTML&quot;);
+
+test(function() {
+  var childBodyRow = document.getElementById('nbt1');
+  assert_equals(childBodyRow.sectionRowIndex, 0);
+}, &quot;Row in explicit tbody in nested table in HTML&quot;);
+
+/* script create element test */
+var mkTrElm = function (elst) {
+  var elm = document.createElement(&quot;table&quot;);
+  elst.forEach(function(item) {
+    elm = elm.appendChild(document.createElement(item));
+  });
+  return elm.appendChild(document.createElement(&quot;tr&quot;));
+};
+
+test(function() {
+  assert_equals(mkTrElm([]).sectionRowIndex, 0);
+}, &quot;Row in script-created table&quot;);
+
+test(function() {
+  assert_equals(mkTrElm([&quot;div&quot;]).sectionRowIndex, -1);
+}, &quot;Row in script-created div in table&quot;);
+
+test(function() {
+  assert_equals(mkTrElm([&quot;thead&quot;]).sectionRowIndex, 0);
+}, &quot;Row in script-created thead in table&quot;);
+
+test(function() {
+  assert_equals(mkTrElm([&quot;tbody&quot;]).sectionRowIndex, 0);
+}, &quot;Row in script-created tbody in table&quot;);
+
+test(function() {
+  assert_equals(mkTrElm([&quot;tfoot&quot;]).sectionRowIndex, 0);
+}, &quot;Row in script-created tfoot in table&quot;);
+
+test(function() {
+  assert_equals(mkTrElm([&quot;tbody&quot;, &quot;tr&quot;]).sectionRowIndex, -1);
+}, &quot;Row in script-created tr in tbody in table&quot;);
+
+test(function() {
+  assert_equals(mkTrElm([&quot;tbody&quot;, &quot;tr&quot;, &quot;td&quot;]).sectionRowIndex, -1);
+}, &quot;Row in script-created td in tr in tbody in table&quot;);
+
+test(function() {
+  assert_equals(mkTrElm([&quot;tbody&quot;, &quot;tr&quot;, &quot;td&quot;, &quot;table&quot;]).sectionRowIndex, 0);
+}, &quot;Row in script-created nested table&quot;);
+
+test(function() {
+  assert_equals(mkTrElm([&quot;tbody&quot;, &quot;tr&quot;, &quot;td&quot;, &quot;table&quot;, &quot;thead&quot;]).sectionRowIndex, 0);
+}, &quot;Row in script-created thead in nested table&quot;);
+
+test(function() {
+  assert_equals(mkTrElm([&quot;tbody&quot;, &quot;tr&quot;, &quot;td&quot;, &quot;table&quot;, &quot;tbody&quot;]).sectionRowIndex, 0);
+}, &quot;Row in script-created tbody in nested table&quot;);
+
+test(function() {
+  assert_equals(mkTrElm([&quot;tbody&quot;, &quot;tr&quot;, &quot;td&quot;, &quot;table&quot;, &quot;tfoot&quot;]).sectionRowIndex, 0);
+}, &quot;Row in script-created tfoot in nested table&quot;);
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstabulardatathetrelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,21 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/deleteCell.html
+/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/insertCell.html
+/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/rowIndex.html
+/LayoutTests/http/tests/w3c/html/semantics/tabular-data/the-tr-element/sectionRowIndex.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticstheaelementastringifierexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a-stringifier-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a-stringifier-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a-stringifier-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,13 @@
</span><ins>+
+PASS HTMLAnchorElement stringifier 
+PASS HTMLAnchorElement stringifier 1 
+PASS HTMLAnchorElement stringifier 2 
+PASS HTMLAnchorElement stringifier 3 
+PASS HTMLAnchorElement stringifier 4 
+PASS HTMLAnchorElement stringifier 5 
+PASS HTMLAnchorElement stringifier 6 
+PASS HTMLAnchorElement stringifier 7 
+PASS HTMLAnchorElement stringifier 8 
+PASS HTMLAnchorElement stringifier 9 
+PASS HTMLAnchorElement stringifier 10 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticstheaelementastringifierhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a-stringifier.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a-stringifier.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a-stringifier.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,16 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;HTMLAnchorElement stringifier&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://heycam.github.io/webidl/#es-stringifier&quot;&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;script src=/w3c/resources/stringifiers.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  test_stringifier_attribute(document.createElement(&quot;a&quot;), &quot;href&quot;, false);
+  var a = document.createElement(&quot;a&quot;);
+  a.setAttribute(&quot;href&quot;, &quot;foo&quot;);
+  test_stringifier_attribute(a, &quot;href&quot;, false);
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticstheaelementatextgetter01expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a.text-getter-01-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a.text-getter-01-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a.text-getter-01-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+a b c a b c a b c a c a b c
+
+PASS HTMLAnchorElement.text getting 
+PASS Test for anchor 0 
+PASS Test for anchor 1 
+PASS Test for anchor 2 
+PASS Test for anchor 3 
+PASS Test for anchor 4 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticstheaelementatextgetter01html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a.text-getter-01.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a.text-getter-01.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a.text-getter-01.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,34 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;HTMLAnchorElement.text getting&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-a-text&quot;&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;script&gt;var b&lt;/script&gt;
+&lt;div id=&quot;test&quot;&gt;
+&lt;a href=&quot;a&quot;&gt;a b c &lt;/a&gt;
+&lt;a href=&quot;b&quot;&gt;a &lt;!-- b --&gt;b c &lt;/a&gt;
+&lt;a href=&quot;c&quot;&gt;a &lt;b&gt;b&lt;/b&gt; c &lt;/a&gt;
+&lt;a href=&quot;d&quot;&gt;a &lt;script&gt;b&lt;/script&gt; c &lt;/a&gt;
+&lt;script&gt;
+var e = document.getElementById(&quot;test&quot;)
+                .appendChild(document.createElement(&quot;a&quot;));
+e.href = &quot;d&quot;;
+e.appendChild(document.createTextNode(&quot;a &quot;));
+e.appendChild(document.createTextNode(&quot;b &quot;));
+e.appendChild(document.createTextNode(&quot;c &quot;));
+&lt;/script&gt;
+&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  var list = document.getElementById(&quot;test&quot;)
+                     .getElementsByTagName(&quot;a&quot;);
+  for (var i = 0, il = list.length; i &lt; il; ++i) {
+    test(function() {
+      assert_equals(list[i].text, list[i].textContent);
+      assert_equals(list[i].text, &quot;a b c &quot;);
+    }, &quot;Test for anchor &quot; + i);
+  }
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticstheaelementatextsetter01expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a.text-setter-01-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a.text-setter-01-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a.text-setter-01-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+y y y y
+
+PASS HTMLAnchorElement.text setting 
+PASS Test for anchor 0 
+PASS Test for anchor 1 
+PASS Test for anchor 2 
+PASS Test for anchor 3 
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticstheaelementatextsetter01html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a.text-setter-01.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a.text-setter-01.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a.text-setter-01.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,41 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;title&gt;HTMLAnchorElement.text setting&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Ms2ger&quot; href=&quot;mailto:ms2ger@gmail.com&quot;&gt;
+&lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#dom-a-text&quot;&gt;
+&lt;script src=/resources/testharness.js&gt;&lt;/script&gt;
+&lt;script src=/resources/testharnessreport.js&gt;&lt;/script&gt;
+&lt;div id=log&gt;&lt;/div&gt;
+&lt;div id=&quot;test&quot;&gt;
+&lt;a href=&quot;a&quot;&gt;a b c&lt;/a&gt;
+&lt;a href=&quot;b&quot;&gt;a &lt;!-- b --&gt; c&lt;/a&gt;
+&lt;a href=&quot;c&quot;&gt;a &lt;b&gt;b&lt;/b&gt; c&lt;/a&gt;
+&lt;script&gt;
+var d = document.getElementById(&quot;test&quot;)
+                .appendChild(document.createElement(&quot;a&quot;));
+d.href = &quot;d&quot;;
+d.appendChild(document.createTextNode(&quot;a &quot;));
+d.appendChild(document.createTextNode(&quot;b &quot;));
+d.appendChild(document.createTextNode(&quot;c &quot;));
+&lt;/script&gt;
+&lt;/div&gt;
+&lt;script&gt;
+test(function() {
+  var list = document.getElementById(&quot;test&quot;)
+                     .getElementsByTagName(&quot;a&quot;);
+  for (var i = 0, il = list.length; i &lt; il; ++i) {
+    test(function() {
+      list[i].text = &quot;x&quot;;
+      assert_equals(list[i].text, &quot;x&quot;);
+      assert_equals(list[i].textContent, &quot;x&quot;);
+      assert_equals(list[i].firstChild.data, &quot;x&quot;);
+      assert_equals(list[i].childNodes.length, 1);
+
+      list[i].textContent = &quot;y&quot;;
+      assert_equals(list[i].text, &quot;y&quot;);
+      assert_equals(list[i].textContent, &quot;y&quot;);
+      assert_equals(list[i].firstChild.data, &quot;y&quot;);
+      assert_equals(list[i].childNodes.length, 1);
+    }, &quot;Test for anchor &quot; + i);
+  }
+});
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticstheaelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,20 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a-stringifier.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a.text-getter-01.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-a-element/a.text-setter-01.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdiautodirdefaultexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-auto-dir-default-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-auto-dir-default-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-auto-dir-default-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,36 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 500px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[:)], [+- a &amp;#x05D1;], [d &amp;#x05D2; 1]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[d &amp;#x05D2; 1] ,[+- a &amp;#x05D1;] ,[:)]&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[:)], [+- a &amp;#x05D1;], [d &amp;#x05D2; 1]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[d &amp;#x05D2; 1] ,[+- a &amp;#x05D1;] ,[:)]&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdiautodirdefaulthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-auto-dir-default.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-auto-dir-default.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-auto-dir-default.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,46 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;/&gt;
+    &lt;title&gt;HTML Test: BDI: has dir=auto by default&lt;/title&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;bdi-auto-dir-default-ref.html&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;/&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-bdi-element&quot;/&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;
+      'The dir global attribute defaults to auto on this element (it never inherits from the parent
+      element like with other elements).'&quot;/&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 500px;
+        margin: 20px;
+              }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - 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 be LTR by default;
+        - 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.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&lt;bdi&gt;[:)]&lt;/bdi&gt;, &lt;bdi&gt;[+- a &amp;#x05D1;]&lt;/bdi&gt;, &lt;bdi&gt;[1 &amp;#x05D2; d]&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&lt;bdi&gt;[:)]&lt;/bdi&gt;, &lt;bdi&gt;[+- a &amp;#x05D1;]&lt;/bdi&gt;, &lt;bdi&gt;[1 &amp;#x05D2; d]&lt;/bdi&gt;...&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[:)], [+- a &amp;#x05D1;], [d &amp;#x05D2; 1]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[d &amp;#x05D2; 1] ,[+- a &amp;#x05D1;] ,[:)]&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutralmissingpdfexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-missing-pdf-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-missing-pdf-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-missing-pdf-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,44 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;cb&amp;#x05D0;de...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;cb&amp;#x05D0;de...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;cb&amp;#x05D0;de...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...&amp;#x05D4;&amp;#x05D3;a&amp;#x05D1;&amp;#x05D2;&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...&amp;#x05D4;&amp;#x05D3;a&amp;#x05D1;&amp;#x05D2;&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...&amp;#x05D4;&amp;#x05D3;a&amp;#x05D1;&amp;#x05D2;&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;cb&amp;#x05D0;de...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;cb&amp;#x05D0;de...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;cb&amp;#x05D0;de...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...&amp;#x05D4;&amp;#x05D3;a&amp;#x05D1;&amp;#x05D2;&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...&amp;#x05D4;&amp;#x05D3;a&amp;#x05D1;&amp;#x05D2;&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...&amp;#x05D4;&amp;#x05D3;a&amp;#x05D1;&amp;#x05D2;&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutralmissingpdfhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-missing-pdf.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-missing-pdf.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-missing-pdf.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,56 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;/&gt;
+    &lt;title&gt;HTML Test: BDI: neutral when contains LRO or RLO without PDF&lt;/title&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;bdi-neutral-missing-pdf-ref.html&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;/&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-bdi-element&quot;/&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;
+      'For the purposes of applying the bidirectional algorithm to the paragraph-level
+      container that a bdi element finds itself within, the bdi element must be treated
+      like a U+FFFC OBJECT REPLACEMENT CHARACTER.'
+      Thus, if a BDI contains LRO or RLO characters lacking a matching PDF, these must not affect
+      the visual ordering of the content outside the BDI.&quot;/&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202E; - the RLO (right-to-left-override) formatting character.
+        &amp;#x202C; - 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.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&lt;bdi&gt;&amp;#x05D0;&amp;#x202E;bc&lt;/bdi&gt;de...&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&lt;bdi dir=&quot;ltr&quot;&gt;&amp;#x05D0;&amp;#x202E;bc&lt;/bdi&gt;de...&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&lt;bdi dir=&quot;rtl&quot;&gt;&amp;#x05D0;&amp;#x202E;bc&lt;/bdi&gt;de...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&lt;bdi&gt;a&amp;#x202D;&amp;#x05D1;&amp;#x05D2;&lt;/bdi&gt;&amp;#x05D3;&amp;#x05D4;...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&lt;bdi dir=&quot;ltr&quot;&gt;a&amp;#x202D;&amp;#x05D1;&amp;#x05D2;&lt;/bdi&gt;&amp;#x05D3;&amp;#x05D4;...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&lt;bdi dir=&quot;rtl&quot;&gt;a&amp;#x202D;&amp;#x05D1;&amp;#x05D2;&lt;/bdi&gt;&amp;#x05D3;&amp;#x05D4;...&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;cb&amp;#x05D0;de...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;cb&amp;#x05D0;de...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;cb&amp;#x05D0;de...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...&amp;#x05D4;&amp;#x05D3;a&amp;#x05D1;&amp;#x05D2;&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...&amp;#x05D4;&amp;#x05D3;a&amp;#x05D1;&amp;#x05D2;&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...&amp;#x05D4;&amp;#x05D3;a&amp;#x05D1;&amp;#x05D2;&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutralnestedexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-nested-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-nested-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-nested-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,44 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 500px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;1 + [a + [3 + [b + 4] + &amp;#x05D1;] + 2] + &amp;#x05D0;&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;1 + [a + [3 + [b + 4] + &amp;#x05D1;] + 2] + &amp;#x05D0;&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;1 + [a + [3 + [b + 4] + &amp;#x05D1;] + 2] + &amp;#x05D0;&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;a + [1 + [b + [3 + &amp;#x05D1;] + 2] + &amp;#x05D0;] + 0&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;a + [1 + [b + [3 + &amp;#x05D1;] + 2] + &amp;#x05D0;] + 0&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;a + [1 + [b + [3 + &amp;#x05D1;] + 2] + &amp;#x05D0;] + 0&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;1 + [a + [3 + [b + 4] + &amp;#x05D1;] + 2] + &amp;#x05D0;&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;1 + [a + [3 + [b + 4] + &amp;#x05D1;] + 2] + &amp;#x05D0;&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;1 + [a + [3 + [b + 4] + &amp;#x05D1;] + 2] + &amp;#x05D0;&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;a + [1 + [b + [3 + &amp;#x05D1;] + 2] + &amp;#x05D0;] + 0&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;a + [1 + [b + [3 + &amp;#x05D1;] + 2] + &amp;#x05D0;] + 0&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;a + [1 + [b + [3 + &amp;#x05D1;] + 2] + &amp;#x05D0;] + 0&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutralnestedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-nested.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-nested.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-nested.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,52 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;/&gt;
+    &lt;title&gt;HTML Test: BDI: neutral when nested&lt;/title&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;bdi-neutral-nested-ref.html&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;/&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-bdi-element&quot;/&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;
+      'For the purposes of applying the bidirectional algorithm to the paragraph-level
+      container that a bdi element finds itself within, the bdi element must be treated
+      like a U+FFFC OBJECT REPLACEMENT CHARACTER.'
+      This must apply when a BDI is nested within a BDI.&quot;/&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 500px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x05D0; + &lt;bdi&gt;[a + &lt;bdi&gt;[&amp;#x05D1; + &lt;bdi&gt;[b + 4]&lt;/bdi&gt; + 3]&lt;/bdi&gt; + 2]&lt;/bdi&gt; + 1&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x05D0; + &lt;bdi dir=&quot;rtl&quot;&gt;[a + &lt;bdi dir=&quot;ltr&quot;&gt;[&amp;#x05D1; + &lt;bdi dir=&quot;rtl&quot;&gt;[b + 4]&lt;/bdi&gt; + 3]&lt;/bdi&gt; + 2]&lt;/bdi&gt; + 1&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x05D0; + &lt;bdi dir=&quot;ltr&quot;&gt;[a + &lt;bdi dir=&quot;rtl&quot;&gt;[&amp;#x05D1; + &lt;bdi dir=&quot;ltr&quot;&gt;[b + 4]&lt;/bdi&gt; + 3]&lt;/bdi&gt; + 2]&lt;/bdi&gt; + 1&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;a + &lt;bdi&gt;[&amp;#x05D0; + &lt;bdi&gt;[b + &lt;bdi&gt;[&amp;#x05D1; + 3]&lt;/bdi&gt; + 2]&lt;/bdi&gt; + 1]&lt;/bdi&gt; + 0&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;a + &lt;bdi dir=&quot;ltr&quot;&gt;[&amp;#x05D0; + &lt;bdi dir=&quot;rtl&quot;&gt;[b + &lt;bdi dir=&quot;ltr&quot;&gt;[&amp;#x05D1; + 3]&lt;/bdi&gt; + 2]&lt;/bdi&gt; + 1]&lt;/bdi&gt; + 0&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;a + &lt;bdi dir=&quot;rtl&quot;&gt;[&amp;#x05D0; + &lt;bdi dir=&quot;ltr&quot;&gt;[b + &lt;bdi dir=&quot;rtl&quot;&gt;[&amp;#x05D1; + 3]&lt;/bdi&gt; + 2]&lt;/bdi&gt; + 1]&lt;/bdi&gt; + 0&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;1 + [a + [3 + [b + 4] + &amp;#x05D1;] + 2] + &amp;#x05D0;&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;1 + [a + [3 + [b + 4] + &amp;#x05D1;] + 2] + &amp;#x05D0;&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;1 + [a + [3 + [b + 4] + &amp;#x05D1;] + 2] + &amp;#x05D0;&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;a + [1 + [b + [3 + &amp;#x05D1;] + 2] + &amp;#x05D0;] + 0&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;a + [1 + [b + [3 + &amp;#x05D1;] + 2] + &amp;#x05D0;] + 0&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;a + [1 + [b + [3 + &amp;#x05D1;] + 2] + &amp;#x05D0;] + 0&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutralnumberexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-number-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-number-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-number-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,44 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0; - [1]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0; - [1]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0; - [1]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[1] - a&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[1] - a&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[1] - a&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0; - [1]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0; - [1]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0; - [1]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[1] - a&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[1] - a&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[1] - a&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutralnumberhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-number.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-number.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-number.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,53 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;/&gt;
+    &lt;title&gt;HTML Test: BDI: neutral when number&lt;/title&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;bdi-neutral-number-ref.html&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;/&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-bdi-element&quot;/&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;
+      'For the purposes of applying the bidirectional algorithm to the paragraph-level
+      container that a bdi element finds itself within, the bdi element must be treated
+      like a U+FFFC OBJECT REPLACEMENT CHARACTER.'&quot;/&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - 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 &amp;#x05D0;.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x05D0; - &lt;bdi&gt;[1]&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x05D0; - &lt;bdi dir=&quot;ltr&quot;&gt;[1]&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x05D0; - &lt;bdi dir=&quot;rtl&quot;&gt;[1]&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;a - &lt;bdi&gt;[1]&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;a - &lt;bdi dir=&quot;ltr&quot;&gt;[1]&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;a - &lt;bdi dir=&quot;rtl&quot;&gt;[1]&lt;/bdi&gt;...&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0; - [1]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0; - [1]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0; - [1]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[1] - a&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[1] - a&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[1] - a&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutralseparateexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-separate-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-separate-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-separate-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,36 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 500px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0; [1 b] c [d &amp;#x05D4;] &amp;#x05D5;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...f [e &amp;#x05D3;] &amp;#x05D2; [&amp;#x05D1; 1] a&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0; [1 b] c [d &amp;#x05D4;] &amp;#x05D5;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...f [e &amp;#x05D3;] &amp;#x05D2; [&amp;#x05D1; 1] a&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutralseparatehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-separate.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-separate.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-separate.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,47 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;/&gt;
+    &lt;title&gt;HTML Test: BDI: paragraph-level container&lt;/title&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;bdi-neutral-separate-ref.html&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;/&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-bdi-element&quot;/&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;
+      'For the purposes of applying the bidirectional algorithm to the paragraph-level
+      container that a bdi element finds itself within, the bdi element must be treated
+      like a U+FFFC OBJECT REPLACEMENT CHARACTER.'
+      Thus, under no circumstances should any part of the content outside a BDI be visually
+      reordered inside the BDI's content.&quot;/&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 500px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+      If the BDIs in the test's first DIV were just SPANs, the &amp;#x05D0; would appear between the 1
+      and the b, and the &amp;#x05D5; between the d and the &amp;#x05D4;.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x05D0; &lt;bdi&gt;[1 b]&lt;/bdi&gt; c &lt;bdi&gt;[d &amp;#x05D4;]&lt;/bdi&gt; &amp;#x05D5;...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;a &lt;bdi&gt;[1 &amp;#x05D1;]&lt;/bdi&gt; &amp;#x05D2; &lt;bdi&gt;[&amp;#x05D3; e]&lt;/bdi&gt; f...&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0; [1 b] c [d &amp;#x05D4;] &amp;#x05D5;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...f [e &amp;#x05D3;] &amp;#x05D2; [&amp;#x05D1; 1] a&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltoanotherbdi1expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-1-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-1-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-1-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,47 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot; /&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot; /&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Shai Berger&quot; href=&quot;mailto:shai@platonix.com&quot; /&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot; /&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments {
+        display: none;
+      }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;Test passes if the two boxes below look exactly the same.&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] &amp;gt; [&amp;#x05D1;]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] &amp;gt; [&amp;#x05D1;]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] &amp;gt; [&amp;#x05D1;]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[b] &amp;lt; [a]&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[b] &amp;lt; [a]&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[b] &amp;lt; [a]&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] &amp;gt; [&amp;#x05D1;]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] &amp;gt; [&amp;#x05D1;]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] &amp;gt; [&amp;#x05D1;]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[b] &amp;lt; [a]&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[b] &amp;lt; [a]&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[b] &amp;lt; [a]&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltoanotherbdi1html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-1.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-1.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-1.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,58 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot; /&gt;
+    &lt;title&gt;HTML Test: BDI: neutral to another BDI&lt;/title&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;bdi-neutral-to-another-bdi-1-ref.html&quot; /&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot; /&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Shai Berger&quot; href=&quot;mailto:shai@platonix.com&quot; /&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot; /&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-bdi-element&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;
+      'For the purposes of applying the bidirectional algorithm to the paragraph-level
+      container that a bdi element finds itself within, the bdi element must be treated
+      like a U+FFFC OBJECT REPLACEMENT CHARACTER.'
+      Thus, when a BDI contains text of the same strong direction as another BDI following it, the
+      two must not form a directional run as would be the case if the BDIs were just SPANs.&quot; /&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments {
+        display: none;
+      }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;Test passes if the two boxes below look exactly the same.&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+      If the BDIs in the test's first DIV were SPANs, the &amp;#x05D1; would be rendered to the left
+      of the &amp;#x05D0;.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&lt;bdi&gt;[&amp;#x05D0;]&lt;/bdi&gt; &amp;gt; &lt;bdi&gt;[&amp;#x05D1;]&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&lt;bdi dir=&quot;rtl&quot;&gt;[&amp;#x05D0;]&lt;/bdi&gt; &amp;gt; &lt;bdi dir=&quot;rtl&quot;&gt;[&amp;#x05D1;]&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&lt;bdi dir=&quot;ltr&quot;&gt;[&amp;#x05D0;]&lt;/bdi&gt; &amp;gt; &lt;bdi dir=&quot;ltr&quot;&gt;[&amp;#x05D1;]&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&lt;bdi&gt;[a]&lt;/bdi&gt; &amp;gt; &lt;bdi&gt;[b]&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&lt;bdi dir=&quot;ltr&quot;&gt;[a]&lt;/bdi&gt; &amp;gt; &lt;bdi dir=&quot;ltr&quot;&gt;[b]&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&lt;bdi dir=&quot;rtl&quot;&gt;[a]&lt;/bdi&gt; &amp;gt; &lt;bdi dir=&quot;rtl&quot;&gt;[b]&lt;/bdi&gt;...&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] &amp;gt; [&amp;#x05D1;]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] &amp;gt; [&amp;#x05D1;]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] &amp;gt; [&amp;#x05D1;]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[b] &amp;lt; [a]&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[b] &amp;lt; [a]&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[b] &amp;lt; [a]&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltoanotherbdi2expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-2-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-2-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-2-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,47 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot; /&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot; /&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Shai Berger&quot; href=&quot;mailto:shai@platonix.com&quot; /&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot; /&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments {
+        display: none;
+      }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;Test passes if the two boxes below look exactly the same.&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltoanotherbdi2html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-2.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-2.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-2.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,59 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot; /&gt;
+    &lt;title&gt;HTML Test: BDI: neutral to another immediately following BDI&lt;/title&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;bdi-neutral-to-another-bdi-2-ref.html&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot; /&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Shai Berger&quot; href=&quot;mailto:shai@platonix.com&quot; /&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot; /&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-bdi-element&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;
+      'For the purposes of applying the bidirectional algorithm to the paragraph-level
+      container that a bdi element finds itself within, the bdi element must be treated
+      like a U+FFFC OBJECT REPLACEMENT CHARACTER.'
+      Thus, when a BDI contains text of the same strong direction as another BDI following it, the
+      two must not form a directional run as would be the case if the BDIs were just SPANs, even if
+      the two BDIs are not separated by anything at all.&quot; /&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments {
+        display: none;
+      }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;Test passes if the two boxes below look exactly the same.&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+      If the BDIs in the test's first DIV were SPANs, the &amp;#x05D1; would be rendered to the left of
+      the &amp;#x05D0;.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&lt;bdi&gt;&amp;#x05D0;&lt;/bdi&gt;&lt;bdi&gt;&amp;#x05D1;&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&lt;bdi dir=&quot;rtl&quot;&gt;&amp;#x05D0;&lt;/bdi&gt;&lt;bdi dir=&quot;rtl&quot;&gt;&amp;#x05D1;&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&lt;bdi dir=&quot;ltr&quot;&gt;&amp;#x05D0;&lt;/bdi&gt;&lt;bdi dir=&quot;ltr&quot;&gt;&amp;#x05D1;&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&lt;bdi&gt;a&lt;/bdi&gt;&lt;bdi&gt;b&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&lt;bdi dir=&quot;ltr&quot;&gt;a&lt;/bdi&gt;&lt;bdi dir=&quot;ltr&quot;&gt;b&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&lt;bdi dir=&quot;rtl&quot;&gt;a&lt;/bdi&gt;&lt;bdi dir=&quot;rtl&quot;&gt;b&lt;/bdi&gt;...&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltoletterfollowing1expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-1-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-1-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-1-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,45 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Shai Berger&quot; href=&quot;mailto:shai@platonix.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] &amp;gt; &amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] &amp;gt; &amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] &amp;gt; &amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...b &amp;lt; [a]&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...b &amp;lt; [a]&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...b &amp;lt; [a]&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] &amp;gt; &amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] &amp;gt; &amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] &amp;gt; &amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...b &amp;lt; [a]&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...b &amp;lt; [a]&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...b &amp;lt; [a]&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltoletterfollowing1html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-1.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-1.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-1.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,54 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;/&gt;
+    &lt;title&gt;HTML Test: BDI: neutral to following letter&lt;/title&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;bdi-neutral-to-letter-following-1-ref.html&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Shai Berger&quot; href=&quot;mailto:shai@platonix.com&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;/&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-bdi-element&quot;/&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;
+      'For the purposes of applying the bidirectional algorithm to the paragraph-level
+      container that a bdi element finds itself within, the bdi element must be treated
+      like a U+FFFC OBJECT REPLACEMENT CHARACTER.'&quot;/&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+      If the BDI in the test's first DIV were a SPAN, the &amp;#x05D1; would be rendered to the left
+      of the &amp;#x05D0;
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&lt;bdi&gt;[&amp;#x05D0;]&lt;/bdi&gt; &amp;gt; &amp;#x05D1;...&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&lt;bdi dir=&quot;rtl&quot;&gt;[&amp;#x05D0;]&lt;/bdi&gt; &amp;gt; &amp;#x05D1;...&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&lt;bdi dir=&quot;ltr&quot;&gt;[&amp;#x05D0;]&lt;/bdi&gt; &amp;gt; &amp;#x05D1;...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&lt;bdi&gt;[a]&lt;/bdi&gt; &amp;gt; b...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&lt;bdi dir=&quot;ltr&quot;&gt;[a]&lt;/bdi&gt; &amp;gt; b...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&lt;bdi dir=&quot;rtl&quot;&gt;[a]&lt;/bdi&gt; &amp;gt; b...&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] &amp;gt; &amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] &amp;gt; &amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] &amp;gt; &amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...b &amp;lt; [a]&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...b &amp;lt; [a]&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...b &amp;lt; [a]&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltoletterfollowing2expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-2-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-2-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-2-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,45 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Shai Berger&quot; href=&quot;mailto:shai@platonix.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltoletterfollowing2html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-2.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-2.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-2.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,54 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;/&gt;
+    &lt;title&gt;HTML Test: BDI: neutral to immediately following letter&lt;/title&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;bdi-neutral-to-letter-following-2-ref.html&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Shai Berger&quot; href=&quot;mailto:shai@platonix.com&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;/&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-bdi-element&quot;/&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;
+      'For the purposes of applying the bidirectional algorithm to the paragraph-level
+      container that a bdi element finds itself within, the bdi element must be treated
+      like a U+FFFC OBJECT REPLACEMENT CHARACTER.'&quot;/&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+      If the BDI in the following DIV were a SPAN, the &amp;#x05D1; would be rendered to the left
+      of the &amp;#x05D0;
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&lt;bdi&gt;&amp;#x05D0;&lt;/bdi&gt;&amp;#x05D1;...&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&lt;bdi dir=&quot;rtl&quot;&gt;&amp;#x05D0;&lt;/bdi&gt;&amp;#x05D1;...&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&lt;bdi dir=&quot;ltr&quot;&gt;&amp;#x05D0;&lt;/bdi&gt;&amp;#x05D1;...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&lt;bdi&gt;a&lt;/bdi&gt;b...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&lt;bdi dir=&quot;ltr&quot;&gt;a&lt;/bdi&gt;b...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&lt;bdi dir=&quot;rtl&quot;&gt;a&lt;/bdi&gt;b...&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltoletterpreceding1expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-1-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-1-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-1-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,45 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Shai Berger&quot; href=&quot;mailto:shai@platonix.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0; &amp;gt; [&amp;#x05D1;]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0; &amp;gt; [&amp;#x05D1;]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0; &amp;gt; [&amp;#x05D1;]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[b] &amp;lt; a&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[b] &amp;lt; a&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[b] &amp;lt; a&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0; &amp;gt; [&amp;#x05D1;]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0; &amp;gt; [&amp;#x05D1;]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0; &amp;gt; [&amp;#x05D1;]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[b] &amp;lt; a&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[b] &amp;lt; a&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[b] &amp;lt; a&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltoletterpreceding1html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-1.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-1.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-1.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,54 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;/&gt;
+    &lt;title&gt;HTML Test: BDI: neutral to preceding letter&lt;/title&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;bdi-neutral-to-letter-preceding-1-ref.html&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Shai Berger&quot; href=&quot;mailto:shai@platonix.com&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;/&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-bdi-element&quot;/&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;
+      'For the purposes of applying the bidirectional algorithm to the paragraph-level
+      container that a bdi element finds itself within, the bdi element must be treated
+      like a U+FFFC OBJECT REPLACEMENT CHARACTER.'&quot;/&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+      If the BDI in the test's first DIV were a SPAN, the &amp;#x05D1; would be rendered to the left
+      of the &amp;#x05D0;
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x05D0; &amp;gt; &lt;bdi&gt;[&amp;#x05D1;]&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x05D0; &amp;gt; &lt;bdi dir=&quot;rtl&quot;&gt;[&amp;#x05D1;]&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x05D0; &amp;gt; &lt;bdi dir=&quot;ltr&quot;&gt;[&amp;#x05D1;]&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;a &amp;gt; &lt;bdi&gt;[b]&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;a &amp;gt; &lt;bdi dir=&quot;ltr&quot;&gt;[b]&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;a &amp;gt; &lt;bdi dir=&quot;rtl&quot;&gt;[b]&lt;/bdi&gt;...&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0; &amp;gt; [&amp;#x05D1;]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0; &amp;gt; [&amp;#x05D1;]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0; &amp;gt; [&amp;#x05D1;]...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[b] &amp;lt; a&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[b] &amp;lt; a&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...[b] &amp;lt; a&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltoletterpreceding2expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-2-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-2-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-2-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,45 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Shai Berger&quot; href=&quot;mailto:shai@platonix.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltoletterpreceding2html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-2.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-2.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-2.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,54 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;/&gt;
+    &lt;title&gt;HTML Test: BDI: neutral to immediately preceding letter&lt;/title&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;bdi-neutral-to-letter-preceding-2-ref.html&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Shai Berger&quot; href=&quot;mailto:shai@platonix.com&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;/&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-bdi-element&quot;/&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;
+      'For the purposes of applying the bidirectional algorithm to the paragraph-level
+      container that a bdi element finds itself within, the bdi element must be treated
+      like a U+FFFC OBJECT REPLACEMENT CHARACTER.'&quot;/&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+      If the BDI in the test's first DIV were a SPAN, the &amp;#x05D1; would be rendered to the left
+      of the &amp;#x05D0;
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x05D0;&lt;bdi&gt;&amp;#x05D1;&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x05D0;&lt;bdi dir=&quot;rtl&quot;&gt;&amp;#x05D1;&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x05D0;&lt;bdi dir=&quot;ltr&quot;&gt;&amp;#x05D1;&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;a&lt;bdi&gt;b&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;a&lt;bdi dir=&quot;ltr&quot;&gt;b&lt;/bdi&gt;...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;a&lt;bdi dir=&quot;rtl&quot;&gt;b&lt;/bdi&gt;...&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;&amp;#x05D1;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...ba&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltonumberfollowing1expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-1-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-1-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-1-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,45 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Shai Berger&quot; href=&quot;mailto:shai@platonix.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] (3 reviews)...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] (3 reviews)...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] (3 reviews)...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...(3) [a]&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...(3) [a]&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...(3) [a]&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] (3 reviews)...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] (3 reviews)...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] (3 reviews)...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...(3) [a]&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...(3) [a]&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...(3) [a]&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltonumberfollowing1html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-1.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-1.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-1.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,54 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;/&gt;
+    &lt;title&gt;HTML Test: BDI: neutral to following number&lt;/title&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;bdi-neutral-to-number-following-1-ref.html&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Shai Berger&quot; href=&quot;mailto:shai@platonix.com&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;/&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-bdi-element&quot;/&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;
+      'For the purposes of applying the bidirectional algorithm to the paragraph-level
+      container that a bdi element finds itself within, the bdi element must be treated
+      like a U+FFFC OBJECT REPLACEMENT CHARACTER.'&quot;/&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - 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 &amp;#x05D0;
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&lt;bdi&gt;[&amp;#x05D0;]&lt;/bdi&gt; (3 reviews)...&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&lt;bdi dir=&quot;rtl&quot;&gt;[&amp;#x05D0;]&lt;/bdi&gt; (3 reviews)...&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&lt;bdi dir=&quot;ltr&quot;&gt;[&amp;#x05D0;]&lt;/bdi&gt; (3 reviews)...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&lt;bdi&gt;[a]&lt;/bdi&gt; (3)...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&lt;bdi dir=&quot;ltr&quot;&gt;[a]&lt;/bdi&gt; (3)...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&lt;bdi dir=&quot;rtl&quot;&gt;[a]&lt;/bdi&gt; (3)...&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] (3 reviews)...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] (3 reviews)...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;[&amp;#x05D0;] (3 reviews)...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...(3) [a]&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...(3) [a]&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...(3) [a]&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltonumberfollowing2expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-2-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-2-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-2-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,45 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Shai Berger&quot; href=&quot;mailto:shai@platonix.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;1...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;1...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;1...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...1a&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...1a&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...1a&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;1...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;1...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;1...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...1a&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...1a&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...1a&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltonumberfollowing2html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-2.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-2.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-2.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,53 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;/&gt;
+    &lt;title&gt;HTML Test: BDI: neutral to immediately following number&lt;/title&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;bdi-neutral-to-number-following-2-ref.html&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;/&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-bdi-element&quot;/&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;
+      'For the purposes of applying the bidirectional algorithm to the paragraph-level
+      container that a bdi element finds itself within, the bdi element must be treated
+      like a U+FFFC OBJECT REPLACEMENT CHARACTER.'&quot;/&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - 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 &amp;#x05D0;
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&lt;bdi&gt;&amp;#x05D0;&lt;/bdi&gt;1...&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&lt;bdi dir=&quot;rtl&quot;&gt;&amp;#x05D0;&lt;/bdi&gt;1...&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&lt;bdi dir=&quot;ltr&quot;&gt;&amp;#x05D0;&lt;/bdi&gt;1...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&lt;bdi&gt;a&lt;/bdi&gt;1...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&lt;bdi dir=&quot;ltr&quot;&gt;a&lt;/bdi&gt;1...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&lt;bdi dir=&quot;rtl&quot;&gt;a&lt;/bdi&gt;1...&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;1...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;1...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0;1...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...1a&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...1a&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...1a&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltosurroundingrunexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-surrounding-run-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-surrounding-run-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-surrounding-run-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,44 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D2; &amp;lt; [b] &amp;lt; &amp;#x05D0;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D2; &amp;lt; [b] &amp;lt; &amp;#x05D0;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D2; &amp;lt; [b] &amp;lt; &amp;#x05D0;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...a &amp;gt; [&amp;#x05D1;] &amp;gt; c&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...a &amp;gt; [&amp;#x05D1;] &amp;gt; c&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...a &amp;gt; [&amp;#x05D1;] &amp;gt; c&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D2; &amp;lt; [b] &amp;lt; &amp;#x05D0;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D2; &amp;lt; [b] &amp;lt; &amp;#x05D0;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D2; &amp;lt; [b] &amp;lt; &amp;#x05D0;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...a &amp;gt; [&amp;#x05D1;] &amp;gt; c&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...a &amp;gt; [&amp;#x05D1;] &amp;gt; c&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...a &amp;gt; [&amp;#x05D1;] &amp;gt; c&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutraltosurroundingrunhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-surrounding-run.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-surrounding-run.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-surrounding-run.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,56 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;/&gt;
+    &lt;title&gt;HTML Test: BDI: neutral to surrounding letters&lt;/title&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;bdi-neutral-to-surrounding-run-ref.html&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;/&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-bdi-element&quot;/&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;
+      'For the purposes of applying the bidirectional algorithm to the paragraph-level
+      container that a bdi element finds itself within, the bdi element must be treated
+      like a U+FFFC OBJECT REPLACEMENT CHARACTER.'
+      Thus, regardless of its content and its dir attribute (if any), a BDI will not prevent
+      a strongly RTL (or LTR) character preceding it from forming a single directional run with
+      another strongly RTL (LTR) character following it.&quot;/&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - 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 &amp;#x05D0; and the &amp;#x05D1;
+      from forming a single RTL run and thus keep the &amp;gt;s between from being mirrored into &amp;lt;s.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x05D0; &amp;gt; &lt;bdi&gt;[b]&lt;/bdi&gt; &amp;gt; &amp;#x05D2;...&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x05D0; &amp;gt; &lt;bdi dir=&quot;ltr&quot;&gt;[b]&lt;/bdi&gt; &amp;gt; &amp;#x05D2;...&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x05D0; &amp;gt; &lt;bdi dir=&quot;rtl&quot;&gt;[b]&lt;/bdi&gt; &amp;gt; &amp;#x05D2;...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;a &amp;gt; &lt;bdi&gt;[&amp;#x05D1;]&lt;/bdi&gt; &amp;gt; c...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;a &amp;gt; &lt;bdi dir=&quot;ltr&quot;&gt;[&amp;#x05D1;]&lt;/bdi&gt; &amp;gt; c...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;a &amp;gt; &lt;bdi dir=&quot;rtl&quot;&gt;[&amp;#x05D1;]&lt;/bdi&gt; &amp;gt; c...&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D2; &amp;lt; [b] &amp;lt; &amp;#x05D0;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D2; &amp;lt; [b] &amp;lt; &amp;#x05D0;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D2; &amp;lt; [b] &amp;lt; &amp;#x05D0;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...a &amp;gt; [&amp;#x05D1;] &amp;gt; c&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...a &amp;gt; [&amp;#x05D1;] &amp;gt; c&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...a &amp;gt; [&amp;#x05D1;] &amp;gt; c&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutralwrappedexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-wrapped-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-wrapped-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-wrapped-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,52 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;
+        &amp;#x202D;b &amp;lt; &amp;#x05D0;&amp;#x202C;&lt;br/&gt;
+        &amp;#x202D;&amp;gt;&amp;gt;&amp;gt;&amp;#x202C;&lt;br/&gt;
+        &amp;#x202D;&amp;#x05D3; &amp;lt; c...&amp;#x202C;
+      &lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;
+        &amp;#x202D;a &amp;gt; &amp;#x05D1;&amp;#x202C;&lt;br/&gt;
+        &amp;#x202D;&amp;lt;&amp;lt;&amp;lt;&amp;#x202C;&lt;br/&gt;
+        &amp;#x202D;...&amp;#x05D2; &amp;gt; d&amp;#x202C;
+      &lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;
+        &amp;#x202D;b &amp;lt; &amp;#x05D0;&amp;#x202C;&lt;br/&gt;
+        &amp;#x202D;&amp;gt;&amp;gt;&amp;gt;&amp;#x202C;&lt;br/&gt;
+        &amp;#x202D;&amp;#x05D3; &amp;lt; c...&amp;#x202C;
+      &lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;
+        &amp;#x202D;a &amp;gt; &amp;#x05D1;&amp;#x202C;&lt;br/&gt;
+        &amp;#x202D;&amp;lt;&amp;lt;&amp;lt;&amp;#x202C;&lt;br/&gt;
+        &amp;#x202D;...&amp;#x05D2; &amp;gt; d&amp;#x202C;
+      &lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdineutralwrappedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-wrapped.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-wrapped.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-wrapped.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,73 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;/&gt;
+    &lt;title&gt;HTML Test: BDI: neutral when wrapped&lt;/title&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;bdi-neutral-wrapped-ref.html&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;/&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-bdi-element&quot;/&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;
+      'For the purposes of applying the bidirectional algorithm to the paragraph-level
+      container that a bdi element finds itself within, the bdi element must be treated
+      like a U+FFFC OBJECT REPLACEMENT CHARACTER.'
+      This should hold even if the BDI's content is wrapped over more than one line.&quot;/&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#xA0; - Non-breaking space.
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+      In the test below, the non-breaking spaces in the BDI's middle &quot;word&quot; 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.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;
+        &amp;#x05D0; &amp;gt;
+        &lt;bdi&gt;b
+&amp;gt;&amp;gt;&amp;gt;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;
+          c&lt;/bdi&gt;
+        &amp;gt; &amp;#x05D3;...
+      &lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;
+        a &amp;gt;
+        &lt;bdi&gt;&amp;#x05D1;
+&amp;gt;&amp;gt;&amp;gt;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;&amp;#xA0;
+          &amp;#x05D2;&lt;/bdi&gt;
+        &amp;gt; d...
+      &lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;
+        &amp;#x202D;b &amp;lt; &amp;#x05D0;&amp;#x202C;&lt;br/&gt;
+        &amp;#x202D;&amp;gt;&amp;gt;&amp;gt;&amp;#x202C;&lt;br/&gt;
+        &amp;#x202D;&amp;#x05D3; &amp;lt; c...&amp;#x202C;
+      &lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;
+        &amp;#x202D;a &amp;gt; &amp;#x05D1;&amp;#x202C;&lt;br/&gt;
+        &amp;#x202D;&amp;lt;&amp;lt;&amp;lt;&amp;#x202C;&lt;br/&gt;
+        &amp;#x202D;...&amp;#x05D2; &amp;gt; d&amp;#x202C;
+      &lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdiparagraphlevelcontainerexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-paragraph-level-container-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-paragraph-level-container-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-paragraph-level-container-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,36 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 500px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0; [1 2 3 b] c [d &amp;#x05D4;?!] &amp;#x05D5;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...f [!?e &amp;#x05D3;] &amp;#x05D2; [&amp;#x05D1; 3 2 1] a&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0; [1 2 3 b] c [d &amp;#x05D4;?!] &amp;#x05D5;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...f [!?e &amp;#x05D3;] &amp;#x05D2; [&amp;#x05D1; 3 2 1] a&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementbdiparagraphlevelcontainerhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-paragraph-level-container.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-paragraph-level-container.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-paragraph-level-container.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,46 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;/&gt;
+    &lt;title&gt;HTML Test: BDI: paragraph-level container&lt;/title&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;bdi-paragraph-level-container-ref.html&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot;/&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-bdi-element&quot;/&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;
+      'For the purposes of applying the bidirectional algorithm to the contents of a bdi element,
+      user agents must treat the element as a paragraph-level container.'
+      Thus, under no circumstances should the content outside a BDI affect the visual
+      ordering of the BDI's content.&quot;/&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 500px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D5; - The first six Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+      If the BDIs in the test's first DIV were just SPANs, the &amp;#x05D0; would order the 1 2 3 as
+      3 2 1, and the &amp;#x05D5; would (with the &amp;#x05D4;) order the ?! as !?.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x05D0; &lt;bdi&gt;[1 2 3 b]&lt;/bdi&gt; c &lt;bdi&gt;[d &amp;#x05D4;?!]&lt;/bdi&gt; &amp;#x05D5;...&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;a &lt;bdi&gt;[1 2 3 &amp;#x05D1;]&lt;/bdi&gt; &amp;#x05D2; &lt;bdi&gt;[&amp;#x05D3; e?!]&lt;/bdi&gt; f...&lt;/div&gt;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &lt;div dir=&quot;ltr&quot;&gt;&amp;#x202D;&amp;#x05D0; [1 2 3 b] c [d &amp;#x05D4;?!] &amp;#x05D5;...&amp;#x202C;&lt;/div&gt;
+      &lt;div dir=&quot;rtl&quot;&gt;&amp;#x202D;...f [!?e &amp;#x05D3;] &amp;#x05D2; [&amp;#x05D1; 3 2 1] a&amp;#x202C;&lt;/div&gt;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdielementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,49 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-auto-dir-default-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-auto-dir-default.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-missing-pdf-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-missing-pdf.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-nested-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-nested.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-number-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-number.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-separate-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-separate.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-1-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-1.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-2-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-another-bdi-2.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-1-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-1.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-2-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-following-2.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-1-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-1.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-2-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-letter-preceding-2.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-1-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-1.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-2-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-number-following-2.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-surrounding-run-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-to-surrounding-run.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-wrapped-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-neutral-wrapped.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-paragraph-level-container-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdi-element/bdi-paragraph-level-container.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdoelementbdochildexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-child-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-child-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-child-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,11 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;meta charset=&quot;UTF-8&quot;&gt;
+&lt;title&gt;directional type reference&lt;/title&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;p&gt;Test passes if there is text 'WERBEH'.&lt;/p&gt;
+&lt;div&gt;WERBEH&lt;/div&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdoelementbdochildhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-child.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-child.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-child.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,17 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;HTML Test: bdo - text directionality formatting control for its children&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-bdo-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;bidi-001-ref.html&quot;&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;Check if the bdo element represents explicit text directionality formatting control for its children.&quot;&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;p&gt;Test passes if there is text 'WERBEH'.&lt;/p&gt;
+    &lt;bdo dir=&quot;rtl&quot;&gt;
+      &lt;span&gt;HEBREW&lt;/span&gt;
+    &lt;/bdo&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdoelementbdoltrexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-ltr-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-ltr-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-ltr-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,11 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;meta charset=&quot;UTF-8&quot;&gt;
+&lt;title&gt;directional type reference&lt;/title&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;p&gt;Test passes if there is text 'WERBEH'.&lt;/p&gt;
+&lt;div&gt;WERBEH&lt;/div&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdoelementbdoltrhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-ltr.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-ltr.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-ltr.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,15 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;HTML Test: The value 'ltr' of dir attribute specifies a left-to-right override&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-bdo-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;bidi-001-ref.html&quot;&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;Check if the value ltr of dir attribute specifies a left-to-right override&quot;&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;p&gt;Test passes if there is text 'WERBEH'.&lt;/p&gt;
+    &lt;bdo dir=&quot;ltr&quot;&gt;WERBEH&lt;/bdo&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdoelementbdooverrideexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-override-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-override-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-override-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,11 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;meta charset=&quot;UTF-8&quot;&gt;
+&lt;title&gt;directional type reference&lt;/title&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;p&gt;Test passes if there is text 'WERBEH'.&lt;/p&gt;
+&lt;div&gt;WERBEH&lt;/div&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdoelementbdooverridehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-override.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-override.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-override.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;&gt;
+    &lt;title&gt;HTML Test: bdo - override the Unicode bidirectional algorithm&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Intel&quot; href=&quot;http://www.intel.com/&quot;&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-bdo-element&quot;&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;bidi-001-ref.html&quot;&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;Check if authors could override the Unicode bidirectional algorithm
+        by explicitly specifying a direction override of bdo element&quot;&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;p&gt;Test passes if there is text 'WERBEH'.&lt;/p&gt;
+    &lt;p&gt;
+      &amp;#x202E;&lt;bdo dir=&quot;ltr&quot;&gt;WERBEH&lt;/bdo&gt;&amp;#x202C;
+    &lt;/p&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdoelementbidi001expectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bidi-001-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bidi-001-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bidi-001-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,11 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;meta charset=&quot;UTF-8&quot;&gt;
+&lt;title&gt;directional type reference&lt;/title&gt;
+&lt;/head&gt;
+&lt;body&gt;
+&lt;p&gt;Test passes if there is text 'WERBEH'.&lt;/p&gt;
+&lt;div&gt;WERBEH&lt;/div&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdoelementbidi001html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bidi-001.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bidi-001.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bidi-001.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,14 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;meta charset=&quot;UTF-8&quot;&gt;
+&lt;title&gt;directional type&lt;/title&gt;
+&lt;meta content=&quot;W3C&quot; name=&quot;author&quot;&gt;
+&lt;link rel=&quot;match&quot; href=&quot;bidi-001-ref.html&quot;&gt;
+&lt;meta name=&quot;assert&quot; content=&quot;Test text bidirectionality using the bdo element&quot;&gt;
+&lt;/head&gt;
+&lt;body dir='ltr'&gt;
+&lt;p&gt;Test passes if there is text 'WERBEH'.&lt;/p&gt;
+&lt;bdo dir=&quot;rtl&quot;&gt;HEBREW&lt;/bdo&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebdoelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,25 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-child-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-child.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-ltr-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-ltr.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-override-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bdo-override.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bidi-001-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-bdo-element/bidi-001.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebrelementbrbidiexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-br-element/br-bidi-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-br-element/br-bidi-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-br-element/br-bidi-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;title&gt;HTML Test reference: BR separates bidi paragraph&lt;/title&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Amir E. Aharoni&quot; href=&quot;mailto:amir.aharoni@mail.huji.ac.il&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Eyal Sela&quot; href=&quot;mailto:eyal@post.isoc.org.il&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;/&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-br-element&quot;/&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;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.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      A Hebrew letter and a full stop: &amp;#x05d0;.&amp;lrm;
+      &lt;br /&gt;
+      &amp;#x05d0; this line begins with a Hebrew letter.
+    &lt;/div&gt;
+&lt;/p&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebrelementbrbidiininlineancestorsexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-br-element/br-bidi-in-inline-ancestors-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-br-element/br-bidi-in-inline-ancestors-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-br-element/br-bidi-in-inline-ancestors-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,38 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot; /&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot; /&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D8; - The first nine Hebrew letters (strongly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &amp;#x202D;&amp;#x05D0;&amp;#x05D1; &amp;#x05D2;&amp;#x05D3; 1. I like &amp;#x05D4;. fg hi&amp;#x202C;
+      &lt;br/&gt;
+      &amp;#x202D;ab cd 2. &amp;#x05D4; is great! &amp;#x05D5;&amp;#x05D6; &amp;#x05D7;&amp;#x05D8;&amp;#x202C;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &amp;#x202D;&amp;#x05D0;&amp;#x05D1; &amp;#x05D2;&amp;#x05D3; 1. I like &amp;#x05D4;. fg hi&amp;#x202C;
+      &lt;br/&gt;
+      &amp;#x202D;ab cd 2. &amp;#x05D4; is great! &amp;#x05D5;&amp;#x05D6; &amp;#x05D7;&amp;#x05D8;&amp;#x202C;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebrelementbrbidiininlineancestorshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-br-element/br-bidi-in-inline-ancestors.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-br-element/br-bidi-in-inline-ancestors.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-br-element/br-bidi-in-inline-ancestors.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,59 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot; /&gt;
+    &lt;title&gt;HTML Test: BR in inline ancestors&lt;/title&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;br-bidi-in-inline-ancestors-ref.html&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;HTML5 bidi test WG&quot; href=&quot;mailto:html5bidi@googlegroups.com&quot; /&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-br-element&quot;/&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;http://www.w3.org/TR/css3-writing-modes/#unicode-bidi&quot; /&gt;
+    &lt;meta name=&quot;assert&quot; content=&quot;
+      'A br element should separate paragraphs for the purposes of the Unicode bidirectional
+      algorithm.'
+      'If an inline element is broken around a bidi paragraph boundary (e.g. if split by a block or
+      forced paragraph break), then the bidi control codes corresponding to the end of the element
+      are added before the interruption and the codes corresponding to the start of the element are
+      added after it. (In other words, any embedding levels or overrides started by the element are
+      closed at the paragraph break and reopened on the other side of it.)'&quot; /&gt;
+    &lt;style&gt;
+      body{
+        font-size:2em;
+      }
+      .test, .ref {
+        border: medium solid gray;
+        width: 400px;
+        margin: 20px;
+      }
+      .comments { display: none; }
+    &lt;/style&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;Test passes if the two boxes below look exactly the same.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;comments&quot;&gt;
+      Key to entities used below:
+        &amp;#x05D0; ... &amp;#x05D8; - The first nine Hebrew letters (strongly RTL).
+        &amp;#x200E; - The LRM (left-to-right mark) formatting character (invisible, stronly LTR).
+        &amp;#x200F; - The RLM (right-to-left mark) formatting character (invisible, stronly RTL).
+        &amp;#x202D; - The LRO (left-to-right override) formatting character.
+        &amp;#x202C; - The PDF (pop directional formatting) formatting character; closes LRO.
+    &lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      &amp;#x05D1;&amp;#x05D0;&amp;#x200E;
+      &lt;bdo dir=&quot;rtl&quot;&gt;ih
+        &lt;bdo dir=&quot;ltr&quot;&gt;&amp;#x05D2;&amp;#x05D3;
+          &lt;span dir=&quot;rtl&quot;&gt;fg&amp;#x200F;
+            &lt;span dir=&quot;ltr&quot;&gt;1. I like &amp;#x05D4;.&lt;br/&gt;
+              2. &amp;#x05D4; is great!&lt;/span&gt;
+            &amp;#x200F;cd&lt;/span&gt;
+          &amp;#x05D5;&amp;#x05D6;&lt;/bdo&gt;
+        ba&lt;/bdo&gt;
+      &amp;#x200E;&amp;#x05D8;&amp;#x05D7;
+    &lt;/div&gt;
+    &lt;div class=&quot;ref&quot;&gt;
+      &amp;#x202D;&amp;#x05D0;&amp;#x05D1; &amp;#x05D2;&amp;#x05D3; 1. I like &amp;#x05D4;. fg hi&amp;#x202C;
+      &lt;br/&gt;
+      &amp;#x202D;ab cd 2. &amp;#x05D4; is great! &amp;#x05D5;&amp;#x05D6; &amp;#x05D7;&amp;#x05D8;&amp;#x202C;
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebrelementbrbidihtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-br-element/br-bidi.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-br-element/br-bidi.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-br-element/br-bidi.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,22 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=&quot;utf-8&quot;/&gt;
+    &lt;title&gt;HTML Test: BR separates bidi paragraph&lt;/title&gt;
+    &lt;link rel=&quot;match&quot; href=&quot;br-bidi-ref.html&quot;&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Amir E. Aharoni&quot; href=&quot;mailto:amir.aharoni@mail.huji.ac.il&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Eyal Sela&quot; href=&quot;mailto:eyal@post.isoc.org.il&quot;/&gt;
+    &lt;link rel=&quot;author&quot; title=&quot;Aharon Lanin&quot; href=&quot;mailto:aharon@google.com&quot;/&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-br-element&quot;/&gt;
+    &lt;meta name=&quot;assert&quot;
+      content=&quot;A br element should separate paragraphs for the purposes of the Unicode bidirectional algorithm.&quot;/&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div class=&quot;instructions&quot;&gt;&lt;p&gt;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.&lt;/p&gt;&lt;/div&gt;
+    &lt;div class=&quot;test&quot;&gt;
+      A Hebrew letter and a full stop: &amp;#x05d0;.
+      &lt;br /&gt;
+      &amp;#x05d0; this line begins with a Hebrew letter.
+    &lt;/div&gt;
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthebrelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-br-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-br-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-br-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,21 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-br-element/br-bidi-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-br-element/br-bidi-in-inline-ancestors-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-br-element/br-bidi-in-inline-ancestors.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-br-element/br-bidi.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthetimeelement001expectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-time-element/001-expected.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-time-element/001-expected.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-time-element/001-expected.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+
+PASS HTML parsing should locate 4 time elements in this document 
+FAIL HTMLTimeElement should be exposed for prototyping assert_true: expected true got false
+FAIL the time elements should be instanceof HTMLTimeElement window.HTMLTimeElement is not a function. (evaluating 'makeTime() instanceof window.HTMLTimeElement')
+FAIL the datetime attribute should be reflected by the .dateTime property assert_equals: expected (string) &quot;2000-02-01T03:04:05Z&quot; but got (undefined) undefined
+FAIL the dateTime IDL property should default to an empty string assert_equals: typeof test expected &quot;string&quot; but got &quot;undefined&quot;
+PASS the dateTime property should be read/write 
+FAIL the datetime attribute should be reflected by the .dateTime property even if it is invalid assert_equals: expected (string) &quot;go fish&quot; but got (undefined) undefined
+FAIL the datetime attribute should not reflect the textContent assert_equals: expected (string) &quot;&quot; but got (undefined) undefined
+
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthetimeelement001html"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-time-element/001.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-time-element/001.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-time-element/001.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,68 @@
</span><ins>+&lt;!doctype html&gt;
+&lt;html&gt;
+  &lt;head&gt;
+    &lt;meta charset=utf-8&gt;
+    &lt;title&gt;HTML time element API&lt;/title&gt;
+    &lt;style&gt;
+#time { visibility: hidden; }
+    &lt;/style&gt;
+    &lt;link rel=&quot;help&quot; href=&quot;https://html.spec.whatwg.org/multipage/#the-time-element&quot;&gt;
+    &lt;script src=&quot;/resources/testharness.js&quot;&gt;&lt;/script&gt;
+    &lt;script src=&quot;/resources/testharnessreport.js&quot;&gt;&lt;/script&gt;
+  &lt;/head&gt;
+  &lt;body&gt;
+    &lt;div id=&quot;log&quot;&gt;&lt;/div&gt;
+    &lt;!--  intentionally nested to test parsing rules  --&gt;
+    &lt;p id=&quot;time&quot;&gt;&lt;time pubdate datetime=&quot;2000-02-01T03:04:05Z&quot;&gt;Dummy text &lt;time&gt;2001-06-07T&lt;time&gt;08:09&lt;time&gt;&lt;/time&gt;&lt;/time&gt;Z&lt;/time&gt;&lt;/time&gt;&lt;/p&gt;
+    &lt;script type=&quot;text/javascript&quot;&gt;
+function makeTime(dateTime,contents,dateTimeProp) {
+  var timeEl = document.createElement('time');
+  if( dateTime ) {
+    timeEl.setAttribute('datetime',dateTime);
+  }
+  if( contents ) {
+    timeEl.innerHTML = contents;
+  }
+  if( dateTimeProp ) {
+    timeEl.dateTime = dateTimeProp;
+  }
+  return timeEl;
+}
+
+var timep = document.getElementById('time');
+var times = timep.getElementsByTagName('time');
+
+//TIME elements
+test(function () {
+  assert_equals( times.length, 4 );
+}, 'HTML parsing should locate 4 time elements in this document');
+test(function () {
+  assert_true( !!window.HTMLTimeElement );
+}, 'HTMLTimeElement should be exposed for prototyping');
+test(function () {
+  assert_true( makeTime() instanceof window.HTMLTimeElement, 'createElement variant' );
+  assert_true( times[0] instanceof window.HTMLTimeElement, 'HTML parsing variant' );
+}, 'the time elements should be instanceof HTMLTimeElement');
+
+//dateTime
+test(function () {
+  assert_equals( makeTime('2000-02-01T03:04:05Z','2001-02-01T03:04:05Z').dateTime, '2000-02-01T03:04:05Z' );
+}, 'the datetime attribute should be reflected by the .dateTime property');
+test(function () {
+  assert_equals( typeof makeTime().dateTime, 'string', 'typeof test' );
+  assert_equals( makeTime().dateTime, '', 'value test' );
+}, 'the dateTime IDL property should default to an empty string');
+test(function () {
+  assert_equals( makeTime(false,false,'2000-02-01T03:04:05Z').dateTime, '2000-02-01T03:04:05Z' );
+}, 'the dateTime property should be read/write');
+test(function () {
+  assert_equals( makeTime('go fish').dateTime, 'go fish' );
+}, 'the datetime attribute should be reflected by the .dateTime property even if it is invalid');
+test(function () {
+  assert_equals( makeTime(false,'2000-02-01T03:04:05Z').dateTime, '' );
+}, 'the datetime attribute should not reflect the textContent');
+
+    &lt;/script&gt;
+
+  &lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthetimeelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-time-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-time-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-time-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,18 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-time-element/001.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthewbrelementw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-wbr-element/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-wbr-element/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-wbr-element/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,20 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-wbr-element/wbr-element-expected.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-wbr-element/wbr-element-ref.html
+/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-wbr-element/wbr-element.html
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthewbrelementwbrelementexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-wbr-element/wbr-element-expected.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-wbr-element/wbr-element-expected.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-wbr-element/wbr-element-expected.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,10 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;The wbr element&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=&quot;mismatch&quot; href=&quot;wbr-element-notref.html&quot; /&gt;
+&lt;meta name=&quot;flags&quot; content=&quot;ahem&quot;&gt;
+&lt;style&gt;
+  p {font-family: Ahem;}
+&lt;/style&gt;
+&lt;p&gt;Loremipsumdolorsit&lt;br&gt;amet,consectetur&lt;br&gt;adipisicingelit,sed&lt;br&gt;doeiusmodtempor&lt;br&gt;incididuntutlaboreet&lt;br&gt;doloremagnaaliqua.Ut&lt;br&gt;enimadminimveniam,&lt;br&gt;quisnostrud&lt;br&gt;exercitationullamco&lt;br&gt;laborisnisiutaliquip&lt;br&gt;exeacommodo&lt;br&gt;consequat.Duisaute&lt;br&gt;iruredolorin&lt;br&gt;reprehenderitin&lt;br&gt;voluptatevelitesse&lt;br&gt;cillumdoloreeufugiat&lt;br&gt;nullapariatur.&lt;br&gt;Excepteursint&lt;br&gt;occaecatcupidatatnon&lt;br&gt;proident,suntinculpa&lt;br&gt;quiofficiadeserunt&lt;br&gt;mollitanimidest&lt;br&gt;laborum.&lt;/p&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticstextlevelsemanticsthewbrelementwbrelementhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-wbr-element/wbr-element.html (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-wbr-element/wbr-element.html                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/text-level-semantics/the-wbr-element/wbr-element.html        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,11 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;meta charset=utf-8&gt;
+&lt;title&gt;The wbr element&lt;/title&gt;
+&lt;link rel=&quot;author&quot; title=&quot;Denis Ah-Kang&quot; href=&quot;mailto:denis@w3.org&quot;&gt;
+&lt;link rel=help href=&quot;https://html.spec.whatwg.org/multipage/#rendering&quot;&gt;
+&lt;link rel=&quot;match&quot; href=&quot;wbr-element-ref.html&quot;&gt;
+&lt;meta name=&quot;flags&quot; content=&quot;ahem&quot;&gt;
+&lt;style&gt;
+  p {max-width: 300px; font-family: Ahem;}
+&lt;/style&gt;
+&lt;p&gt;AHEM_&lt;wbr&gt;ipsum&lt;wbr&gt;dolor&lt;wbr&gt;sit&lt;wbr&gt;amet,&lt;wbr&gt;consectetur&lt;wbr&gt;adipisicing&lt;wbr&gt;elit,&lt;wbr&gt;sed&lt;wbr&gt;do&lt;wbr&gt;eiusmod&lt;wbr&gt;tempor&lt;wbr&gt;incididunt&lt;wbr&gt;ut&lt;wbr&gt;labore&lt;wbr&gt;et&lt;wbr&gt;dolore&lt;wbr&gt;magna&lt;wbr&gt;aliqua.&lt;wbr&gt;Ut&lt;wbr&gt;enim&lt;wbr&gt;ad&lt;wbr&gt;minim&lt;wbr&gt;veniam,&lt;wbr&gt;quis&lt;wbr&gt;nostrud&lt;wbr&gt;exercitation&lt;wbr&gt;ullamco&lt;wbr&gt;laboris&lt;wbr&gt;nisi&lt;wbr&gt;ut&lt;wbr&gt;aliquip&lt;wbr&gt;ex&lt;wbr&gt;ea&lt;wbr&gt;commodo&lt;wbr&gt;consequat.&lt;wbr&gt;Duis&lt;wbr&gt;aute&lt;wbr&gt;irure&lt;wbr&gt;dolor&lt;wbr&gt;in&lt;wbr&gt;reprehenderit&lt;wbr&gt;in&lt;wbr&gt;voluptate&lt;wbr&gt;velit&lt;wbr&gt;esse&lt;wbr&gt;cillum&lt;wbr&gt;dolore&lt;wbr&gt;eu&lt;wbr&gt;fugiat&lt;wbr&gt;nulla&lt;wbr&gt;pariatur.&lt;wbr&gt;Excepteur&lt;wbr&gt;sint&lt;wbr&gt;occaecat&lt;wbr&gt;cupidatat&lt;wbr&gt;non&lt;wbr&gt;proident,&lt;wbr&gt;sunt&lt;wbr&gt;i
 n&lt;wbr&gt;culpa&lt;wbr&gt;qui&lt;wbr&gt;officia&lt;wbr&gt;deserunt&lt;wbr&gt;mollit&lt;wbr&gt;anim&lt;wbr&gt;id&lt;wbr&gt;est&lt;wbr&gt;laborum.&lt;/p&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3chtmlsemanticsw3cimportlog"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/html/semantics/w3c-import.log (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/html/semantics/w3c-import.log                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/html/semantics/w3c-import.log        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,19 @@
</span><ins>+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in Webkit.
+Instead, create a pull request on the W3C CSS or WPT github:
+        https://github.com/w3c/csswg-test
+        https://github.com/w3c/web-platform-tests
+
+Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport
+
+Do NOT modify or remove this file
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/http/tests/w3c/html/semantics/./interfaces.html
+/LayoutTests/http/tests/w3c/html/semantics/./interfaces.js
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3cresourcescanvastestscss"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/canvas-tests.css (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/resources/canvas-tests.css                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/resources/canvas-tests.css        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,134 @@
</span><ins>+html.fail {
+    background: #f66;
+}
+html.pass {
+    background: #6f6;
+}
+html.needs_check {
+    background: #99f;
+}
+
+body {
+    font-size: small;
+    font-family: sans-serif;
+    color: black;
+}
+
+a:link {
+    color: #00c;
+}
+a:visited {
+    color: #808;
+}
+
+body.framed {
+    font-size: x-small;
+}
+
+h1 {
+    font-size: larger;
+    margin: 0;
+    padding-left: 0.5em;
+    text-indent: -0.5em;
+}
+
+p {
+    margin: 0;
+}
+
+p.notes {
+    margin-bottom: 0.5em;
+    font-style: italic;
+}
+
+ul {
+    margin: 0;
+    margin-bottom: 0.5em;
+    padding: 0;
+    padding-left: 1em;
+}
+
+.refs {
+    font-style: italic;
+    margin-bottom: 0.5em;
+}
+
+.refs ul {
+    display: inline;
+    margin: 0;
+    padding: 0;
+}
+
+.refs li {
+    display: inline;
+    list-style-type: none;
+    margin: 0;
+    padding: 0;
+}
+
+canvas {
+    display: none;
+    visibility: hidden;
+    border: 2px #f0f solid;
+    background: url(../images/background.png);
+}
+
+img.expected {
+    display: none;
+    border: 2px #f0f solid;
+    background: url(../images/background.png);
+}
+
+iframe {
+    border: 2px #f0f solid;
+}
+
+.output {
+    display: none;
+}
+
+.show_output .output, .needs_check .output  {
+    display: block !important;
+    visibility: visible !important;
+}
+
+.show_output #show_output {
+    display: none;
+}
+
+.resource {
+    visibility: hidden;
+    height: 0;
+}
+
+.fallback {
+    font-size: 2em;
+    font-weight: bold;
+    color: #a00;
+}
+
+
+html.minimal body {
+    color: white;
+}
+html.fail.minimal {
+    background: #f00;
+}
+html.pass.minimal {
+    background: #080;
+}
+html.needs_check.minimal {
+    background: #008;
+}
+.minimal #d {
+    display: none !important;
+}
+.minimal .expectedtext {
+    visibility: hidden !important;
+}
+#passtext, #failtext {
+    display: none;
+}
+.minimal.pass #passtext, .minimal.fail #failtext {
+    display: block;
+}
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3cresourcescanvastestsjs"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/canvas-tests.js (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/resources/canvas-tests.js                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/resources/canvas-tests.js        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,86 @@
</span><ins>+function _valToString(val)
+{
+    if (val === undefined || val === null)
+        return '[' + typeof(val) + ']';
+    return val.toString() + '[' + typeof(val) + ']';
+}
+
+function _assert(cond, text)
+{
+    assert_true(!!cond, text);
+}
+
+function _assertSame(a, b, text_a, text_b)
+{
+    var msg = text_a + ' === ' + text_b + ' (got ' + _valToString(a) +
+              ', expected ' + _valToString(b) + ')';
+    assert_equals(a, b, msg);
+}
+
+function _assertDifferent(a, b, text_a, text_b)
+{
+    var msg = text_a + ' !== ' + text_b + ' (got ' + _valToString(a) +
+              ', expected not ' + _valToString(b) + ')';
+    assert_not_equals(a, b, msg);
+}
+
+
+function _getPixel(canvas, x,y)
+{
+    var ctx = canvas.getContext('2d');
+    var imgdata = ctx.getImageData(x, y, 1, 1);
+    return [ imgdata.data[0], imgdata.data[1], imgdata.data[2], imgdata.data[3] ];
+}
+
+function _assertPixel(canvas, x,y, r,g,b,a, pos, colour)
+{
+    var c = _getPixel(canvas, x,y);
+    assert_equals(c[0], r, 'Red channel of the pixel at (' + x + ', ' + y + ')');
+    assert_equals(c[1], g, 'Green channel of the pixel at (' + x + ', ' + y + ')');
+    assert_equals(c[2], b, 'Blue channel of the pixel at (' + x + ', ' + y + ')');
+    assert_equals(c[3], a, 'Alpha channel of the pixel at (' + x + ', ' + y + ')');
+}
+
+function _assertPixelApprox(canvas, x,y, r,g,b,a, pos, colour, tolerance)
+{
+    var c = _getPixel(canvas, x,y);
+    assert_approx_equals(c[0], r, tolerance, 'Red channel of the pixel at (' + x + ', ' + y + ')');
+    assert_approx_equals(c[1], g, tolerance, 'Green channel of the pixel at (' + x + ', ' + y + ')');
+    assert_approx_equals(c[2], b, tolerance, 'Blue channel of the pixel at (' + x + ', ' + y + ')');
+    assert_approx_equals(c[3], a, tolerance, 'Alpha channel of the pixel at (' + x + ', ' + y + ')');
+}
+
+function _addTest(testFn)
+{
+    var deferred = false;
+    window.deferTest = function () { deferred = true; };
+    on_event(window, &quot;load&quot;, function()
+    {
+        t.step(function() {
+            var canvas = document.getElementById('c');
+            var ctx = canvas.getContext('2d');
+            t.step(testFn, window, canvas, ctx);
+        });
+
+        if (!deferred) {
+            t.done();
+        }
+    });
+}
+
+function _assertGreen(ctx, canvasWidth, canvasHeight)
+{
+    var testColor = function(d, idx, expected) {
+        assert_equals(d[idx], expected, &quot;d[&quot; + idx + &quot;]&quot;, String(expected));
+    };
+    var imagedata = ctx.getImageData(0, 0, canvasWidth, canvasHeight);
+    var w = imagedata.width, h = imagedata.height, d = imagedata.data;
+    for (var i = 0; i &lt; h; ++i) {
+        for (var j = 0; j &lt; w; ++j) {
+            testColor(d, 4 * (w * i + j) + 0, 0);
+            testColor(d, 4 * (w * i + j) + 1, 255);
+            testColor(d, 4 * (w * i + j) + 2, 0);
+            testColor(d, 4 * (w * i + j) + 3, 255);
+        }
+    }
+}
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3cresourcescssredtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/css-red.txt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/resources/css-red.txt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/resources/css-red.txt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1 @@
</span><ins>+html { color: red; }
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesanimgrgif"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/anim-gr.gif</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/anim-gr.gif
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesanimgrpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/anim-gr.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/anim-gr.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesanimpostergrpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/anim-poster-gr.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/anim-poster-gr.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesbackgroundpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/background.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/background.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesblackrectanglepng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/black-rectangle.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/black-rectangle.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesblueareapng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/blue-area.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/blue-area.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesblueborderpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/blue-border.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/blue-border.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesbluepng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/blue.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/blue.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesblue96x96png"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/blue96x96.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/blue96x96.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesbrokenpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/broken.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/broken.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagescanvaslinepng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/canvas-line.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/canvas-line.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesfailgif"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/fail.gif</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/fail.gif
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesggrr256x256png"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/ggrr-256x256.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/ggrr-256x256.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesgreen100x50png"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/green-100x50.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/green-100x50.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesgreen16x16png"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/green-16x16.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/green-16x16.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesgreen1x1png"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/green-1x1.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/green-1x1.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesgreen256x256png"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/green-256x256.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/green-256x256.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesgreen2x2png"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/green-2x2.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/green-2x2.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesgreenpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/green.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/green.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesgreensvg"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/green.svg (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/resources/images/green.svg                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/resources/images/green.svg        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; width=&quot;100&quot; height=&quot;50&quot;&gt;
+  &lt;rect fill=&quot;lime&quot; width=&quot;100&quot; height=&quot;50&quot;/&gt;
+&lt;/svg&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesgrgr256x256png"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/grgr-256x256.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/grgr-256x256.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesmovie_300_frame_0png"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/movie_300_frame_0.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/movie_300_frame_0.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesred16x16png"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/red-16x16.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/red-16x16.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesredzeroheightsvg"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/red-zeroheight.svg (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/resources/images/red-zeroheight.svg                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/resources/images/red-zeroheight.svg        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; width=&quot;100&quot; height=&quot;0&quot;&gt;
+  &lt;rect fill=&quot;red&quot; width=&quot;100&quot; height=&quot;100&quot;/&gt;
+&lt;/svg&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesredzerosizesvg"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/red-zerosize.svg (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/resources/images/red-zerosize.svg                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/resources/images/red-zerosize.svg        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; width=&quot;0&quot; height=&quot;0&quot;&gt;
+  &lt;rect fill=&quot;red&quot; width=&quot;100&quot; height=&quot;100&quot;/&gt;
+&lt;/svg&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesredzerowidthsvg"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/red-zerowidth.svg (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/resources/images/red-zerowidth.svg                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/resources/images/red-zerowidth.svg        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,3 @@
</span><ins>+&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; width=&quot;0&quot; height=&quot;100&quot;&gt;
+  &lt;rect fill=&quot;red&quot; width=&quot;100&quot; height=&quot;100&quot;/&gt;
+&lt;/svg&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesredpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/red.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/red.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesredtransparentpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/redtransparent.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/redtransparent.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesrgrg256x256png"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/rgrg-256x256.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/rgrg-256x256.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesrrgg256x256png"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/rrgg-256x256.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/rrgg-256x256.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagessmileypng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/smiley.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/smiley.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesthreecolorspng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/threecolors.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/threecolors.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagestransparentpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/transparent.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/transparent.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagestransparent50png"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/transparent50.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/transparent50.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesyellowpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/yellow.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/yellow.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesimagesyellow75png"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/images/yellow75.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/images/yellow75.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesmediaA4mp4"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/media/A4.mp4</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/media/A4.mp4
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesmediaA4ogv"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/media/A4.ogv</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/media/A4.ogv
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesmediafoovtt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/media/foo.vtt (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/resources/media/foo.vtt                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/resources/media/foo.vtt        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,4 @@
</span><ins>+WEBVTT
+
+00:00:00.000 --&gt; 00:00:05.000
+Foo
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3cresourcesmediafoovttheaders"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/media/foo.vtt.headers (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/resources/media/foo.vtt.headers                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/resources/media/foo.vtt.headers        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1 @@
</span><ins>+Access-Control-Allow-Origin: *
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestshttptestsw3cresourcesmediagreenat15mp4"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/media/green-at-15.mp4</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/media/green-at-15.mp4
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesmediagreenat15ogv"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/media/green-at-15.ogv</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/media/green-at-15.ogv
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesmediamovie_300mp4"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/media/movie_300.mp4</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/media/movie_300.mp4
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesmediamovie_300ogv"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/media/movie_300.ogv</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/media/movie_300.ogv
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesmediamovie_5mp4"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/media/movie_5.mp4</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/media/movie_5.mp4
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesmediamovie_5ogv"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/media/movie_5.ogv</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/media/movie_5.ogv
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesmediaposterpng"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/media/poster.png</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/media/poster.png
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesmediasound_5mp3"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/media/sound_5.mp3</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/media/sound_5.mp3
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesmediasound_5oga"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/media/sound_5.oga</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/media/sound_5.oga
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesmediawhitemp4"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/media/white.mp4</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/media/white.mp4
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesmediawhitewebm"></a>
<div class="binary"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/media/white.webm</h4>
<pre class="diff"><span>
<span class="cx">(Binary files differ)
</span></span></pre></div>
<span class="cx">Property changes on: trunk/LayoutTests/http/tests/w3c/resources/media/white.webm
</span><span class="cx">___________________________________________________________________
</span><a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="trunkLayoutTestshttptestsw3cresourcesmediajs"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/media.js (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/resources/media.js                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/resources/media.js        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,35 @@
</span><ins>+//
+// Returns the URI of a supported video source based on the user agent
+//
+function getVideoURI(base)
+{
+    var extension = '.mp4';
+
+    var videotag = document.createElement(&quot;video&quot;);
+
+    if ( videotag.canPlayType  &amp;&amp;
+         videotag.canPlayType('video/ogg; codecs=&quot;theora, vorbis&quot;') )
+    {
+        extension = '.ogv';
+    }
+
+    return base + extension;
+}
+
+//
+// Returns the URI of a supported audio source based on the user agent
+//
+function getAudioURI(base)
+{
+    var extension = '.mp3';
+
+    var audiotag = document.createElement(&quot;audio&quot;);
+
+    if ( audiotag.canPlayType &amp;&amp;
+         audiotag.canPlayType('audio/ogg') )
+    {
+        extension = '.oga';
+    }
+
+    return base + extension;
+}
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3cresourcesstringifiersjs"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/stringifiers.js (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/resources/stringifiers.js                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/resources/stringifiers.js        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,52 @@
</span><ins>+// Tests &lt;http://heycam.github.io/webidl/#es-stringifier&gt;.
+function test_stringifier_attribute(aObject, aAttribute, aIsUnforgeable) {
+  // Step 1.
+  test(function() {
+    [null, undefined].forEach(function(v) {
+      assert_throws(new TypeError(), function() {
+        aObject.toString.call(v);
+      });
+    });
+  });
+
+  // TODO Step 2: security check.
+
+  // Step 3.
+  test(function() {
+    assert_false(&quot;Window&quot; in window &amp;&amp; aObject instanceof window.Window);
+    [{}, window].forEach(function(v) {
+      assert_throws(new TypeError(), function() {
+        aObject.toString.call(v)
+      });
+    });
+  });
+
+  // Step 4-6.
+  var expected_value;
+  test(function() {
+    expected_value = aObject[aAttribute];
+    assert_equals(aObject[aAttribute], expected_value,
+                  &quot;The attribute &quot; + aAttribute + &quot; should be pure.&quot;);
+  });
+
+  var test_error = { name: &quot;test&quot; };
+  test(function() {
+    if (!aIsUnforgeable) {
+      Object.defineProperty(aObject, aAttribute, {
+        configurable: true,
+        get: function() { throw test_error; }
+      });
+    }
+    assert_equals(aObject.toString(), expected_value);
+  });
+
+  test(function() {
+    if (!aIsUnforgeable) {
+      Object.defineProperty(aObject, aAttribute, {
+        configurable: true,
+        value: { toString: function() { throw test_error; } }
+      });
+    }
+    assert_equals(aObject.toString(), expected_value);
+  });
+}
</ins></span></pre></div>
<a id="trunkLayoutTestshttptestsw3cresourcesutilsjs"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/http/tests/w3c/resources/utils.js (0 => 189394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/http/tests/w3c/resources/utils.js                                (rev 0)
+++ trunk/LayoutTests/http/tests/w3c/resources/utils.js        2015-09-04 22:26:37 UTC (rev 189394)
</span><span class="lines">@@ -0,0 +1,80 @@
</span><ins>+function make_absolute_url(options) {
+    var loc = window.location;
+    var protocol = get(options, &quot;protocol&quot;, loc.protocol);
+    if (protocol[protocol.length - 1] != &quot;:&quot;) {
+        protocol += &quot;:&quot;;
+    }
+
+    var hostname = get(options, &quot;hostname&quot;, loc.hostname);
+
+    var subdomain = get(options, &quot;subdomain&quot;);
+    if (subdomain) {
+        hostname = subdomain + &quot;.&quot; + hostname;
+    }
+
+    var port = get(options, &quot;port&quot;, loc.port)
+    var path = get(options, &quot;path&quot;, loc.pathname);
+    var query = get(options, &quot;query&quot;, loc.search);
+    var hash = get(options, &quot;hash&quot;, loc.hash)
+
+    var url = protocol + &quot;//&quot; + hostname;
+    if (port) {
+        url += &quot;:&quot; + port;
+    }
+
+    if (path[0] != &quot;/&quot;) {
+        url += &quot;/&quot;;
+    }
+    url += path;
+    if (query) {
+        if (query[0] != &quot;?&quot;) {
+            url += &quot;?&quot;;
+        }
+        url += query;
+    }
+    if (hash) {
+        if (hash[0] != &quot;#&quot;) {
+            url += &quot;#&quot;;
+        }
+        url += hash;
+    }
+    return url;
+}
+
+function get(obj, name, default_val) {
+    if (obj.hasOwnProperty(name)) {
+        return obj[name];
+    }
+    return default_val;
+}
+
+function token() {
+    var uuid = [to_hex(rand_int(32), 8),
+                to_hex(rand_int(16), 4),
+                to_hex(0x4000 | rand_int(12), 4),
+                to_hex(0x8000 | rand_int(14), 4),
+                to_hex(rand_int(48), 12)].join(&quot;-&quot;)
+    return uuid;
+}
+
+function rand_int(bits) {
+    if (bits &lt; 1 || bits &gt; 53) {
+        throw new TypeError();
+    } else {
+        if (bits &gt;= 1 &amp;&amp; bits &lt;= 30) {
+            return 0 | ((1 &lt;&lt; bits) * Math.random());
+        } else {
+            var high = (0 | ((1 &lt;&lt; (bits - 30)) * Math.random())) * (1 &lt;&lt; 30);
+            var low = 0 | ((1 &lt;&lt; 30) * Math.random());
+            return  high + low;
+        }
+    }
+}
+
+function to_hex(x, length) {
+    var rv = x.toString(16);
+    while (rv.length &lt; length) {
+        rv = &quot;0&quot; + rv;
+    }
+    return rv;
+}
</ins></span></pre>
</div>
</div>

</body>
</html>