| Index: chrome/browser/ui/webui/downloads_ui_browsertest.js
|
| diff --git a/chrome/browser/ui/webui/downloads_ui_browsertest.js b/chrome/browser/ui/webui/downloads_ui_browsertest.js
|
| index 1cd786a13bc26139bb8d223454e85ed99c0d0030..dfa5e89f82e6b51d1a417d791ebe69278d1b4b7f 100644
|
| --- a/chrome/browser/ui/webui/downloads_ui_browsertest.js
|
| +++ b/chrome/browser/ui/webui/downloads_ui_browsertest.js
|
| @@ -2,133 +2,9 @@
|
| // Use of this source code is governed by a BSD-style license that can be
|
| // found in the LICENSE file.
|
|
|
| +GEN_INCLUDE(['downloads_ui_browsertest_base.js']);
|
| GEN('#include "chrome/browser/ui/webui/downloads_ui_browsertest.h"');
|
|
|
| -/** @const */ var TOTAL_RESULT_COUNT = 25;
|
| -
|
| -/**
|
| - * Test C++ fixture for downloads WebUI testing.
|
| - * @constructor
|
| - * @extends {testing.Test}
|
| - */
|
| -function DownloadsUIBrowserTest() {}
|
| -
|
| -/**
|
| - * Base fixture for Downloads WebUI testing.
|
| - * @extends {testing.Test}
|
| - * @constructor
|
| - */
|
| -function BaseDownloadsWebUITest() {}
|
| -
|
| -BaseDownloadsWebUITest.prototype = {
|
| - __proto__: testing.Test.prototype,
|
| -
|
| - /**
|
| - * Browse to the downloads page & call our preLoad().
|
| - */
|
| - browsePreload: 'chrome://downloads',
|
| -
|
| - /** @override */
|
| - typedefCppFixture: 'DownloadsUIBrowserTest',
|
| -
|
| - /** @override */
|
| - testGenPreamble: function() {
|
| - GEN(' SetDeleteAllowed(true);');
|
| - },
|
| -
|
| - /**
|
| - * Sends TOTAL_RESULT_COUNT fake downloads to the page. This can't be called
|
| - * in the preLoad, because it requires the global Download object to have
|
| - * been created by the page.
|
| - * @override
|
| - */
|
| - setUp: function() {
|
| - // The entries will begin at 1:00 AM on Sept 2, 2008, and will be spaced
|
| - // two minutes apart.
|
| - var timestamp = new Date(2008, 9, 2, 1, 0).getTime();
|
| - for (var i = 0; i < TOTAL_RESULT_COUNT; ++i) {
|
| - downloads.updated(this.createDownload_(i, timestamp));
|
| - timestamp += 2 * 60 * 1000; // Next visit is two minutes later.
|
| - }
|
| - expectEquals(downloads.size(), TOTAL_RESULT_COUNT);
|
| - },
|
| -
|
| - /**
|
| - * Creates a download object to be passed to the page, following the expected
|
| - * backend format (see downloads_dom_handler.cc).
|
| - * @param {number} A unique ID for the download.
|
| - * @param {number} The time the download purportedly started.
|
| - * @return {!Object} A fake download object.
|
| - * @private
|
| - */
|
| - createDownload_: function(id, timestamp) {
|
| - return {
|
| - id: id,
|
| - started: timestamp,
|
| - otr: false,
|
| - state: Download.States.COMPLETE,
|
| - retry: false,
|
| - file_path: '/path/to/file',
|
| - file_url: 'http://google.com/' + timestamp,
|
| - file_name: 'download_' + timestamp,
|
| - url: 'http://google.com/' + timestamp,
|
| - file_externally_removed: false,
|
| - danger_type: Download.DangerType.NOT_DANGEROUS,
|
| - last_reason_text: '',
|
| - since_string: 'today',
|
| - date_string: 'today',
|
| - percent: 100,
|
| - progress_status_text: 'done',
|
| - received: 128,
|
| - };
|
| - },
|
| -
|
| - /**
|
| - * Asserts the correctness of the state of the UI elements
|
| - * that delete the download history.
|
| - * @param {boolean} allowDelete True if download history deletion is
|
| - * allowed and false otherwise.
|
| - * @param {boolean} expectControlsHidden True if the controls to delete
|
| - * download history are expected to be hidden and false otherwise.
|
| - */
|
| - testHelper: function(allowDelete, expectControlsHidden) {
|
| - var clearAllElements = document.getElementsByClassName('clear-all-link');
|
| - var disabledElements = document.getElementsByClassName('disabled-link');
|
| - var removeLinkElements =
|
| - document.getElementsByClassName('control-remove-link');
|
| -
|
| - // "Clear all" should be a link only when deletions are allowed.
|
| - expectEquals(allowDelete ? 1 : 0, clearAllElements.length);
|
| -
|
| - // There should be no disabled links when deletions are allowed.
|
| - // On the other hand, when deletions are not allowed, "Clear All"
|
| - // and all "Remove from list" links should be disabled.
|
| - expectEquals(allowDelete ? 0 : TOTAL_RESULT_COUNT + 1,
|
| - disabledElements.length);
|
| -
|
| - // All "Remove from list" items should be links when deletions are allowed.
|
| - // On the other hand, when deletions are not allowed, all
|
| - // "Remove from list" items should be text.
|
| - expectEquals(allowDelete ? TOTAL_RESULT_COUNT : 0,
|
| - removeLinkElements.length);
|
| -
|
| - if (allowDelete) {
|
| - // "Clear all" should not be hidden.
|
| - expectFalse(clearAllElements[0].hidden);
|
| -
|
| - // No "Remove from list" items should be hidden.
|
| - expectFalse(removeLinkElements[0].hidden);
|
| - } else {
|
| - expectEquals(expectControlsHidden, disabledElements[0].hidden);
|
| - }
|
| -
|
| - // The model is updated synchronously, even though the actual
|
| - // back-end removal (tested elsewhere) is asynchronous.
|
| - clearAll();
|
| - expectEquals(allowDelete ? 0 : TOTAL_RESULT_COUNT, downloads.size());
|
| - },
|
| -};
|
| -
|
| // Test UI when removing entries is allowed.
|
| TEST_F('BaseDownloadsWebUITest', 'DeleteAllowed', function() {
|
| this.testHelper(true, false);
|
| @@ -160,24 +36,3 @@ TEST_F('DownloadsWebUIDeleteProhibitedTest', 'DeleteProhibited', function() {
|
| // single item.
|
| testDone();
|
| });
|
| -
|
| -/**
|
| - * Fixture for Downloads WebUI testing for a supervised user.
|
| - * @extends {BaseDownloadsWebUITest}
|
| - * @constructor
|
| - */
|
| -function DownloadsWebUIForSupervisedUsersTest() {}
|
| -
|
| -DownloadsWebUIForSupervisedUsersTest.prototype = {
|
| - __proto__: BaseDownloadsWebUITest.prototype,
|
| -
|
| - /** @override */
|
| - typedefCppFixture: 'DownloadsWebUIForSupervisedUsersTest',
|
| -};
|
| -
|
| -// Test UI for supervised users, removing entries should be disabled
|
| -// and removal controls should be hidden.
|
| -TEST_F('DownloadsWebUIForSupervisedUsersTest', 'SupervisedUsers', function() {
|
| - this.testHelper(false, true);
|
| - testDone();
|
| -});
|
|
|