mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-20 00:35:44 +00:00
0d460e3432
This is split from the previous changeset since if we include dom/ the file size is too large for phabricator to handle. This is an autogenerated commit to handle scripts loading mochitest harness files, in the simple case where the script src is on the same line as the tag. This was generated with https://bug1544322.bmoattachments.org/attachment.cgi?id=9058170 using the `--part 2` argument. Differential Revision: https://phabricator.services.mozilla.com/D27457 --HG-- extra : moz-landing-system : lando
78 lines
2.2 KiB
HTML
78 lines
2.2 KiB
HTML
<!DOCTYPE HTML>
|
|
<html>
|
|
<!--
|
|
https://bugzilla.mozilla.org/show_bug.cgi?id=346485
|
|
-->
|
|
<head>
|
|
<title>Test for Bug 346485</title>
|
|
<script src="/tests/SimpleTest/SimpleTest.js"></script>
|
|
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
|
|
</head>
|
|
<body>
|
|
<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=346485">Mozilla Bug 346485</a>
|
|
<p id="display"></p>
|
|
<div id="content" style="display: none">
|
|
<input id='a'>
|
|
<input id='b'>
|
|
<output id='o' for='a b'></output>
|
|
</div>
|
|
<pre id="test">
|
|
<script type="application/javascript">
|
|
|
|
/** Test for Bug 346485 **/
|
|
|
|
/**
|
|
* This test is testing DOMTokenList used by the output element.
|
|
*/
|
|
|
|
function checkHtmlFor(htmlFor, list, msg) {
|
|
var length = htmlFor.length;
|
|
is(length, list.length, htmlFor + ": incorrect htmlFor length (" + msg + ")");
|
|
for (var i = 0; i < length; ++i) {
|
|
is(htmlFor[i], list[i], htmlFor + ": wrong element at " + i + " (" + msg + ")");
|
|
}
|
|
}
|
|
|
|
var o = document.getElementById('o');
|
|
|
|
is(String(o.htmlFor), 'a b',
|
|
"htmlFor IDL attribute should reflect for content attribute");
|
|
|
|
is(o.htmlFor.value, 'a b',
|
|
"value should return the underlying string");
|
|
|
|
is(o.htmlFor.length, 2, "Size should be '2'");
|
|
|
|
ok(o.htmlFor.contains('a'), "It should contain 'a' token'");
|
|
ok(!o.htmlFor.contains('c'), "It should not contain 'c' token");
|
|
|
|
is(o.htmlFor.item(0), 'a', "First item is 'a' token'");
|
|
is(o.htmlFor.item(42), null, "Out-of-range should return null");
|
|
|
|
o.htmlFor.add('c');
|
|
checkHtmlFor(o.htmlFor, ['a', 'b', 'c'], "'c' token should have been added");
|
|
|
|
o.htmlFor.add('a');
|
|
checkHtmlFor(o.htmlFor, ['a', 'b', 'c'], "Nothing should have changed");
|
|
|
|
o.htmlFor.remove('a');
|
|
checkHtmlFor(o.htmlFor, ['b', 'c'], "'a' token should have been removed");
|
|
|
|
o.htmlFor.remove('d');
|
|
checkHtmlFor(o.htmlFor, ['b', 'c'], "Nothing should have been removed");
|
|
|
|
o.htmlFor.toggle('a');
|
|
checkHtmlFor(o.htmlFor, ['b', 'c', 'a'], "'a' token should have been added");
|
|
|
|
o.htmlFor.toggle('b');
|
|
checkHtmlFor(o.htmlFor, ['c', 'a'], "Nothing should have changed");
|
|
|
|
o.htmlFor.value = "foo bar";
|
|
checkHtmlFor(o.htmlFor, ['foo', 'bar'], "The underlying string should have changed");
|
|
ok(o.htmlFor.contains('foo'), "It should contain 'foo'");
|
|
|
|
</script>
|
|
</pre>
|
|
</body>
|
|
</html>
|