mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-23 10:15:41 +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
81 lines
2.1 KiB
HTML
81 lines
2.1 KiB
HTML
<!DOCTYPE HTML>
|
|
<html>
|
|
<!--
|
|
https://bugzilla.mozilla.org/show_bug.cgi?id=598643
|
|
-->
|
|
<head>
|
|
<title>Test for Bug 598643</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=598643">Mozilla Bug 598643</a>
|
|
<p id="display"></p>
|
|
<pre id="test">
|
|
<script type="application/javascript">
|
|
|
|
/** Test for Bug 598643 **/
|
|
|
|
function createFileWithData(fileName, fileData)
|
|
{
|
|
return new File([new Blob([fileData], { type: "text/plain" })], fileName);
|
|
}
|
|
|
|
function testFileControl(aElement)
|
|
{
|
|
aElement.type = 'file';
|
|
|
|
var file = createFileWithData("file_bug598643", "file content");
|
|
SpecialPowers.wrap(aElement).mozSetFileArray([file]);
|
|
|
|
ok(aElement.validity.valid, "the file control should be valid");
|
|
ok(!aElement.validity.tooLong,
|
|
"the file control shouldn't suffer from being too long");
|
|
}
|
|
|
|
var types = [
|
|
// These types can be too long.
|
|
[ "text", "email", "password", "url", "search", "tel" ],
|
|
// These types can't be too long.
|
|
[ "radio", "checkbox", "submit", "button", "reset", "image", "hidden",
|
|
'number', 'range', 'date', 'time', 'color', 'month', 'week',
|
|
'datetime-local' ],
|
|
];
|
|
|
|
var input = document.createElement("input");
|
|
input.maxLength = 1;
|
|
input.value = "foo";
|
|
|
|
// Too long types.
|
|
for (type of types[0]) {
|
|
input.type = type
|
|
if (type == 'email') {
|
|
input.value = "foo@bar.com";
|
|
} else if (type == 'url') {
|
|
input.value = 'http://foo.org';
|
|
}
|
|
|
|
todo(!input.validity.valid, "the element should be invalid [type=" + type + "]");
|
|
todo(input.validity.tooLong,
|
|
"the element should suffer from being too long [type=" + type + "]");
|
|
|
|
if (type == 'email' || type == 'url') {
|
|
input.value = 'foo';
|
|
}
|
|
}
|
|
|
|
// Not too long types.
|
|
for (type of types[1]) {
|
|
input.type = type
|
|
ok(input.validity.valid, "the element should be valid [type=" + type + "]");
|
|
ok(!input.validity.tooLong,
|
|
"the element shouldn't suffer from being too long [type=" + type + "]");
|
|
}
|
|
|
|
testFileControl(input);
|
|
|
|
</script>
|
|
</pre>
|
|
</body>
|
|
</html>
|