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

Side by Side Diff: chrome/test/data/webui/extensions/extension_item_test.js

Issue 2707083003: [MD Extensions] Update Item Card UI (Closed)
Patch Set: missed one Created 3 years, 9 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 unified diff | Download patch
« no previous file with comments | « chrome/browser/ui/webui/extensions/extensions_ui.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 /** @fileoverview Suite of tests for extension-item. */ 5 /** @fileoverview Suite of tests for extension-item. */
6 cr.define('extension_item_tests', function() { 6 cr.define('extension_item_tests', function() {
7 /** 7 /**
8 * The data used to populate the extension item. 8 * The data used to populate the extension item.
9 * @type {chrome.developerPrivate.ExtensionInfo} 9 * @type {chrome.developerPrivate.ExtensionInfo}
10 */ 10 */
11 var extensionData = extension_test_util.createExtensionInfo(); 11 var extensionData = extension_test_util.createExtensionInfo();
12 12
13 // The normal elements, which should always be shown. 13 // The normal elements, which should always be shown.
14 var normalElements = [ 14 var normalElements = [
15 {selector: '#name', text: extensionData.name}, 15 {selector: '#name', text: extensionData.name},
16 {selector: '#icon'}, 16 {selector: '#icon'},
17 {selector: '#description', text: extensionData.description}, 17 {selector: '#description', text: extensionData.description},
18 {selector: '#enable-toggle'}, 18 {selector: '#enable-toggle'},
19 {selector: '#details-button'}, 19 {selector: '#details-button'},
20 {selector: '#remove-button'}, 20 {selector: '#remove-button'},
21 ]; 21 ];
22 // The developer elements, which should only be shown if in developer 22 // The developer elements, which should only be shown if in developer
23 // mode *and* showing details. 23 // mode *and* showing details.
24 var devElements = [ 24 var devElements = [
25 {selector: '#version', text: extensionData.version}, 25 {selector: '#version', text: extensionData.version},
26 {selector: '#extension-id', text: 'ID:' + extensionData.id}, 26 {selector: '#extension-id', text: 'ID:' + extensionData.id},
27 {selector: '#inspect-views'}, 27 {selector: '#inspect-views'},
28 {selector: '#inspect-views paper-button', text: 'foo.html'}, 28 {selector: '#inspect-views paper-button', text: 'foo.html,'},
29 {selector: '#inspect-views paper-button:nth-of-type(0n + 2)', 29 {selector: '#inspect-views paper-button:nth-of-type(2)',
30 text: 'bar.html'}, 30 text: '1 moreā€¦'},
31 ]; 31 ];
32 32
33 /** 33 /**
34 * Tests that the elements' visibility matches the expected visibility. 34 * Tests that the elements' visibility matches the expected visibility.
35 * @param {extensions.Item} item 35 * @param {extensions.Item} item
36 * @param {Array<Object<string>>} elements 36 * @param {Array<Object<string>>} elements
37 * @param {boolean} visibility 37 * @param {boolean} visibility
38 */ 38 */
39 function testElementsVisibility(item, elements, visibility) { 39 function testElementsVisibility(item, elements, visibility) {
40 elements.forEach(function(element) { 40 elements.forEach(function(element) {
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
118 test(assert(TestNames.ClickableItems), function() { 118 test(assert(TestNames.ClickableItems), function() {
119 item.set('inDevMode', true); 119 item.set('inDevMode', true);
120 120
121 mockDelegate.testClickingCalls( 121 mockDelegate.testClickingCalls(
122 item.$['remove-button'], 'deleteItem', [item.data.id]); 122 item.$['remove-button'], 'deleteItem', [item.data.id]);
123 mockDelegate.testClickingCalls( 123 mockDelegate.testClickingCalls(
124 item.$['enable-toggle'], 'setItemEnabled', [item.data.id, false]); 124 item.$['enable-toggle'], 'setItemEnabled', [item.data.id, false]);
125 mockDelegate.testClickingCalls( 125 mockDelegate.testClickingCalls(
126 item.$$('#inspect-views paper-button'), 126 item.$$('#inspect-views paper-button'),
127 'inspectItemView', [item.data.id, item.data.views[0]]); 127 'inspectItemView', [item.data.id, item.data.views[0]]);
128 mockDelegate.testClickingCalls(
129 item.$$('#inspect-views paper-button:nth-of-type(0n + 2)'),
130 'inspectItemView', [item.data.id, item.data.views[1]]);
131 128
132 var listener = new extension_test_util.ListenerMock(); 129 var listener1 = new extension_test_util.ListenerMock();
133 listener.addListener(item, 'extension-item-show-details', 130 listener1.addListener(item, 'extension-item-show-details',
134 {data: item.data}); 131 {data: item.data});
135 MockInteractions.tap(item.$$('#details-button')); 132 MockInteractions.tap(item.$$('#details-button'));
136 listener.verify(); 133 listener1.verify();
134
135 var listener2 = new extension_test_util.ListenerMock();
136 listener2.addListener(item, 'extension-item-show-details',
137 {data: item.data});
138 MockInteractions.tap(
139 item.$$('#inspect-views paper-button:nth-of-type(2)'));
140 listener2.verify();
137 141
138 item.set('data.disableReasons.corruptInstall', true); 142 item.set('data.disableReasons.corruptInstall', true);
139 Polymer.dom.flush(); 143 Polymer.dom.flush();
140 mockDelegate.testClickingCalls( 144 mockDelegate.testClickingCalls(
141 item.$$('#repair-button'), 'repairItem', [item.data.id]); 145 item.$$('#repair-button'), 'repairItem', [item.data.id]);
146
147 item.set('data.disableReasons.corruptInstall', false);
148 Polymer.dom.flush();
149 mockDelegate.testClickingCalls(
150 item.$$('#reload-button'), 'reloadItem', [item.data.id]);
142 }); 151 });
143 152
144 test(assert(TestNames.Warnings), function() { 153 test(assert(TestNames.Warnings), function() {
145 var hasCorruptedWarning = function() { 154 var hasCorruptedWarning = function() {
146 return extension_test_util.isVisible(item, '#corrupted-warning'); 155 return extension_test_util.isVisible(item, '#corrupted-warning');
147 }; 156 };
148 var hasSuspiciousWarning = function() { 157 var hasSuspiciousWarning = function() {
149 return extension_test_util.isVisible(item, '#suspicious-warning'); 158 return extension_test_util.isVisible(item, '#suspicious-warning');
150 }; 159 };
151 var hasBlacklistedWarning = function() { 160 var hasBlacklistedWarning = function() {
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
216 expectFalse(extension_test_util.isVisible(item, '#source-indicator')); 225 expectFalse(extension_test_util.isVisible(item, '#source-indicator'));
217 }); 226 });
218 }); 227 });
219 } 228 }
220 229
221 return { 230 return {
222 registerTests: registerTests, 231 registerTests: registerTests,
223 TestNames: TestNames, 232 TestNames: TestNames,
224 }; 233 };
225 }); 234 });
OLDNEW
« no previous file with comments | « chrome/browser/ui/webui/extensions/extensions_ui.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698