| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 cr.define('settings_privacy_page', function() { | 5 cr.define('settings_privacy_page', function() { |
| 6 /** | 6 /** |
| 7 * @constructor | 7 * @constructor |
| 8 * @extends {TestBrowserProxy} | 8 * @extends {TestBrowserProxy} |
| 9 * @implements {settings.PrivacyPageBrowserProxy} | 9 * @implements {settings.PrivacyPageBrowserProxy} |
| 10 */ | 10 */ |
| (...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 106 settings.ClearBrowsingDataBrowserProxyImpl.instance_ = testBrowserProxy; | 106 settings.ClearBrowsingDataBrowserProxyImpl.instance_ = testBrowserProxy; |
| 107 PolymerTest.clearBody(); | 107 PolymerTest.clearBody(); |
| 108 element = document.createElement('settings-clear-browsing-data-dialog'); | 108 element = document.createElement('settings-clear-browsing-data-dialog'); |
| 109 document.body.appendChild(element); | 109 document.body.appendChild(element); |
| 110 return testBrowserProxy.whenCalled('initialize'); | 110 return testBrowserProxy.whenCalled('initialize'); |
| 111 }); | 111 }); |
| 112 | 112 |
| 113 teardown(function() { element.remove(); }); | 113 teardown(function() { element.remove(); }); |
| 114 | 114 |
| 115 test('ClearBrowsingDataTap', function() { | 115 test('ClearBrowsingDataTap', function() { |
| 116 assertTrue(element.$.dialog.opened); | 116 assertTrue(element.$.dialog.open); |
| 117 | 117 |
| 118 var cancelButton = element.$$('.cancel-button'); | 118 var cancelButton = element.$$('.cancel-button'); |
| 119 assertTrue(!!cancelButton); | 119 assertTrue(!!cancelButton); |
| 120 var actionButton = element.$$('.action-button'); | 120 var actionButton = element.$$('.action-button'); |
| 121 assertTrue(!!actionButton); | 121 assertTrue(!!actionButton); |
| 122 var spinner = element.$$('paper-spinner'); | 122 var spinner = element.$$('paper-spinner'); |
| 123 assertTrue(!!spinner); | 123 assertTrue(!!spinner); |
| 124 | 124 |
| 125 assertFalse(cancelButton.disabled); | 125 assertFalse(cancelButton.disabled); |
| 126 assertFalse(actionButton.disabled); | 126 assertFalse(actionButton.disabled); |
| 127 assertFalse(spinner.active); | 127 assertFalse(spinner.active); |
| 128 | 128 |
| 129 var promiseResolver = new PromiseResolver(); | 129 var promiseResolver = new PromiseResolver(); |
| 130 testBrowserProxy.setClearBrowsingDataPromise(promiseResolver.promise); | 130 testBrowserProxy.setClearBrowsingDataPromise(promiseResolver.promise); |
| 131 MockInteractions.tap(actionButton); | 131 MockInteractions.tap(actionButton); |
| 132 | 132 |
| 133 return testBrowserProxy.whenCalled('clearBrowsingData').then( | 133 return testBrowserProxy.whenCalled('clearBrowsingData').then( |
| 134 function() { | 134 function() { |
| 135 assertTrue(element.$.dialog.opened); | 135 assertTrue(element.$.dialog.open); |
| 136 assertTrue(cancelButton.disabled); | 136 assertTrue(cancelButton.disabled); |
| 137 assertTrue(actionButton.disabled); | 137 assertTrue(actionButton.disabled); |
| 138 assertTrue(spinner.active); | 138 assertTrue(spinner.active); |
| 139 | 139 |
| 140 // Simulate signal from browser indicating that clearing has | 140 // Simulate signal from browser indicating that clearing has |
| 141 // completed. | 141 // completed. |
| 142 cr.webUIListenerCallback('browsing-data-removing', false); | 142 cr.webUIListenerCallback('browsing-data-removing', false); |
| 143 promiseResolver.resolve(); | 143 promiseResolver.resolve(); |
| 144 // Yields to the message loop to allow the callback chain of the | 144 // Yields to the message loop to allow the callback chain of the |
| 145 // Promise that was just resolved to execute before the | 145 // Promise that was just resolved to execute before the |
| 146 // assertions. | 146 // assertions. |
| 147 }).then(function() { | 147 }).then(function() { |
| 148 assertFalse(element.$.dialog.opened); | 148 assertFalse(element.$.dialog.open); |
| 149 assertFalse(cancelButton.disabled); | 149 assertFalse(cancelButton.disabled); |
| 150 assertFalse(actionButton.disabled); | 150 assertFalse(actionButton.disabled); |
| 151 assertFalse(spinner.active); | 151 assertFalse(spinner.active); |
| 152 assertFalse(!!element.$$('#notice')); | 152 assertFalse(!!element.$$('#notice')); |
| 153 }); | 153 }); |
| 154 }); | 154 }); |
| 155 | 155 |
| 156 test('showHistoryDeletionDialog', function() { | 156 test('showHistoryDeletionDialog', function() { |
| 157 assertTrue(element.$.dialog.opened); | 157 assertTrue(element.$.dialog.open); |
| 158 var actionButton = element.$$('.action-button'); | 158 var actionButton = element.$$('.action-button'); |
| 159 assertTrue(!!actionButton); | 159 assertTrue(!!actionButton); |
| 160 | 160 |
| 161 var promiseResolver = new PromiseResolver(); | 161 var promiseResolver = new PromiseResolver(); |
| 162 testBrowserProxy.setClearBrowsingDataPromise(promiseResolver.promise); | 162 testBrowserProxy.setClearBrowsingDataPromise(promiseResolver.promise); |
| 163 MockInteractions.tap(actionButton); | 163 MockInteractions.tap(actionButton); |
| 164 | 164 |
| 165 return testBrowserProxy.whenCalled('clearBrowsingData').then( | 165 return testBrowserProxy.whenCalled('clearBrowsingData').then( |
| 166 function() { | 166 function() { |
| 167 // Passing showNotice = true should trigger the notice about other | 167 // Passing showNotice = true should trigger the notice about other |
| 168 // forms of browsing history to open, and the dialog to stay open. | 168 // forms of browsing history to open, and the dialog to stay open. |
| 169 promiseResolver.resolve(true /* showNotice */); | 169 promiseResolver.resolve(true /* showNotice */); |
| 170 | 170 |
| 171 // Yields to the message loop to allow the callback chain of the | 171 // Yields to the message loop to allow the callback chain of the |
| 172 // Promise that was just resolved to execute before the | 172 // Promise that was just resolved to execute before the |
| 173 // assertions. | 173 // assertions. |
| 174 }).then(function() { | 174 }).then(function() { |
| 175 Polymer.dom.flush(); | 175 Polymer.dom.flush(); |
| 176 var notice = element.$$('#notice'); | 176 var notice = element.$$('#notice'); |
| 177 assertTrue(!!notice); | 177 assertTrue(!!notice); |
| 178 var noticeActionButton = notice.$$('.action-button'); | 178 var noticeActionButton = notice.$$('.action-button'); |
| 179 assertTrue(!!noticeActionButton); | 179 assertTrue(!!noticeActionButton); |
| 180 | 180 |
| 181 assertTrue(element.$.dialog.opened); | 181 assertTrue(element.$.dialog.open); |
| 182 assertTrue(notice.$.dialog.opened); | 182 assertTrue(notice.$.dialog.open); |
| 183 | 183 |
| 184 MockInteractions.tap(noticeActionButton); | 184 MockInteractions.tap(noticeActionButton); |
| 185 | 185 |
| 186 // Tapping the action button will close the notice. Move to the | 186 // Tapping the action button will close the notice. Move to the |
| 187 // end of the message loop to allow the closing event to propagate | 187 // end of the message loop to allow the closing event to propagate |
| 188 // to the parent dialog. The parent dialog should subsequently | 188 // to the parent dialog. The parent dialog should subsequently |
| 189 // close as well. | 189 // close as well. |
| 190 setTimeout(function() { | 190 setTimeout(function() { |
| 191 var notice = element.$$('#notice'); | 191 var notice = element.$$('#notice'); |
| 192 assertFalse(!!notice); | 192 assertFalse(!!notice); |
| 193 assertFalse(element.$.dialog.opened); | 193 assertFalse(element.$.dialog.open); |
| 194 }, 0); | 194 }, 0); |
| 195 }); | 195 }); |
| 196 }); | 196 }); |
| 197 | 197 |
| 198 test('Counters', function() { | 198 test('Counters', function() { |
| 199 assertTrue(element.$.dialog.opened); | 199 assertTrue(element.$.dialog.open); |
| 200 | 200 |
| 201 // Initialize the browsing history pref, which should belong to the | 201 // Initialize the browsing history pref, which should belong to the |
| 202 // first checkbox in the dialog. | 202 // first checkbox in the dialog. |
| 203 element.set('prefs', { | 203 element.set('prefs', { |
| 204 browser: { | 204 browser: { |
| 205 clear_data: { | 205 clear_data: { |
| 206 browsing_history: { | 206 browsing_history: { |
| 207 key: 'browser.clear_data.browsing_history', | 207 key: 'browser.clear_data.browsing_history', |
| 208 type: chrome.settingsPrivate.PrefType.BOOLEAN, | 208 type: chrome.settingsPrivate.PrefType.BOOLEAN, |
| 209 value: true, | 209 value: true, |
| (...skipping 21 matching lines...) Expand all Loading... |
| 231 | 231 |
| 232 return { | 232 return { |
| 233 registerTests: function() { | 233 registerTests: function() { |
| 234 if (cr.isMac || cr.isWin) | 234 if (cr.isMac || cr.isWin) |
| 235 registerNativeCertificateManagerTests(); | 235 registerNativeCertificateManagerTests(); |
| 236 | 236 |
| 237 registerClearBrowsingDataTests(); | 237 registerClearBrowsingDataTests(); |
| 238 }, | 238 }, |
| 239 }; | 239 }; |
| 240 }); | 240 }); |
| OLD | NEW |