62 lines
2.9 KiB
HTML
62 lines
2.9 KiB
HTML
<html><body><script src="../../resources/js-test.js"></script><script>
|
|
|
|
description("Test the contains function that checks if a range contains a boundary point.")
|
|
|
|
function range(startContainer, startOffset, endContainer, endOffset)
|
|
{
|
|
return new StaticRange({ startContainer: startContainer, startOffset: startOffset, endContainer: endContainer, endOffset: endOffset })
|
|
}
|
|
|
|
function contentsRange(node)
|
|
{
|
|
return range(node, 0, node, node.childNodes.length)
|
|
}
|
|
|
|
let documentElement = document.documentElement;
|
|
let body = document.body;
|
|
|
|
shouldBe("body.childNodes.length", "4")
|
|
|
|
shouldBeTrue("internals.rangeContainsBoundaryPoint(contentsRange(document), document, 0, 'ComposedTree')")
|
|
shouldBeTrue("internals.rangeContainsBoundaryPoint(contentsRange(document), document, 1, 'ComposedTree')")
|
|
shouldBeFalse("internals.rangeContainsBoundaryPoint(contentsRange(document), document, 2, 'ComposedTree')")
|
|
shouldBeTrue("internals.rangeContainsBoundaryPoint(contentsRange(document), body, 0, 'ComposedTree')");
|
|
shouldBeTrue("internals.rangeContainsBoundaryPoint(contentsRange(document), body, 1, 'ComposedTree')");
|
|
shouldBeTrue("internals.rangeContainsBoundaryPoint(contentsRange(document), body, 10, 'ComposedTree')");
|
|
shouldBeFalse("internals.rangeContainsBoundaryPoint(range(document, 0, documentElement, 0), body, 0, 'ComposedTree')");
|
|
shouldBeTrue("internals.rangeContainsBoundaryPoint(range(document, 0, body, 0), body, 0, 'ComposedTree')");
|
|
|
|
let a = document.createElement("div")
|
|
shouldBeFalse("internals.rangeContainsBoundaryPoint(contentsRange(document), a, 0, 'ComposedTree')")
|
|
shouldBeFalse("internals.rangeContainsBoundaryPoint(contentsRange(body), a, 0, 'ComposedTree')")
|
|
|
|
body.appendChild(a)
|
|
shouldBeTrue("internals.rangeContainsBoundaryPoint(contentsRange(document), a, 0, 'ComposedTree')")
|
|
shouldBeTrue("internals.rangeContainsBoundaryPoint(range(document, 0, a, 0), a, 0, 'ComposedTree')")
|
|
shouldBeFalse("internals.rangeContainsBoundaryPoint(range(document, 0, body, 0), a, 0, 'ComposedTree')")
|
|
shouldBeTrue("internals.rangeContainsBoundaryPoint(range(document, 0, body, 5), a, 0, 'ComposedTree')")
|
|
shouldBeFalse("internals.rangeContainsBoundaryPoint(range(body, 5, document, 1), a, 0, 'ComposedTree')")
|
|
shouldBeTrue("internals.rangeContainsBoundaryPoint(range(body, 0, document, 1), a, 0, 'ComposedTree')")
|
|
|
|
let b = document.createElement("div")
|
|
body.appendChild(b)
|
|
|
|
let c = document.createElement("div")
|
|
b.appendChild(c)
|
|
|
|
let d = document.createElement("div")
|
|
a.appendChild(d)
|
|
|
|
let e = document.createElement("div")
|
|
let f = document.createElement("div")
|
|
e.appendChild(f)
|
|
shouldBeFalse("internals.rangeContainsBoundaryPoint(contentsRange(body), f, 0, 'ComposedTree')")
|
|
|
|
let g = document.createElement("textarea");
|
|
c.appendChild(g)
|
|
let h = internals.ensureUserAgentShadowRoot(g).firstChild
|
|
shouldBeTrue("internals.rangeContainsBoundaryPoint(contentsRange(body), h, 0, 'ComposedTree')")
|
|
|
|
</script>
|
|
</body></html>
|