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 038017ee7abc6211dbc845b8208d52b268a873d4..54f98fabe1edc6f108e07e95604086a32bafc6af 100644 |
--- a/chrome/test/data/webui/settings/startup_urls_page_test.js |
+++ b/chrome/test/data/webui/settings/startup_urls_page_test.js |
@@ -12,6 +12,7 @@ cr.define('settings_startup_urls_page', function() { |
settings.TestBrowserProxy.call(this, [ |
'addStartupPage', |
'loadStartupPages', |
+ 'removeStartupPage', |
'useCurrentPages', |
'validateStartupPage', |
]); |
@@ -40,6 +41,11 @@ cr.define('settings_startup_urls_page', function() { |
}, |
/** @override */ |
+ removeStartupPage: function(modelIndex) { |
+ this.methodCalled('removeStartupPage', modelIndex); |
+ }, |
+ |
+ /** @override */ |
useCurrentPages: function() { |
this.methodCalled('useCurrentPages'); |
}, |
@@ -168,4 +174,47 @@ cr.define('settings_startup_urls_page', function() { |
assertTrue(!!page.$$('settings-startup-url-dialog')); |
}); |
}); |
+ |
+ /** @return {!StartupPageInfo} */ |
+ function createSampleUrlEntry() { |
+ return { |
+ modelIndex: 2, |
+ title: 'Test page', |
+ tooltip: 'test tooltip', |
+ url: 'chrome://foo', |
+ }; |
+ } |
+ |
+ suite('StartupUrlEntry', function() { |
+ /** @type {?SettingsStartupUrlEntryElement} */ |
+ var element = null; |
+ |
+ var browserProxy = null; |
+ |
+ setup(function() { |
+ browserProxy = new TestStartupUrlsPageBrowserProxy(); |
+ settings.StartupUrlsPageBrowserProxyImpl.instance_ = browserProxy; |
+ PolymerTest.clearBody(); |
+ 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.$$('iron-dropdown')); |
+ MockInteractions.tap(element.$.dots); |
+ Polymer.dom.flush(); |
+ assertTrue(!!element.$$('iron-dropdown')); |
+ }); |
+ |
+ teardown(function() { element.remove(); }); |
+ |
+ test('MenuOptions_Remove', function() { |
+ var removeButton = element.shadowRoot.querySelector('#remove') |
+ MockInteractions.tap(removeButton); |
+ return browserProxy.whenCalled('removeStartupPage').then( |
+ function(modelIndex) { |
+ assertEquals(element.model.modelIndex, modelIndex); |
+ }); |
+ }); |
+ }); |
}); |