blob: e2e159faf877f9e7f1fe250264b35306391f6efb [file] [log] [blame] [edit]
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<script src="../resources/accessibility-helper.js"></script>
<script src="../resources/js-test.js"></script>
<style>
* { font-size: 20px; }
</style>
</head>
<body>
<div id="text-div" role="group">
<p>
<span>1: Line one line one</span><span contenteditable="false"> <br role="presentation"/></span>
<span>2: Line two line two</span><span contenteditable="false"></span>
</p>
<p>
<span>3: Line three line three</span><span contenteditable="false"> <br role="presentation"/></span>
<span>4: Line four line four </span><span contenteditable="false"></span>
</p>
<p>
<span>5: Line five line five</span><span contenteditable="false"> <br role="presentation"/></span>
<span>6: Line six line six</span><span contenteditable="false"></span>
</p>
<p>
<span>7: Line seven line seven</span><span contenteditable="false"> <br role="presentation"/></span>
<span>8: Line eight line eight </span><span contenteditable="false"></span>
</p>
<p>
<span>9: Line nine line nine</span><span contenteditable="false"> <br role="presentation"/></span>
<span>10: Line ten line ten</span><span contenteditable="false"></span>
</p>
<p>
<span>11: Line eleven line eleven</span><span contenteditable="false"> <br role="presentation"/></span>
<span>12: Line twelve line twelve</span><span contenteditable="false"></span>
</p>
<p>
<span>13: Line thirteen line thirteen</span><span contenteditable="false"> <br role="presentation"/></span>
<span>14: Line fourteen line fourteen</span><span contenteditable="false"></span>
</p>
<p>
<span>15: Line fifteen line fifteen</span><span contenteditable="false"> <br role="presentation"/></span>
<span>16: Line sixteen line sixteen</span><span contenteditable="false"></span>
</p>
<p>
<span>17: Line seventeen line seventeen</span><span contenteditable="false"> <br role="presentation"/></span>
<span>18: Line eighteen line eighteen</span><span contenteditable="false"></span>
</p>
<p>
<span>19: Line nineteen line nineteen</span><span contenteditable="false"> <br role="presentation"/></span>
<span>20: Line twenty line twenty </span><span contenteditable="false"></span>
</p>
<p>
<span>21: Line twentyone line twentyone</span><span contenteditable="false"> <br role="presentation"/></span>
<span>22: Line twentytwo line twentytwo</span><span contenteditable="false"></span>
</p>
<p>
<span>23: Line twentythree line twentythree</span><span contenteditable="false"> <br role="presentation"/></span>
<span>24: Line twentyfour line twentyfour</span><span contenteditable="false"></span>
</p>
</div>
<script>
var output = "This tests that visibleCharacterRange returns expected visible ranges with various view height values.\n\n";
if (window.accessibilityController) {
window.jsTestIsAsync = true;
const text = accessibilityController.accessibleElementById("text-div");
setTimeout(async function() {
// The main-thread implementation returns very wrong values. e.g. {135, 551} despite the height clearly changing.
// Passing --show-window passed to the test runner makes this visually apparent, too.
output += await verifyVisibleRange(text, {width: 300, height: 100, scrollTop: 198}, ["{135, 551}", "{137, 95}"]);
output += await verifyVisibleRange(text, {width: 300, height: 200, scrollTop: 198}, ["{135, 551}", "{137, 152}"]);
output += await verifyVisibleRange(text, {width: 300, height: 300, scrollTop: 198}, ["{135, 551}", "{137, 278}"]);
output += await verifyVisibleRange(text, {width: 300, height: 700, scrollTop: 198}, ["{135, 551}", "{137, 550}"]);
document.getElementById("text-div").style.display = "none";
debug(output);
finishJSTest();
}, 0);
}
</script>
</body>
</html>