mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-23 02:05:42 +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
113 lines
3.0 KiB
HTML
113 lines
3.0 KiB
HTML
<!DOCTYPE HTML>
|
|
<html>
|
|
<!--
|
|
https://bugzilla.mozilla.org/show_bug.cgi?id=605124
|
|
-->
|
|
<head>
|
|
<title>Test for Bug 605124</title>
|
|
<script src="/tests/SimpleTest/SimpleTest.js"></script>
|
|
<script src="/tests/SimpleTest/EventUtils.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=605124">Mozilla Bug 605124</a>
|
|
<p id="display"></p>
|
|
<div id="content">
|
|
<input required>
|
|
<textarea required></textarea>
|
|
<select required>
|
|
<option value="">foo</option>
|
|
<option>bar</option>
|
|
</select>
|
|
<select multiple required>
|
|
<option value="">foo</option>
|
|
<option>bar</option>
|
|
</select>
|
|
</div>
|
|
<pre id="test">
|
|
<script type="application/javascript">
|
|
|
|
/** Test for Bug 605124 **/
|
|
|
|
function checkPseudoClass(aElement, aExpected)
|
|
{
|
|
is(aElement.matches(":-moz-ui-invalid"), aExpected,
|
|
"matches(':-moz-ui-invalid') should return " + aExpected + " for " + aElement);
|
|
}
|
|
|
|
function checkElement(aElement)
|
|
{
|
|
checkPseudoClass(aElement, false);
|
|
|
|
// Focusing while :-moz-ui-invalid doesn't apply,
|
|
// the pseudo-class should not apply while typing.
|
|
aElement.focus();
|
|
checkPseudoClass(aElement, false);
|
|
// with keys
|
|
sendString("f");
|
|
checkPseudoClass(aElement, false);
|
|
synthesizeKey("KEY_Backspace");
|
|
checkPseudoClass(aElement, false);
|
|
// with .value
|
|
aElement.value = 'f';
|
|
checkPseudoClass(aElement, false);
|
|
aElement.value = '';
|
|
checkPseudoClass(aElement, false);
|
|
|
|
aElement.blur();
|
|
checkPseudoClass(aElement, true);
|
|
|
|
// Focusing while :-moz-ui-invalid applies,
|
|
// the pseudo-class should apply while typing if appropriate.
|
|
aElement.focus();
|
|
checkPseudoClass(aElement, true);
|
|
// with keys
|
|
sendString("f");
|
|
checkPseudoClass(aElement, false);
|
|
synthesizeKey("KEY_Backspace");
|
|
checkPseudoClass(aElement, true);
|
|
// with .value
|
|
aElement.value = 'f';
|
|
checkPseudoClass(aElement, false);
|
|
aElement.value = '';
|
|
checkPseudoClass(aElement, true);
|
|
}
|
|
|
|
function checkSelectElement(aElement)
|
|
{
|
|
checkPseudoClass(aElement, false);
|
|
|
|
// Focusing while :-moz-ui-invalid doesn't apply,
|
|
// the pseudo-class should not apply while changing selection.
|
|
aElement.focus();
|
|
checkPseudoClass(aElement, false);
|
|
|
|
aElement.selectedIndex = 1;
|
|
checkPseudoClass(aElement, false);
|
|
aElement.selectedIndex = 0;
|
|
checkPseudoClass(aElement, false);
|
|
|
|
aElement.blur();
|
|
checkPseudoClass(aElement, !aElement.multiple);
|
|
|
|
// Focusing while :-moz-ui-invalid applies,
|
|
// the pseudo-class should apply while changing selection if appropriate.
|
|
aElement.focus();
|
|
checkPseudoClass(aElement, !aElement.multiple);
|
|
|
|
aElement.selectedIndex = 1;
|
|
checkPseudoClass(aElement, false);
|
|
aElement.selectedIndex = 0;
|
|
checkPseudoClass(aElement, !aElement.multiple);
|
|
}
|
|
|
|
checkElement(document.getElementsByTagName('input')[0]);
|
|
checkElement(document.getElementsByTagName('textarea')[0]);
|
|
checkSelectElement(document.getElementsByTagName('select')[0]);
|
|
checkSelectElement(document.getElementsByTagName('select')[1]);
|
|
|
|
</script>
|
|
</pre>
|
|
</body>
|
|
</html>
|