Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(87)

Unified Diff: third_party/WebKit/LayoutTests/fast/text/find-backwards.html

Issue 2905013004: Speed up LayoutTests/fast/text/find-backwards.html (Closed)
Patch Set: Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/LayoutTests/fast/text/find-backwards.html
diff --git a/third_party/WebKit/LayoutTests/fast/text/find-backwards.html b/third_party/WebKit/LayoutTests/fast/text/find-backwards.html
index 1fed6128cf22c54b012d9f6b6fe824fa0020a48c..d0570afacca460f92d405c9f715627245d037a1f 100644
--- a/third_party/WebKit/LayoutTests/fast/text/find-backwards.html
+++ b/third_party/WebKit/LayoutTests/fast/text/find-backwards.html
@@ -1,9 +1,85 @@
-<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
+<!DOCTYPE html>
<html>
-<head>
-<script src="../../resources/js-test.js"></script>
-</head>
-<body>
-<script src="script-tests/find-backwards.js"></script>
-</body>
+ <head>
+ <title>find forwards and backwards</title>
+ <script src="../../resources/testharness.js"></script>
+ <script src="../../resources/testharnessreport.js"></script>
+ </head>
+ <body>
+ <p>
+ Tests find going both forward and backwards in small and large documents.
+ </p>
+ <script>
+ function findForwards(textNode, pattern) {
+ var selection = window.getSelection();
+ selection.removeAllRanges();
+
+ var beforeTextNodeRange = document.createRange();
+ beforeTextNodeRange.setStartBefore(textNode);
+ beforeTextNodeRange.setEndBefore(textNode);
+ selection.addRange(beforeTextNodeRange);
+
+ assert_true(find(pattern, false), 'Match expected.');
+ assert_equals(selection.rangeCount, 1, 'Exactly one match expected.');
+
+ var resultRange = selection.getRangeAt(0);
+ assert_equals(resultRange.startContainer, textNode);
+ assert_equals(resultRange.endContainer, textNode);
+
+ return resultRange.startOffset + ', ' + resultRange.endOffset;
+ }
+
+ function findBackwards(textNode, pattern) {
+ var selection = window.getSelection();
+ selection.removeAllRanges();
+
+ var afterTextNodeRange = document.createRange();
+ afterTextNodeRange.setStartAfter(textNode);
+ afterTextNodeRange.setEndAfter(textNode);
+ selection.addRange(afterTextNodeRange);
+
+ assert_true(find(pattern, false, true), 'Match expected.');
+ assert_equals(selection.rangeCount, 1, 'Exactly one match expected.');
+
+ var resultRange = selection.getRangeAt(0);
+ assert_equals(resultRange.startContainer, textNode);
+ assert_equals(resultRange.endContainer, textNode);
+
+ return resultRange.startOffset + ', ' + resultRange.endOffset;
+ }
+
+ var textNode = document.createTextNode('');
+ document.body.appendChild(textNode);
+
+ textNode.textContent = 'abc';
+ test(function() {
+ assert_equals(findForwards(textNode, 'a'), '0, 1');
+ assert_equals(findForwards(textNode, 'b'), '1, 2');
+ assert_equals(findForwards(textNode, 'c'), '2, 3');
+ }, 'Find forwards for short document.');
+
+ test(function() {
+ assert_equals(findBackwards(textNode, 'a'), '0, 1');
+ assert_equals(findBackwards(textNode, 'b'), '1, 2');
+ assert_equals(findBackwards(textNode, 'c'), '2, 3');
+ }, 'Find backwards for short document.');
+
+ var tenThousandChars = Array(10001).join('0');
+ textNode.textContent = tenThousandChars + 'abc' + tenThousandChars;
+
+ test(function() {
+ assert_equals(findForwards(textNode, 'a'), '10000, 10001');
+ assert_equals(findForwards(textNode, 'b'), '10001, 10002');
+ assert_equals(findForwards(textNode, 'c'), '10002, 10003');
+ }, 'Find forwards for long document.');
+
+ test(function() {
+ assert_equals(findBackwards(textNode, 'a'), '10000, 10001');
+ assert_equals(findBackwards(textNode, 'b'), '10001, 10002');
+ assert_equals(findBackwards(textNode, 'c'), '10002, 10003');
+ }, 'Find backwards for long document.');
+
+ document.body.removeChild(textNode);
+ </script>
+ </body>
</html>
« no previous file with comments | « third_party/WebKit/LayoutTests/SlowTests ('k') | third_party/WebKit/LayoutTests/fast/text/find-backwards-expected.txt » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698