
This CL moves third_party/WebKit/LayoutTests to third_party/blink/web_tests. NOTRY=true NOAUTOREVERT=true NOPRESUBMIT=true NOTREECHECKS=true TBR=robertma@chromium.org Bug: 843412 Change-Id: Ibb588b93d1579bcd1cb68df0a50efd8653f8724f Reviewed-on: https://chromium-review.googlesource.com/c/1328627 Reviewed-by: Kent Tamura <tkent@chromium.org> Commit-Queue: Kent Tamura <tkent@chromium.org> Cr-Commit-Position: refs/heads/master@{#610740}
58 lines
1.5 KiB
HTML
58 lines
1.5 KiB
HTML
<!DOCTYPE html>
|
|
<script src="../resources/testharness.js"></script>
|
|
<script src="../resources/testharnessreport.js"></script>
|
|
<script src="resources/shadow-dom.js"></script>
|
|
<div id="targets">
|
|
<div>Non-shadow</div>
|
|
|
|
<div>
|
|
<template>Shadow</template>
|
|
</div>
|
|
|
|
<div>
|
|
<template>
|
|
<div>
|
|
<template>Multi-level</template>
|
|
</div>
|
|
</template>
|
|
</div>
|
|
|
|
<details></details>
|
|
</div>
|
|
<script>
|
|
convertTemplatesToShadowRootsWithin(targets);
|
|
|
|
for (var i = 0; i < targets.children.length; ++i) {
|
|
var target = targets.children[i];
|
|
test(function () {
|
|
testCaretRangeFromPoint(target);
|
|
}, target.tagName);
|
|
}
|
|
|
|
function testCaretRangeFromPoint(target) {
|
|
var x = target.offsetLeft;
|
|
var y = target.offsetTop + target.offsetHeight / 2;
|
|
for (var offsetX = 2; offsetX >= -2; --offsetX) {
|
|
var range = document.caretRangeFromPoint(x + offsetX, y);
|
|
assert_true(isInDocumentTree(range.startContainer), "isInDocumentTree(startContainer) when offsetX=" + offsetX);
|
|
assert_true(isInDocumentTree(range.endContainer), "isInDocumentTree(endContainer) when offsetX=" + offsetX);
|
|
}
|
|
}
|
|
|
|
function isInDocumentTree(node) {
|
|
return rootNode(node) === document;
|
|
}
|
|
|
|
function rootNode(node) {
|
|
for (;;) {
|
|
var parent = node.parentNode;
|
|
if (!parent)
|
|
return node;
|
|
node = parent;
|
|
}
|
|
}
|
|
|
|
if (window.testRunner)
|
|
targets.style.display = "none";
|
|
</script>
|