Chromium Code Reviews| Index: LayoutTests/inspector/console/console-search.html |
| diff --git a/LayoutTests/inspector/console/console-search.html b/LayoutTests/inspector/console/console-search.html |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..5eee554475e8b8e021aecd6026c777ee043468a0 |
| --- /dev/null |
| +++ b/LayoutTests/inspector/console/console-search.html |
| @@ -0,0 +1,147 @@ |
| +<html> |
| +<head> |
| +<script src="../../http/tests/inspector/inspector-test.js"></script> |
| +<script src="../../http/tests/inspector/console-test.js"></script> |
| +<script> |
| +function populateConsoleWithMessages() |
| +{ |
| + console.log("FIRST MATCH, SECOND MATCH"); |
| + for (var i = 0; i < 200; ++i) |
| + console.log("Message #" + i); |
| + var a = {}; |
| + for (var i = 0; i < 200; ++i) |
| + a["field_" + i] = "value #" + i; |
| + console.dir(a); |
| + console.log("LAST MATCH"); |
| + runTest(); |
| +} |
| + |
| +function test() |
| +{ |
| + function addResult(result) |
| + { |
| + viewport.refresh(); |
| + InspectorTest.addResult(result); |
| + } |
| + |
| + function setQuery(text) |
| + { |
| + consoleView._searchableView._searchInputElement.value = text; |
| + consoleView._searchableView.showSearchField(); |
| + } |
| + |
| + var consoleView = WebInspector.ConsolePanel._view(); |
| + var viewport = consoleView._viewport; |
| + const maximumViewportMessagesCount = 150; |
| + InspectorTest.runTestSuite([ |
| + function assertViewportHeight(next) |
| + { |
| + viewport.invalidate(); |
| + var viewportMessagesCount = viewport._lastVisibleIndex - viewport._firstVisibleIndex; |
| + if (viewportMessagesCount > maximumViewportMessagesCount) { |
| + InspectorTest.addResult(String.sprintf( |
| + "Test cannot be run because viewport can fit %d messages, while %d is the test's maximum.", |
| + viewportMessagesCount, maximumViewportMessagesCount)); |
| + InspectorTest.completeTest(); |
| + return; |
| + } |
| + next(); |
| + }, |
| + |
| + function scrollConsoleToTop(next) |
| + { |
| + viewport.forceScrollItemToBeFirst(0); |
| + addResult("first visible message index: " + viewport.firstVisibleIndex()); |
| + next(); |
| + }, |
| + |
| + function testCanJumpForward(next) |
| + { |
| + setQuery("MATCH"); |
| + |
| + // Find first match |
|
lushnikov
2014/12/04 16:07:34
Please terminate all the comments here with period
aknudsen
2014/12/05 22:30:02
Done.
|
| + consoleView._searchableView.handleFindNextShortcut(); |
| + addResult("first visible message index: " + viewport.firstVisibleIndex()); |
| + |
| + // Find second match |
| + consoleView._searchableView.handleFindNextShortcut(); |
| + addResult("first visible message index: " + viewport.firstVisibleIndex()); |
| + |
| + // Find last match |
| + consoleView._searchableView.handleFindNextShortcut(); |
| + addResult("last visible message index: " + viewport.lastVisibleIndex()); |
| + next(); |
| + }, |
| + |
| + function testCanJumpBackward(next) |
| + { |
| + setQuery("MATCH"); |
| + |
| + // Start out at the first match |
| + consoleView._searchableView.handleFindNextShortcut(); |
| + |
| + // Find last match |
| + consoleView._searchableView.handleFindPreviousShortcut(); |
| + addResult("last visible message index: " + viewport.lastVisibleIndex()); |
| + |
| + // Find second match |
| + consoleView._searchableView.handleFindPreviousShortcut(); |
| + addResult("first visible message index: " + viewport.firstVisibleIndex()); |
| + |
| + // Find first match |
| + consoleView._searchableView.handleFindPreviousShortcut(); |
| + addResult("first visible message index: " + viewport.firstVisibleIndex()); |
| + next(); |
| + }, |
| + |
| + function scrollConsoleToTop(next) |
| + { |
| + viewport.forceScrollItemToBeFirst(0); |
| + addResult("first visible message index: " + viewport.firstVisibleIndex()); |
| + next(); |
| + }, |
| + |
| + function testCanMarkCurrentMatch(next) |
| + { |
| + setQuery("MATCH"); |
| + |
| + // Find first match |
| + consoleView._searchableView.handleFindNextShortcut(); |
| + addResult(InspectorTest.dumpConsoleMessagesIntoArray(false, true)); |
|
lushnikov
2014/12/04 16:07:34
This adds a lot of output which is impossible to r
aknudsen
2014/12/05 22:30:02
Done.
|
| + |
| + // Find second match |
| + consoleView._searchableView.handleFindNextShortcut(); |
| + addResult(InspectorTest.dumpConsoleMessagesIntoArray(false, true)); |
| + |
| + next(); |
| + }, |
| + |
| + function testCanJumpForwardBetweenTreeElementMatches(next) |
| + { |
| + InspectorTest.expandConsoleMessages(function() |
| + { |
| + // Find first match |
| + setQuery("field_1"); |
| + consoleView._searchableView.handleFindNextShortcut(); |
| + var currentResultElem = document.querySelector(".current-search-result"); |
| + addResult("matched tree element: " + currentResultElem.innerHTML); |
| + |
| + // Find last match |
| + setQuery("field_199"); |
| + consoleView._searchableView.handleFindNextShortcut(); |
| + currentResultElem = document.querySelector(".current-search-result"); |
| + addResult("matched tree element: " + currentResultElem.innerHTML); |
| + |
| + next(); |
| + }); |
| + } |
| + ]); |
| +} |
| +</script> |
| +</head> |
| +<body onload="populateConsoleWithMessages()"> |
| +<p> |
| + Tests console search. |
| +</p> |
| +</body> |
| +</html> |