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

Unified Diff: chrome/test/data/webui/settings/startup_urls_page_test.js

Issue 2520573002: MD Settings: implement support for extension-controlled startup URLs (Closed)
Patch Set: fix closure? Created 4 years, 1 month 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/resources/settings/on_startup_page/startup_urls_page.js ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/test/data/webui/settings/startup_urls_page_test.js
diff --git a/chrome/test/data/webui/settings/startup_urls_page_test.js b/chrome/test/data/webui/settings/startup_urls_page_test.js
index d212a209ddf52a401730ea0cbdd4d558bfd43db1..a0fa115ee31aee1a11d0b6d562772c62f41b549c 100644
--- a/chrome/test/data/webui/settings/startup_urls_page_test.js
+++ b/chrome/test/data/webui/settings/startup_urls_page_test.js
@@ -196,7 +196,16 @@ cr.define('settings_startup_urls_page', function() {
settings.StartupUrlsPageBrowserProxyImpl.instance_ = browserProxy;
PolymerTest.clearBody();
page = document.createElement('settings-startup-urls-page');
+ page.prefs = {
+ session: {
+ restore_on_startup: {
+ type: chrome.settingsPrivate.PrefType.NUMBER,
+ value: 5,
+ },
+ },
+ };
document.body.appendChild(page);
+ Polymer.dom.flush();
});
teardown(function() { page.remove(); });
@@ -207,14 +216,14 @@ cr.define('settings_startup_urls_page', function() {
});
test('UseCurrentPages', function() {
- var useCurrentPagesButton = page.$.useCurrentPages;
+ var useCurrentPagesButton = page.$$('#useCurrentPages');
assertTrue(!!useCurrentPagesButton);
MockInteractions.tap(useCurrentPagesButton);
return browserProxy.whenCalled('useCurrentPages');
});
test('AddPage_OpensDialog', function() {
- var addPageButton = page.$.addPage;
+ var addPageButton = page.$$('#addPage');
assertTrue(!!addPageButton);
assertFalse(!!page.$$('settings-startup-url-dialog'));
@@ -255,6 +264,27 @@ cr.define('settings_startup_urls_page', function() {
assertFalse(!!page.$$('settings-startup-url-dialog'));
});
+
+ test('StarupPages_WhenExtensionControlled', function() {
+ assertFalse(!!page.get('prefs.session.startup_urls.controlledBy'));
+ assertFalse(!!page.$$('extension-controlled-indicator'));
+ assertTrue(!!page.$$('#addPage'));
+ assertTrue(!!page.$$('#useCurrentPages'));
+
+ page.set('prefs.session.startup_urls', {
+ controlledBy: chrome.settingsPrivate.ControlledBy.EXTENSION,
+ controlledByName: 'Totally Real Extension',
+ enforcement: chrome.settingsPrivate.Enforcement.ENFORCED,
+ extensionId: 'mefmhpjnkplhdhmfmblilkgpkbjebmij',
+ type: chrome.settingsPrivate.PrefType.NUMBER,
+ value: 5,
+ });
+ Polymer.dom.flush();
+
+ assertTrue(!!page.$$('extension-controlled-indicator'));
+ assertFalse(!!page.$$('#addPage'));
+ assertFalse(!!page.$$('#useCurrentPages'));
+ });
});
/** @return {!StartupPageInfo} */
@@ -280,17 +310,21 @@ cr.define('settings_startup_urls_page', function() {
element = document.createElement('settings-startup-url-entry');
element.model = createSampleUrlEntry();
document.body.appendChild(element);
-
- // Bring up the popup menu for the following tests to use.
- assertFalse(!!element.$$('dialog[is=cr-action-menu]'));
- MockInteractions.tap(element.$.dots);
Polymer.dom.flush();
- assertTrue(!!element.$$('dialog[is=cr-action-menu]'));
});
teardown(function() { element.remove(); });
test('MenuOptions_Remove', function() {
+ element.editable = true;
dpapad 2016/11/19 01:32:39 Nit (optional): Perhaps do this in setup() so that
Dan Beam 2016/11/19 01:55:28 eh, that results in more touching of the prod code
Dan Beam 2016/11/19 01:55:49 (if I don't add restamp to the dom-if in the prod
+ Polymer.dom.flush();
+
+ // Bring up the popup menu.
+ assertFalse(!!element.$$('dialog[is=cr-action-menu]'));
+ MockInteractions.tap(element.$$('#dots'));
+ Polymer.dom.flush();
+ assertTrue(!!element.$$('dialog[is=cr-action-menu]'));
+
var removeButton = element.shadowRoot.querySelector('#remove')
MockInteractions.tap(removeButton);
return browserProxy.whenCalled('removeStartupPage').then(
@@ -298,5 +332,14 @@ cr.define('settings_startup_urls_page', function() {
assertEquals(element.model.modelIndex, modelIndex);
});
});
+
+ test('Editable', function() {
+ assertFalse(!!element.editable);
+ assertFalse(!!element.$$('#dots'));
+
+ element.editable = true;
+ Polymer.dom.flush();
+ assertTrue(!!element.$$('#dots'));
+ });
});
});
« no previous file with comments | « chrome/browser/resources/settings/on_startup_page/startup_urls_page.js ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698