42 lines
2.5 KiB
HTML
42 lines
2.5 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<script src="../../resources/js-test-pre.js"></script>
|
|
<script>
|
|
var a, b;
|
|
|
|
function testElements(_a, _b) {
|
|
a = _a;
|
|
b = _b;
|
|
|
|
shouldBe('a.compareDocumentPosition(b) & Node.DOCUMENT_POSITION_DISCONNECTED', 'Node.DOCUMENT_POSITION_DISCONNECTED');
|
|
shouldBe('b.compareDocumentPosition(a) & Node.DOCUMENT_POSITION_DISCONNECTED', 'Node.DOCUMENT_POSITION_DISCONNECTED');
|
|
shouldBe('a.compareDocumentPosition(b) & Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC', 'Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC');
|
|
shouldBe('b.compareDocumentPosition(a) & Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC', 'Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC');
|
|
shouldNotBe('a.compareDocumentPosition(b) & Node.DOCUMENT_POSITION_PRECEDING', 'b.compareDocumentPosition(a) & Node.DOCUMENT_POSITION_PRECEDING');
|
|
shouldNotBe('a.compareDocumentPosition(b) & Node.DOCUMENT_POSITION_FOLLOWING', 'b.compareDocumentPosition(a) & Node.DOCUMENT_POSITION_FOLLOWING');
|
|
shouldBeNonZero('a.compareDocumentPosition(b) & Node.DOCUMENT_POSITION_PRECEDING || a.compareDocumentPosition(b) & Node.DOCUMENT_POSITION_FOLLOWING');
|
|
shouldBeNonZero('b.compareDocumentPosition(a) & Node.DOCUMENT_POSITION_PRECEDING || b.compareDocumentPosition(a) & Node.DOCUMENT_POSITION_FOLLOWING');
|
|
// Make sure the returned result is consistent.
|
|
shouldBe('a.compareDocumentPosition(b)', 'a.compareDocumentPosition(b)');
|
|
shouldBe('b.compareDocumentPosition(a)', 'b.compareDocumentPosition(a)');
|
|
}
|
|
|
|
debug("* Test with 2 disconnected elements");
|
|
testElements(document.createElement('a'), document.createElement('b'));
|
|
debug("* Test with document and a disconnected element");
|
|
testElements(document, document.createElement('b'));
|
|
debug("* Test with document and a disconnected attribute");
|
|
testElements(document, document.createAttribute('b'));
|
|
debug("* Test with 2 disconnected attributes");
|
|
testElements(document.createAttribute("a"), document.createAttribute("b"));
|
|
debug("* Test with disconnected attribute and element");
|
|
testElements(document.createAttribute("a"), document.createElement("b"));
|
|
</script>
|
|
<script src="../../resources/js-test-post.js"></script>
|
|
</head>
|
|
<body>
|
|
<p>Comparing the positions of two disconnected nodes should result in DOCUMENT_POSITION_DISCONNECTED.</p>
|
|
</body>
|
|
</html>
|