/** Test for Bug 737565 **/ var offsets = [-1, 0, 1, 2, 3, 65536, 1 << 31];
// This is supposed to be an unsigned long, so adding or subtracting 1 << 32
// should have no effect var offsetOffsets = [0, -Math.pow(2, 32), Math.pow(2, 32)];
for (var i = 0; i < offsets.length; i++) {
for (var j = 0; j < offsetOffsets.length; j++) { var offset = offsets[i] + offsetOffsets[j];
// Doctype always needs to throw var threw = false;
try { var range = document.createRange();
range.comparePoint(document.doctype, offset);
} catch(e) {
threw = true;
is(e.name, "InvalidNodeTypeError", "comparePoint(document.doctype, " + offset
+ ") must throw InvalidNodeTypeError");
is(Object.getPrototypeOf(e), DOMException.prototype, "comparePoint(document.doctype, " + offset
+ ") must throw DOMException");
is(e.code, DOMException.INVALID_NODE_TYPE_ERR, "comparePoint(document.doctype, " + offset
+ ") must throw INVALID_NODE_TYPE_ERR");
}
ok(threw, "comparePoint(document.doctype, " + offset + ") must throw");
threw = false;
// document.documentElement has two children, head and body var expectedThrew = offsets[i] < 0 || offsets[i] > 2;
try { var range = document.createRange();
range.comparePoint(document.documentElement, offset);
} catch(e) {
threw = true;
is(e.name, "IndexSizeError", "comparePoint(document.documentElement, " + offset
+ ") must throw IndexSizeError");
is(Object.getPrototypeOf(e), DOMException.prototype, "comparePoint(document.documentElement, " + offset
+ ") must throw DOMException");
is(e.code, DOMException.INDEX_SIZE_ERR, "comparePoint(document.documentElement, " + offset
+ ") must throw INDEX_SIZE_ERR");
}
is(threw, expectedThrew, "comparePoint(document.documentElement, " + offset
+ ") must " + (expectedThrew ? "" : "not ") + "throw");
}
}
</script>
Messung V0.5
¤ Dauer der Verarbeitung: 0.22 Sekunden
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.