Chromium Code Reviews| Index: chrome/test/data/webui/history_browsertest.js |
| diff --git a/chrome/test/data/webui/history_browsertest.js b/chrome/test/data/webui/history_browsertest.js |
| index 3cb30d2dcca6226d8b4919b81738e37fa562003e..67e58c695487f4ad8948955509c45f6a0c82e9e7 100644 |
| --- a/chrome/test/data/webui/history_browsertest.js |
| +++ b/chrome/test/data/webui/history_browsertest.js |
| @@ -174,20 +174,30 @@ function queryHistoryImpl(args, beginTime, history) { |
| var endTime = args[3] || Number.MAX_VALUE; |
| var maxCount = args[4]; |
| + // Search only by title in this stub. |
|
Patrick Dubroy
2013/04/03 14:12:33
nit: I'd move this comment down above the "if hist
Sergiu
2013/04/03 17:04:39
Done.
|
| + var results = []; |
| + if (searchText) { |
| + for (var k = 0; k < history.length; k++) { |
| + if (history[k].title.indexOf(searchText) != -1) |
| + results.push(history[k]); |
| + } |
| + } else { |
| + results = history; |
| + } |
| + |
| // Advance past all entries newer than the specified end time. |
| var i = 0; |
| - while (i < history.length && history[i].time >= endTime) |
| + while (i < results.length && results[i].time >= endTime) |
| ++i; |
| - var results = new Array(); |
| if (beginTime) { |
| var j = i; |
| - while (j < history.length && history[j].time >= beginTime) |
| + while (j < results.length && results[j].time >= beginTime) |
| ++j; |
| - results = history.slice(i, j); |
| + results = results.slice(i, j); |
| } else { |
| - results = history.slice(i); |
| + results = results.slice(i); |
| } |
| if (maxCount) |
| @@ -207,7 +217,7 @@ function queryHistoryImpl(args, beginTime, history) { |
| 'historyResult', |
| { |
| term: searchText, |
| - finished: (history.length <= i + results.length), |
| + finished: (searchText || history.length <= i + results.length), |
|
Patrick Dubroy
2013/04/03 14:12:33
Might as well make this correct too.
Sergiu
2013/04/03 17:04:39
Done.
|
| queryStartTime: queryStartTime, |
| queryEndTime: queryEndTime |
| }, |
| @@ -501,6 +511,30 @@ TEST_F('HistoryWebUITest', 'multipleSelect', function() { |
| testDone(); |
| }); |
| +TEST_F('HistoryWebUITest', 'searchHistory', function() { |
| + var getResultCount = function() { |
| + return document.querySelectorAll('.entry').length; |
| + }; |
| + // See that all the elements are there. |
| + expectEquals(RESULTS_PER_PAGE, getResultCount()); |
| + |
| + // See that the search works. |
| + $('search-field').value = 'Thu Oct 02 2008'; |
| + $('search-button').click(); |
| + |
| + waitForCallback('historyResult', function() { |
| + expectEquals(31, getResultCount()); |
| + |
| + // Clear the search. |
| + $('search-field').value = ''; |
| + $('search-button').click(); |
| + waitForCallback('historyResult', function() { |
| + expectEquals(RESULTS_PER_PAGE, getResultCount()); |
| + testDone(); |
| + }); |
| + }); |
| +}); |
| + |
| function setPageState(searchText, page, groupByDomain, range, offset) { |
| window.location = '#' + PageState.getHashString( |
| searchText, page, groupByDomain, range, offset); |