Bug 986730 - Fix up a bunch of tests that assume that they can touch AC in content. r=mrbkap

This commit is contained in:
Bobby Holley 2014-04-06 12:32:38 -07:00
parent bf0a65cde1
commit 586d18305b
8 changed files with 37 additions and 28 deletions

View File

@ -40,7 +40,7 @@ addLoadEvent(function() {
"http://mochi.test:8888/tests/content/base/test/file_base_xbl.xml",
"http://mochi.test:8888/tests/content/base/test/file_base_xbl.xml#shesellsseashellsbytheseashore",
];
node = SpecialPowers.unwrap(SpecialPowers.wrap(document).getAnonymousNodes(document.getElementById("bound")))[0];
node = SpecialPowers.wrap(document).getAnonymousNodes(document.getElementById("bound"))[0];
while(node) {
is(node.baseURI, svgExpected.shift(), "node base");
node = node.firstChild;

View File

@ -28,51 +28,60 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=372086
/** Test for Bug 372086 **/
// Note that we could avoid a lot of SpecialPowers.unwrap calls if the SpecialPowers
// wrappers could be made to preserve identity. See bug 718543.
function runTest() {
var range = document.createRange();
var range = SpecialPowers.wrap(document.createRange());
var c = $("d").firstChild;
var a = $("d").nextSibling;
range.setStart(c, 1);
range.setEnd(c, 3);
is(range.startContainer, c, "Unexpected start container");
is(SpecialPowers.unwrap(range.startContainer), c, "Unexpected start container");
is(range.startOffset, 1, "Unexpected start offset");
is(range.endContainer, c, "Unexpected end container");
is(SpecialPowers.unwrap(range.endContainer), c, "Unexpected end container");
is(range.endOffset, 3, "Unexpected end offset");
is(range.toString(), "bc", "Unexpected range serialization");
var anon = SpecialPowers.unwrap(SpecialPowers.wrap(document).getAnonymousNodes($("d")))[0];
var anon = SpecialPowers.wrap(document).getAnonymousNodes($("d"))[0];
// Should collapse the range, because can't determine order
range.setEnd(anon, 2);
is(range.startContainer, anon, "Unexpected collapsed start container");
is(SpecialPowers.unwrap(range.startContainer), SpecialPowers.unwrap(anon),
"Unexpected collapsed start container");
is(range.startOffset, 2, "Unexpected collapsed start offset");
is(range.endContainer, anon, "Unexpected collapsed end container");
is(SpecialPowers.unwrap(range.endContainer), SpecialPowers.unwrap(anon),
"Unexpected collapsed end container");
is(range.endOffset, 2, "Unexpected collapsed end offset");
is(range.toString(), "", "Unexpected collapsed range serialization");
range.setEnd(a, 2);
range.setStart(a, 0);
is(range.startContainer, a, "Unexpected start container after");
is(SpecialPowers.unwrap(range.startContainer), a, "Unexpected start container after");
is(range.startOffset, 0, "Unexpected start offset after");
is(range.endContainer, a, "Unexpected end container after");
is(SpecialPowers.unwrap(range.endContainer), a, "Unexpected end container after");
is(range.endOffset, 2, "Unexpected end offset after");
is(range.toString(), "de", "Unexpected range serialization after");
anon = SpecialPowers.unwrap(SpecialPowers.wrap(document).getAnonymousNodes($("d")))[2];
anon = SpecialPowers.wrap(document).getAnonymousNodes($("d"))[2];
// Collapses because one endpoint is anonymous from point of view of
// the other.
range.setStart(anon, 1);
is(range.startContainer, anon, "Unexpected newly collapsed start container");
is(SpecialPowers.unwrap(range.startContainer),
SpecialPowers.unwrap(anon), "Unexpected newly collapsed start container");
is(range.startOffset, 1, "Unexpected newly collapsed start offset");
is(range.endContainer, anon, "Unexpected newly collapsed end container");
is(SpecialPowers.unwrap(range.endContainer), SpecialPowers.unwrap(anon),
"Unexpected newly collapsed end container");
is(range.endOffset, 1, "Unexpected newly collapsed end offset");
is(range.toString(), "", "Unexpected collapsed range serialization");
range.setEnd(anon, 3);
is(range.startContainer, anon, "Unexpected anon start container");
is(SpecialPowers.unwrap(range.startContainer),
SpecialPowers.unwrap(anon), "Unexpected anon start container");
is(range.startOffset, 1, "Unexpected anon start offset");
is(range.endContainer, anon, "Unexpected anon end container");
is(SpecialPowers.unwrap(range.endContainer),
SpecialPowers.unwrap(anon), "Unexpected anon end container");
is(range.endOffset, 3, "Unexpected anon end offset");
is(range.toString(), "kl", "Unexpected anon range serialization");
}

View File

@ -22,9 +22,9 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=840098
/** Test for Bug 840098 **/
var mar = document.getElementById("m");
var anonymousNode = SpecialPowers.unwrap(SpecialPowers.wrap(document).getAnonymousNodes(mar)[0]);
var anonymousNode = SpecialPowers.wrap(document).getAnonymousNodes(mar)[0];
try {
document.implementation.createDocument("", "", null).adoptNode(anonymousNode);
SpecialPowers.wrap(document).implementation.createDocument("", "", null).adoptNode(anonymousNode);
ok(false, "shouldn't be able to adopt the root of an anonymous subtree");
} catch (e) {
is(e.name, "NotSupportedError", "threw the correct type of error");

View File

@ -33,8 +33,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=378866
/** Test for Bug 378866 **/
function runTest() {
var anon = SpecialPowers.unwrap(SpecialPowers.wrap(document).getAnonymousNodes(document.getElementById('grandparent')));
var child = document.getElementById('child');
var anon = SpecialPowers.wrap(document).getAnonymousNodes(document.getElementById('grandparent'));
var child = SpecialPowers.wrap(document).getElementById('child');
var insertionPoint = anon[0].childNodes[0];
insertionPoint.parentNode.removeChild(insertionPoint);
child.appendChild(insertionPoint);

View File

@ -32,9 +32,9 @@ addLoadEvent(function() {
var div = $("d");
var n = document.anchors.length;
is(n, 1, "Unexpected number of anchors");
var anon = SpecialPowers.unwrap(SpecialPowers.wrap(document).getAnonymousNodes(div))[0];
is(anon instanceof HTMLSpanElement, true, "Unexpected node");
is(anon.parentNode, div, "Unexpected parent");
var anon = SpecialPowers.wrap(document).getAnonymousNodes(div)[0];
ok(SpecialPowers.call_Instanceof(anon, HTMLSpanElement), "Unexpected node");
is(SpecialPowers.unwrap(anon.parentNode), div, "Unexpected parent");
document.body.appendChild(div);
is(anon.parentNode, null, "Parent should have become null");
// An attr set to test notifications

View File

@ -32,7 +32,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=319374
var counter = 0;
var error = null;
function getAnonymousNodes(e) {
return SpecialPowers.unwrap(SpecialPowers.wrap(document).getAnonymousNodes(e));
return SpecialPowers.wrap(document).getAnonymousNodes(e);
}
try {
var xp = new XPathEvaluator();
@ -66,7 +66,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=319374
lastChild)[0].getAttributeNode('attr');
var resultAttr = null;
try {
var xp2 = xp.evaluate(".",
var xp2 = SpecialPowers.wrap(xp).evaluate(".",
anonAttr1,
null,
SpecialPowers.Ci.nsIDOMXPathResult.
@ -75,7 +75,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=319374
// Attribute changing in a different anonymous tree.
anonAttr2.value = "foo";
resultAttr = xp2.iterateNext();
ok(resultAttr == anonAttr1, "XPathEvaluator returned wrong attribute!")
ok(SpecialPowers.compare(resultAttr, anonAttr1), "XPathEvaluator returned wrong attribute!")
} catch (e) {
ok(false, e);
}

View File

@ -41,7 +41,7 @@ addLoadEvent(function() {
is(withoutAnons[1], $("sandwiched"),
"didn't get sandwiched span - without anons");
var withAnons = SpecialPowers.unwrap(domUtils.getChildrenForNode($("bound"), true));
var withAnons = domUtils.getChildrenForNode($("bound"), true);
is(withAnons.length, 4, "bad withAnons.length");
is(withAnons[0].getAttribute("anonid"), "box-A",

View File

@ -42,7 +42,7 @@ function run() {
style_text.data = selector + "{ z-index: " + zi + " }";
var doc_div = document.getElementById("display");
var anon_div = SpecialPowers.unwrap(SpecialPowers.wrap(document).getAnonymousNodes(doc_div))[0];
var anon_div = SpecialPowers.wrap(document).getAnonymousNodes(doc_div)[0];
var should_match = [];
var should_not_match = [];
(matches_docdiv ? should_match : should_not_match).push(doc_div);
@ -50,12 +50,12 @@ function run() {
for (var i = 0; i < should_match.length; ++i) {
var e = should_match[i];
is(getComputedStyle(e, "").zIndex, zi,
is(SpecialPowers.wrap(window).getComputedStyle(e, "").zIndex, zi,
"element matched " + selector);
}
for (var i = 0; i < should_not_match.length; ++i) {
var e = should_not_match[i];
is(getComputedStyle(e, "").zIndex, "auto",
is(SpecialPowers.wrap(window).getComputedStyle(e, "").zIndex, "auto",
"element did not match " + selector);
}