blob: 81e506b5f2e7388422792940ab7891dd42bac5d1 [file] [log] [blame] [edit]
<!DOCTYPE html>
<html>
<head>
<title>Find string with selection disabled</title>
<meta charset="utf-8">
<script src="../../resources/testharness.js"></script>
<script src="../../resources/testharnessreport.js"></script>
<style type="text/css">
.selectionDisabled { -webkit-user-select: none; }
.selectionEnabled { -webkit-user-select: auto; }
</style>
</head>
<body>
<div id="container"></div>
<script>
async function testFindString(text, target, expected, disableSelection) {
const container = document.getElementById("container");
container.innerText = text;
container.className = disableSelection ? "selectionDisabled" : "selectionEnabled";
const result = await testRunner.findString(target, []);
assert_equals(result, expected);
container.innerText = "";
}
async function runTest(text, target, expected, disableSelection) {
await promise_test(() => testFindString(text, target, expected, disableSelection), `find "${target}" in "${text}" with selection ${disableSelection ? "disabled" : "enabled"}`);
}
const text1 = "Some sample text that can be searched";
const text2 = "insurmountable mountain";
const testData = [
{ text: text1, target: "e" },
{ text: text1, target: "o" },
{ text: text1, target: "y" },
{ text: text1, target: "t t" },
{ text: text2, target: "mount" },
{ text: text2, target: "Wally" },
];
for (disableSelection of [true, false]) {
for (data of testData) {
runTest(data.text, data.target, data.text.includes(data.target), disableSelection);
}
}
</script>
</body>
</html>