Chromium Code Reviews| Index: chrome/test/data/webui/md_history/history_list_test.js |
| diff --git a/chrome/test/data/webui/md_history/history_list_test.js b/chrome/test/data/webui/md_history/history_list_test.js |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..6cb1860c324c833ef79c5d15e1a962451955130c |
| --- /dev/null |
| +++ b/chrome/test/data/webui/md_history/history_list_test.js |
| @@ -0,0 +1,123 @@ |
| +// Copyright 2016 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +cr.define('md_history.history_list_test', function() { |
| + // Array of test history data. |
| + var TEST_HISTORY_RESULTS = [ |
| + { |
| + "dateRelativeDay": "Today - Wednesday, December 9, 2015", |
| + "url": "https://www.google.com" |
| + }, |
| + { |
| + "dateRelativeDay": "Yesterday - Tuesday, December 8, 2015", |
| + "url": "https://en.wikipedia.com" |
| + }, |
| + { |
| + "dateRelativeDay": "Monday, December 7, 2015", |
| + "url": "https://www.example.com" |
| + }, |
| + { |
| + "dateRelativeDay": "Monday, December 7, 2015", |
| + "url": "https://www.google.com" |
| + } |
| + ]; |
| + |
| + var ADDITIONAL_RESULTS = [ |
| + { |
| + "dateRelativeDay": "Monday, December 7, 2015", |
| + "url": "https://en.wikipedia.com" |
| + }, |
| + { |
| + "dateRelativeDay": "Monday, December 7, 2015", |
| + "url": "https://www.youtube.com" |
| + }, |
| + { |
| + "dateRelativeDay": "Sunday, December 6, 2015", |
| + "url": "https://www.google.com" |
| + }, |
| + { |
| + "dateRelativeDay": "Saturday, December 5, 2015", |
| + "url": "https://www.example.com" |
| + } |
| + ]; |
| + |
| + function registerTests() { |
| + suite('history-list', function() { |
| + var element; |
| + |
| + suiteSetup(function() { |
| + element = $('history-list'); |
| + }); |
| + |
| + setup(function() { |
| + element.addNewResults(TEST_HISTORY_RESULTS); |
| + }); |
| + |
| + test('setting first and last items', function() { |
| + element.addNewResults(TEST_HISTORY_RESULTS); |
| + |
| + assertTrue(element.historyData[0].isLastItem); |
| + assertTrue(element.historyData[0].isFirstItem); |
| + assertTrue(element.historyData[2].isFirstItem); |
| + assertEquals(undefined, element.historyData[3].isLastItem); |
| + }); |
| + |
| + test('cancelling selection of multiple items', function(done) { |
| + var toolbar = $('toolbar'); |
| + |
| + flush(function() { |
| + var items = Polymer.dom(element.root) |
| + .querySelectorAll('history-item'); |
| + |
| + MockInteractions.tap(items[2].$.checkbox); |
| + MockInteractions.tap(items[3].$.checkbox); |
| + |
| + |
| + // Make sure that the array of data that determines whether or not an |
| + // item is selected is what we expect after selecting the two items. |
| + assertFalse(element.historyData[0].selected); |
| + assertFalse(element.historyData[1].selected); |
| + assertTrue(element.historyData[2].selected); |
| + assertTrue(element.historyData[3].selected); |
| + |
| + toolbar.onClearSelectionTap_(); |
| + |
| + // Make sure that clearing the selection updates both the array and |
| + // the actual history-items affected. |
| + assertFalse(element.historyData[0].selected); |
| + assertFalse(element.historyData[1].selected); |
| + assertFalse(element.historyData[2].selected); |
| + assertFalse(element.historyData[3].selected); |
| + |
| + assertFalse(items[2].$.checkbox.checked); |
| + assertFalse(items[3].$.checkbox.checked); |
| + |
| + done(); |
| + }); |
| + }); |
| + |
| + test('updating history results', function() { |
| + element.addNewResults(ADDITIONAL_RESULTS); |
| + |
| + flush(function() { |
|
tsergeant
2016/02/02 23:47:33
Any test which uses flush() needs to use the `done
yingran
2016/02/04 02:13:42
Done.
|
| + assertTrue(element.historyData[2].isFirstItem); |
| + assertTrue(element.historyData[5].isLastItem); |
| + |
| + assertTrue(element.historyData[6].isFirstItem); |
| + assertTrue(element.historyData[6].isLastItem); |
| + |
| + assertTrue(element.historyData[7].isFirstItem); |
| + assertEquals(undefined, element.historyData[7].isLastItem); |
| + }); |
| + }); |
| + |
| + teardown(function() { |
| + element.historyData= []; |
| + }); |
| + }); |
| + } |
| + return { |
| + registerTests: registerTests |
| + }; |
| +}); |