| OLD | NEW |
| 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 * A mock delegate for the item, capable of testing functionality. | 8 * A mock delegate for the item, capable of testing functionality. |
| 9 * @constructor | 9 * @constructor |
| 10 * @extends {extension_test_util.ClickMock} | 10 * @extends {extension_test_util.ClickMock} |
| 11 * @implements {extensions.ItemDelegate} | 11 * @implements {extensions.ItemDelegate} |
| 12 */ | 12 */ |
| 13 function MockDelegate() {} | 13 function MockDelegate() {} |
| 14 | 14 |
| 15 MockDelegate.prototype = { | 15 MockDelegate.prototype = { |
| 16 __proto__: extension_test_util.ClickMock.prototype, | 16 __proto__: extension_test_util.ClickMock.prototype, |
| 17 | 17 |
| 18 /** @override */ | 18 /** @override */ |
| 19 deleteItem: function(id) {}, | 19 deleteItem: function(id) {}, |
| 20 | 20 |
| 21 /** @override */ | 21 /** @override */ |
| 22 setItemEnabled: function(id, enabled) {}, | 22 setItemEnabled: function(id, enabled) {}, |
| 23 | 23 |
| 24 /** @override */ | 24 /** @override */ |
| 25 showItemDetails: function(id) {}, | |
| 26 | |
| 27 /** @override */ | |
| 28 setItemAllowedIncognito: function(id, enabled) {}, | 25 setItemAllowedIncognito: function(id, enabled) {}, |
| 29 | 26 |
| 30 /** @override */ | |
| 31 isInDevMode: function() { return false; }, | |
| 32 | |
| 33 /** @override: */ | 27 /** @override: */ |
| 34 inspectItemView: function(id, view) {}, | 28 inspectItemView: function(id, view) {}, |
| 35 }; | 29 }; |
| 36 | 30 |
| 37 /** | 31 /** |
| 38 * The data used to populate the extension item. | 32 * The data used to populate the extension item. |
| 39 * @type {chrome.developerPrivate.ExtensionInfo} | 33 * @type {chrome.developerPrivate.ExtensionInfo} |
| 40 */ | 34 */ |
| 41 var extensionData = extension_test_util.createExtensionInfo(); | 35 var extensionData = extension_test_util.createExtensionInfo(); |
| 42 | 36 |
| (...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 184 item.set('inDevMode', true); | 178 item.set('inDevMode', true); |
| 185 | 179 |
| 186 mockDelegate.testClickingCalls( | 180 mockDelegate.testClickingCalls( |
| 187 item.$['delete-button'], 'deleteItem', [item.data.id]); | 181 item.$['delete-button'], 'deleteItem', [item.data.id]); |
| 188 mockDelegate.testClickingCalls( | 182 mockDelegate.testClickingCalls( |
| 189 item.$.enabled, 'setItemEnabled', [item.data.id, false]); | 183 item.$.enabled, 'setItemEnabled', [item.data.id, false]); |
| 190 mockDelegate.testClickingCalls( | 184 mockDelegate.testClickingCalls( |
| 191 item.$$('#allow-incognito'), 'setItemAllowedIncognito', | 185 item.$$('#allow-incognito'), 'setItemAllowedIncognito', |
| 192 [item.data.id, true]); | 186 [item.data.id, true]); |
| 193 mockDelegate.testClickingCalls( | 187 mockDelegate.testClickingCalls( |
| 194 item.$$('#details-button'), 'showItemDetails', [item.data.id]); | |
| 195 mockDelegate.testClickingCalls( | |
| 196 item.$$('#inspect-views paper-button'), | 188 item.$$('#inspect-views paper-button'), |
| 197 'inspectItemView', [item.data.id, item.data.views[0]]); | 189 'inspectItemView', [item.data.id, item.data.views[0]]); |
| 198 mockDelegate.testClickingCalls( | 190 mockDelegate.testClickingCalls( |
| 199 item.$$('#inspect-views paper-button:nth-of-type(0n + 2)'), | 191 item.$$('#inspect-views paper-button:nth-of-type(0n + 2)'), |
| 200 'inspectItemView', [item.data.id, item.data.views[1]]); | 192 'inspectItemView', [item.data.id, item.data.views[1]]); |
| 193 |
| 194 var satisfied = false; |
| 195 var listener = function(e) { |
| 196 expectTrue(e.detail.element == item); |
| 197 satisfied = true; |
| 198 }; |
| 199 item.addEventListener('extension-item-show-details', listener); |
| 200 MockInteractions.tap(item.$$('#details-button')); |
| 201 expectTrue(satisfied); |
| 202 item.removeEventListener('extension-item-show-details', listener); |
| 201 }); | 203 }); |
| 202 | 204 |
| 203 test(assert(TestNames.Warnings), function() { | 205 test(assert(TestNames.Warnings), function() { |
| 204 var hasCorruptedWarning = function() { | 206 var hasCorruptedWarning = function() { |
| 205 return extension_test_util.isVisible(item, '#corrupted-warning'); | 207 return extension_test_util.isVisible(item, '#corrupted-warning'); |
| 206 }; | 208 }; |
| 207 var hasSuspiciousWarning = function() { | 209 var hasSuspiciousWarning = function() { |
| 208 return extension_test_util.isVisible(item, '#suspicious-warning'); | 210 return extension_test_util.isVisible(item, '#suspicious-warning'); |
| 209 }; | 211 }; |
| 210 var hasBlacklistedWarning = function() { | 212 var hasBlacklistedWarning = function() { |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 249 extension_test_util.testVisible(item, '#warnings-container', false); | 251 extension_test_util.testVisible(item, '#warnings-container', false); |
| 250 }); | 252 }); |
| 251 }); | 253 }); |
| 252 } | 254 } |
| 253 | 255 |
| 254 return { | 256 return { |
| 255 registerTests: registerTests, | 257 registerTests: registerTests, |
| 256 TestNames: TestNames, | 258 TestNames: TestNames, |
| 257 }; | 259 }; |
| 258 }); | 260 }); |
| OLD | NEW |