2008-09-26 03:39:18 -07:00
|
|
|
<!DOCTYPE HTML>
|
|
|
|
<html>
|
|
|
|
<!--
|
|
|
|
https://bugzilla.mozilla.org/show_bug.cgi?id=433533
|
|
|
|
-->
|
|
|
|
<head>
|
|
|
|
<title>Test for Bug 433533</title>
|
2009-05-06 13:46:04 -07:00
|
|
|
<script type="text/javascript" src="/MochiKit/packed.js"></script>
|
2008-09-26 03:39:18 -07:00
|
|
|
<script type="text/javascript" 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=433533">Mozilla Bug 433533</a>
|
|
|
|
<p id="display"></p>
|
|
|
|
<div id="content" style="display: none">
|
|
|
|
|
|
|
|
</div>
|
|
|
|
<pre id="test">
|
|
|
|
<script class="testbody" type="text/javascript">
|
|
|
|
|
|
|
|
/** Test for Bug 433533 **/
|
|
|
|
|
|
|
|
var input = document.createElement("input");
|
|
|
|
input.setAttribute("type", "hidden");
|
|
|
|
is(input.getAttribute("type"), "hidden", "Setting type attribute didn't work!");
|
|
|
|
input.setAttribute("type", "hiDDen");
|
|
|
|
is(input.getAttribute("type"), "hiDDen", "Type attribute didn't store the original value");
|
|
|
|
is(input.type, "hidden", "Wrong input.type!");
|
|
|
|
input.setAttribute("type", "HIDDEN");
|
|
|
|
is(input.getAttribute("type"), "HIDDEN", "Type attribute didn't store the original value");
|
|
|
|
is(input.type, "hidden", "Wrong input.type!");
|
|
|
|
|
|
|
|
var td = document.createElement("td");
|
|
|
|
td.setAttribute("scope", "rOW");
|
|
|
|
is(td.getAttribute("scope"), "rOW", "Scope attribute didn't store the original value");
|
|
|
|
td.setAttribute("scope", "row");
|
|
|
|
is(td.getAttribute("scope"), "row", "Scope attribute didn't store the original value");
|
|
|
|
td.setAttribute("colspan", "100k");
|
|
|
|
is(td.getAttribute("colspan"), "100k", "Colspan attribute didn't store the original value");
|
|
|
|
td.setAttribute("colspan", " 100 ");
|
|
|
|
is(td.getAttribute("colspan"), " 100 ", "Colspan attribute didn't store the original value");
|
|
|
|
td.setAttribute("colspan", "100");
|
|
|
|
is(td.getAttribute("colspan"), "100", "Colspan attribute didn't store the original value");
|
|
|
|
|
|
|
|
// Note, if colspan is negative, it is set to 1, because of backwards compatibility.
|
|
|
|
// @see nsHTMLTableCellElement::ParseAttribute
|
|
|
|
td.setAttribute("colspan", "-100k");
|
|
|
|
is(td.getAttribute("colspan"), "1", "Colspan attribute didn't store the original value");
|
|
|
|
td.setAttribute("colspan", " -100 ");
|
|
|
|
is(td.getAttribute("colspan"), "1", "Colspan attribute didn't store the original value");
|
|
|
|
td.setAttribute("colspan", "-100");
|
|
|
|
is(td.getAttribute("colspan"), "1", "Colspan attribute didn't store the original value");
|
|
|
|
|
|
|
|
|
|
|
|
td.setAttribute("colspan", "foobar");
|
|
|
|
is(td.getAttribute("colspan"), "foobar", "Colspan attribute didn't store the original value");
|
|
|
|
|
|
|
|
var iframe = document.createElement("iframe");
|
|
|
|
iframe.setAttribute("marginwidth", "50%");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "50%",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "50");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "50",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "0");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "0",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "0%");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "0%",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
|
|
|
|
iframe.setAttribute("marginwidth", "9999999999999999999999");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "9999999999999999999999",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "9999999999999999999999%");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "9999999999999999999999%",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
|
|
|
|
iframe.setAttribute("marginwidth", "-9999999999999999999999");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "-9999999999999999999999",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "-9999999999999999999999%");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "-9999999999999999999999%",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
|
|
|
|
|
|
|
|
// Test PRInt32 min/max value
|
|
|
|
iframe.setAttribute("marginwidth", "2147483647");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "2147483647",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "2147483647%");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "2147483647%",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
|
|
|
|
iframe.setAttribute("marginwidth", "-2147483648");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "-2147483648",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "-2147483648%");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "-2147483648%",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
|
|
|
|
iframe.setAttribute("marginwidth", "2147483646");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "2147483646",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "2147483647%");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "2147483647%",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
|
|
|
|
iframe.setAttribute("marginwidth", "-2147483647");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "-2147483647",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "-2147483647%");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "-2147483647%",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
|
|
|
|
iframe.setAttribute("marginwidth", "2147483648");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "2147483648",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "2147483648%");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "2147483648%",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
|
|
|
|
iframe.setAttribute("marginwidth", "-2147483649");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "-2147483649",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "-2147483649%");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "-2147483649%",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
|
|
|
|
// some values 0 > x > NS_ATTRVALUE_INTEGERTYPE_MAXVALUE
|
|
|
|
iframe.setAttribute("marginwidth", "134217726");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "134217726",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "134217727");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "134217727",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "134217728");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "134217728",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "134217729");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "134217729",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
|
|
|
|
iframe.setAttribute("marginwidth", "134217726%");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "134217726%",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "134217727%");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "134217727%",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "134217728%");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "134217728%",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "134217729%");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "134217729%",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
|
|
|
|
// some values 0 < x < NS_ATTRVALUE_INTEGERTYPE_MINVALUE
|
|
|
|
iframe.setAttribute("marginwidth", "-134217727");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "-134217727",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "-134217728");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "-134217728",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "-134217729");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "-134217729",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "-134217730");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "-134217730",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "-134217727%");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "-134217727%",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "-134217728%");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "-134217728%",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "-134217729%");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "-134217729%",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "-134217730%");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "-134217730%",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
|
|
|
|
iframe.setAttribute("marginwidth", "-0");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "-0",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "-0%");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "-0%",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", " 0 ");
|
|
|
|
is(iframe.getAttribute("marginwidth"), " 0 ",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", " 0% ");
|
|
|
|
is(iframe.getAttribute("marginwidth"), " 0% ",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "-50%");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "-50%",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "-50");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "-50",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", " -50% ");
|
|
|
|
is(iframe.getAttribute("marginwidth"), " -50% ",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", " -50 ");
|
|
|
|
is(iframe.getAttribute("marginwidth"), " -50 ",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
iframe.setAttribute("marginwidth", "foobar");
|
|
|
|
is(iframe.getAttribute("marginwidth"), "foobar",
|
|
|
|
"Marginwidth attribute didn't store the original value");
|
|
|
|
|
|
|
|
var bd = document.createElement("body");
|
|
|
|
bd.setAttribute("bgcolor", "red");
|
|
|
|
is(bd.getAttribute("bgcolor"), "red", "Bgcolor attribute didn't store the original value");
|
2009-05-19 19:11:01 -07:00
|
|
|
is(bd.bgColor, "red", ".bgColor didn't return the right value!");
|
|
|
|
|
2008-09-26 03:39:18 -07:00
|
|
|
bd.setAttribute("bgcolor", " red ");
|
2009-08-19 08:05:14 -07:00
|
|
|
is(bd.getAttribute("bgcolor"), " red ", "Bgcolor attribute didn't store the original value");
|
|
|
|
is(bd.bgColor, " red ", ".bgColor didn't return the right value!");
|
2009-05-19 19:11:01 -07:00
|
|
|
|
2008-09-26 03:39:18 -07:00
|
|
|
bd.setAttribute("bgcolor", "#ff0000");
|
2009-05-19 19:11:01 -07:00
|
|
|
is(bd.getAttribute("bgcolor"), "#ff0000", "Bgcolor attribute didn't store the original value");
|
2008-09-26 03:39:18 -07:00
|
|
|
is(bd.bgColor, "#ff0000", ".bgColor didn't return the right value!");
|
|
|
|
|
2009-08-19 08:05:14 -07:00
|
|
|
bd.setAttribute("bgcolor", "#f00");
|
|
|
|
is(bd.getAttribute("bgcolor"), "#f00", "Bgcolor attribute didn't store the original value");
|
|
|
|
is(bd.bgColor, "#f00", ".bgColor didn't return the right value!");
|
|
|
|
|
2009-05-19 19:11:01 -07:00
|
|
|
bd.setAttribute("bgcolor", " #ff0000 ");
|
2009-08-19 08:05:14 -07:00
|
|
|
is(bd.getAttribute("bgcolor"), " #ff0000 ", "Bgcolor attribute didn't store the original value");
|
|
|
|
is(bd.bgColor, " #ff0000 ", ".bgColor didn't return the right value!");
|
|
|
|
|
|
|
|
bd.setAttribute("bgcolor", "nonsense(complete)");
|
|
|
|
is(bd.getAttribute("bgcolor"), "nonsense(complete)", "Bgcolor attribute didn't store the original value");
|
|
|
|
is(bd.bgColor, "nonsense(complete)", ".bgColor didn't return the right value!");
|
2009-05-19 19:11:01 -07:00
|
|
|
|
|
|
|
// same test again setting the prop
|
|
|
|
bd.bgColor = "red";
|
|
|
|
is(bd.getAttribute("bgcolor"), "red", "Bgcolor attribute didn't store the original value");
|
|
|
|
is(bd.bgColor, "red", ".bgColor didn't return the right value!");
|
|
|
|
|
|
|
|
bd.bgColor = " red ";
|
2009-08-19 08:05:14 -07:00
|
|
|
is(bd.getAttribute("bgcolor"), " red ", "Bgcolor attribute didn't store the original value");
|
|
|
|
is(bd.bgColor, " red ", ".bgColor didn't return the right value!");
|
2009-05-19 19:11:01 -07:00
|
|
|
|
|
|
|
bd.bgColor = "#ff0000";
|
|
|
|
is(bd.getAttribute("bgcolor"), "#ff0000", "Bgcolor attribute didn't store the original value");
|
|
|
|
is(bd.bgColor, "#ff0000", ".bgColor didn't return the right value!");
|
|
|
|
|
2009-08-19 08:05:14 -07:00
|
|
|
bd.bgColor = "#f00";
|
|
|
|
is(bd.getAttribute("bgcolor"), "#f00", "Bgcolor attribute didn't store the original value");
|
|
|
|
is(bd.bgColor, "#f00", ".bgColor didn't return the right value!");
|
|
|
|
|
2009-05-19 19:11:01 -07:00
|
|
|
bd.bgColor = " #ff0000 ";
|
2009-08-19 08:05:14 -07:00
|
|
|
is(bd.getAttribute("bgcolor"), " #ff0000 ", "Bgcolor attribute didn't store the original value");
|
|
|
|
is(bd.bgColor, " #ff0000 ", ".bgColor didn't return the right value!");
|
|
|
|
|
|
|
|
bd.bgColor = "nonsense(complete)";
|
|
|
|
is(bd.getAttribute("bgcolor"), "nonsense(complete)", "Bgcolor attribute didn't store the original value");
|
|
|
|
is(bd.bgColor, "nonsense(complete)", ".bgColor didn't return the right value!");
|
|
|
|
|
|
|
|
// equal color, unequal string
|
|
|
|
var f1 = document.createElement("font");
|
|
|
|
var f2 = document.createElement("font");
|
|
|
|
var f3 = document.createElement("font");
|
|
|
|
f1.color = "#f00";
|
|
|
|
f2.color = "#ff0000";
|
|
|
|
f3.color = "red";
|
|
|
|
isnot(f1.color, f2.color, "#f00 and #ff0000 should not compare equal");
|
|
|
|
isnot(f1.color, f3.color, "#f00 and red should not compare equal");
|
|
|
|
isnot(f2.color, f3.color, "#ff0000 and red should not compare equal");
|
|
|
|
|
|
|
|
isnot(f1.getAttribute("color"), f2.getAttribute("color"),
|
|
|
|
"#f00 and #ff0000 should not compare equal [attr]");
|
|
|
|
isnot(f1.getAttribute("color"), f3.getAttribute("color"),
|
|
|
|
"#f00 and red should not compare equal [attr]");
|
|
|
|
isnot(f2.getAttribute("color"), f3.getAttribute("color"),
|
|
|
|
"#ff0000 and red should not compare equal [attr]");
|
2009-05-19 19:11:01 -07:00
|
|
|
|
2008-09-26 03:39:18 -07:00
|
|
|
var video = document.createElement("video");
|
|
|
|
video.setAttribute("playbackrate", "1");
|
|
|
|
is(video.getAttribute('playbackrate'), "1",
|
|
|
|
"Playbackrate attribute didn't store the original value");
|
|
|
|
video.setAttribute("playbackrate", "1.5");
|
|
|
|
is(video.getAttribute('playbackrate'), "1.5",
|
|
|
|
"Playbackrate attribute didn't store the original value");
|
|
|
|
video.setAttribute("playbackrate", "999999999999999999");
|
|
|
|
is(video.getAttribute('playbackrate'), "999999999999999999",
|
|
|
|
"Playbackrate attribute didn't store the original value");
|
|
|
|
video.setAttribute("playbackrate", "-999999999999999999");
|
|
|
|
is(video.getAttribute('playbackrate'), "-999999999999999999",
|
|
|
|
"Playbackrate attribute didn't store the original value");
|
|
|
|
video.setAttribute("playbackrate", "foo");
|
|
|
|
is(video.getAttribute('playbackrate'), "foo",
|
|
|
|
"Playbackrate attribute didn't store the original value");
|
|
|
|
</script>
|
|
|
|
</pre>
|
|
|
|
</body>
|
|
|
|
</html>
|
|
|
|
|