OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 GEN('#include "chrome/browser/ui/webui/options/options_browsertest.h"'); | 5 GEN('#include "chrome/browser/ui/webui/options/options_browsertest.h"'); |
6 | 6 |
7 /** @const */ var MANAGED_USERS_PREF = 'profile.managed_users'; | 7 /** @const */ var SUPERVISED_USERS_PREF = 'profile.managed_users'; |
8 | 8 |
9 /** | 9 /** |
10 * Wait for the method specified by |methodName|, on the |object| object, to be | 10 * Wait for the method specified by |methodName|, on the |object| object, to be |
11 * called, then execute |afterFunction|. | 11 * called, then execute |afterFunction|. |
12 * @param {*} object Object with callable property named |methodName|. | 12 * @param {*} object Object with callable property named |methodName|. |
13 * @param {string} methodName The name of the property on |object| to use as a | 13 * @param {string} methodName The name of the property on |object| to use as a |
14 * callback. | 14 * callback. |
15 * @param {!Function} afterFunction A function to call after object.methodName() | 15 * @param {!Function} afterFunction A function to call after object.methodName() |
16 * is called. | 16 * is called. |
17 */ | 17 */ |
(...skipping 218 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
236 window.setTimeout(function() { | 236 window.setTimeout(function() { |
237 assertFalse(dntOverlay.visible); | 237 assertFalse(dntOverlay.visible); |
238 assertTrue(dntCheckbox.checked); | 238 assertTrue(dntCheckbox.checked); |
239 dntOverlay.removeEventListener(visibleChangeHandler); | 239 dntOverlay.removeEventListener(visibleChangeHandler); |
240 dntCheckbox.click(); | 240 dntCheckbox.click(); |
241 }, 0); | 241 }, 0); |
242 break; | 242 break; |
243 default: | 243 default: |
244 assertNotReached(); | 244 assertNotReached(); |
245 } | 245 } |
246 } | 246 }; |
247 dntOverlay.addEventListener('visibleChange', visibleChangeHandler); | 247 dntOverlay.addEventListener('visibleChange', visibleChangeHandler); |
248 | 248 |
249 this.mockHandler.expects(once()).setBooleanPref( | 249 this.mockHandler.expects(once()).setBooleanPref( |
250 eq(['enable_do_not_track', true, 'Options_DoNotTrackCheckbox'])); | 250 eq(['enable_do_not_track', true, 'Options_DoNotTrackCheckbox'])); |
251 | 251 |
252 var verifyCorrectEndState = function() { | 252 var verifyCorrectEndState = function() { |
253 window.setTimeout(function() { | 253 window.setTimeout(function() { |
254 assertFalse(dntOverlay.visible); | 254 assertFalse(dntOverlay.visible); |
255 assertFalse(dntCheckbox.checked); | 255 assertFalse(dntCheckbox.checked); |
256 testDone(); | 256 testDone(); |
257 }, 0); | 257 }, 0); |
258 } | 258 }; |
259 this.mockHandler.expects(once()).setBooleanPref( | 259 this.mockHandler.expects(once()).setBooleanPref( |
260 eq(['enable_do_not_track', false, 'Options_DoNotTrackCheckbox'])).will( | 260 eq(['enable_do_not_track', false, 'Options_DoNotTrackCheckbox'])).will( |
261 callFunction(verifyCorrectEndState)); | 261 callFunction(verifyCorrectEndState)); |
262 | 262 |
263 dntCheckbox.click(); | 263 dntCheckbox.click(); |
264 }); | 264 }); |
265 | 265 |
266 // Verify that preventDefault() is called on 'Enter' keydown events that trigger | 266 // Verify that preventDefault() is called on 'Enter' keydown events that trigger |
267 // the default button. If this doesn't happen, other elements that may get | 267 // the default button. If this doesn't happen, other elements that may get |
268 // focus (by the overlay closing for instance), will execute in addition to the | 268 // focus (by the overlay closing for instance), will execute in addition to the |
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
365 __proto__: testing.Test.prototype, | 365 __proto__: testing.Test.prototype, |
366 | 366 |
367 /** @override */ | 367 /** @override */ |
368 browsePreload: 'chrome://settings-frame', | 368 browsePreload: 'chrome://settings-frame', |
369 | 369 |
370 /** @override */ | 370 /** @override */ |
371 typedefCppFixture: 'OptionsBrowserTest', | 371 typedefCppFixture: 'OptionsBrowserTest', |
372 | 372 |
373 testGenPreamble: function() { | 373 testGenPreamble: function() { |
374 // Start with no supervised users managed by this profile. | 374 // Start with no supervised users managed by this profile. |
375 GEN(' ClearPref("' + MANAGED_USERS_PREF + '");'); | 375 GEN(' ClearPref("' + SUPERVISED_USERS_PREF + '");'); |
376 }, | 376 }, |
377 | 377 |
378 /** @override */ | 378 /** @override */ |
379 isAsync: true, | 379 isAsync: true, |
380 | 380 |
381 /** @override */ | 381 /** @override */ |
382 setUp: function() { | 382 setUp: function() { |
383 // user-image-stream is a streaming video element used for capturing a | 383 // user-image-stream is a streaming video element used for capturing a |
384 // user image during OOBE. | 384 // user image during OOBE. |
385 this.accessibilityAuditConfig.ignoreSelectors('videoWithoutCaptions', | 385 this.accessibilityAuditConfig.ignoreSelectors('videoWithoutCaptions', |
(...skipping 416 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
802 | 802 |
803 // A tip should be shown or hidden depending on whether this profile manages any | 803 // A tip should be shown or hidden depending on whether this profile manages any |
804 // supervised users. | 804 // supervised users. |
805 TEST_F('OptionsWebUIExtendedTest', 'SupervisingUsers', function() { | 805 TEST_F('OptionsWebUIExtendedTest', 'SupervisingUsers', function() { |
806 // We start managing no supervised users. | 806 // We start managing no supervised users. |
807 assertTrue($('profiles-supervised-dashboard-tip').hidden); | 807 assertTrue($('profiles-supervised-dashboard-tip').hidden); |
808 | 808 |
809 // Remove all supervised users, then add some, watching for the pref change | 809 // Remove all supervised users, then add some, watching for the pref change |
810 // notifications and UI updates in each case. Any non-empty pref dictionary | 810 // notifications and UI updates in each case. Any non-empty pref dictionary |
811 // is interpreted as having supervised users. | 811 // is interpreted as having supervised users. |
812 chrome.send('optionsTestSetPref', [MANAGED_USERS_PREF, {key: 'value'}]); | 812 chrome.send('optionsTestSetPref', [SUPERVISED_USERS_PREF, {key: 'value'}]); |
813 waitForResponse(BrowserOptions, 'updateManagesSupervisedUsers', function() { | 813 waitForResponse(BrowserOptions, 'updateManagesSupervisedUsers', function() { |
814 assertFalse($('profiles-supervised-dashboard-tip').hidden); | 814 assertFalse($('profiles-supervised-dashboard-tip').hidden); |
815 chrome.send('optionsTestSetPref', [MANAGED_USERS_PREF, {}]); | 815 chrome.send('optionsTestSetPref', [SUPERVISED_USERS_PREF, {}]); |
816 waitForResponse(BrowserOptions, 'updateManagesSupervisedUsers', function() { | 816 waitForResponse(BrowserOptions, 'updateManagesSupervisedUsers', function() { |
817 assertTrue($('profiles-supervised-dashboard-tip').hidden); | 817 assertTrue($('profiles-supervised-dashboard-tip').hidden); |
818 testDone(); | 818 testDone(); |
819 }); | 819 }); |
820 }); | 820 }); |
821 }); | 821 }); |
822 | 822 |
823 /** | 823 /** |
824 * TestFixture that loads the options page at a bogus URL. | 824 * TestFixture that loads the options page at a bogus URL. |
825 * @extends {OptionsWebUIExtendedTest} | 825 * @extends {OptionsWebUIExtendedTest} |
826 * @constructor | 826 * @constructor |
827 */ | 827 */ |
828 function OptionsWebUIRedirectTest() { | 828 function OptionsWebUIRedirectTest() { |
829 OptionsWebUIExtendedTest.call(this); | 829 OptionsWebUIExtendedTest.call(this); |
830 } | 830 } |
831 | 831 |
832 OptionsWebUIRedirectTest.prototype = { | 832 OptionsWebUIRedirectTest.prototype = { |
833 __proto__: OptionsWebUIExtendedTest.prototype, | 833 __proto__: OptionsWebUIExtendedTest.prototype, |
834 | 834 |
835 /** @override */ | 835 /** @override */ |
836 browsePreload: 'chrome://settings-frame/nonexistantPage', | 836 browsePreload: 'chrome://settings-frame/nonexistantPage', |
837 }; | 837 }; |
838 | 838 |
839 TEST_F('OptionsWebUIRedirectTest', 'TestURL', function() { | 839 TEST_F('OptionsWebUIRedirectTest', 'TestURL', function() { |
840 assertEquals('chrome://settings-frame/', document.location.href); | 840 assertEquals('chrome://settings-frame/', document.location.href); |
841 this.verifyHistory_([''], testDone); | 841 this.verifyHistory_([''], testDone); |
842 }); | 842 }); |
OLD | NEW |