Index: chrome/test/data/webui/settings/languages_page_browsertest.js |
diff --git a/chrome/test/data/webui/settings/languages_page_browsertest.js b/chrome/test/data/webui/settings/languages_page_browsertest.js |
index df6b84a179a201ac8700fc77ffe638361aa16fe4..054a09d8e39c44d2ce21610d0afd1646ee5c99fc 100644 |
--- a/chrome/test/data/webui/settings/languages_page_browsertest.js |
+++ b/chrome/test/data/webui/settings/languages_page_browsertest.js |
@@ -50,6 +50,8 @@ TEST_F('SettingsLanguagesPageBrowserTest', 'MAYBE_LanguagesPage', function() { |
var languagesSection; |
var languagesPage; |
+ var languagesCollapse; |
+ var languageMenu; |
var languageHelper; |
/** |
@@ -81,10 +83,11 @@ TEST_F('SettingsLanguagesPageBrowserTest', 'MAYBE_LanguagesPage', function() { |
advanced.set('pageVisibility.languages', true); |
Polymer.dom.flush(); |
- languagesSection = this.getSection(advanced, 'languages'); |
- assertTrue(!!languagesSection); |
- languagesPage = languagesSection.querySelector('settings-languages-page'); |
- assertTrue(!!languagesPage); |
+ languagesSection = assert(this.getSection(advanced, 'languages')); |
+ languagesPage = assert( |
+ languagesSection.querySelector('settings-languages-page')); |
+ languagesCollapse = languagesPage.$.languagesCollapse; |
+ languageMenu = assert(languagesPage.$$('cr-shared-menu')); |
languageHelper = languagesPage.languageHelper; |
return languageHelper.whenReady(); |
@@ -107,8 +110,8 @@ TEST_F('SettingsLanguagesPageBrowserTest', 'MAYBE_LanguagesPage', function() { |
var actionButton; |
setup(function(done) { |
- var addLanguagesButton = languagesPage.$.languagesCollapse |
- .querySelector('.list-button:last-of-type'); |
+ var addLanguagesButton = |
+ languagesCollapse.querySelector('.list-button:last-of-type'); |
MockInteractions.tap(addLanguagesButton); |
// The page stamps the dialog and registers listeners asynchronously. |
@@ -190,8 +193,7 @@ TEST_F('SettingsLanguagesPageBrowserTest', 'MAYBE_LanguagesPage', function() { |
}); |
}); |
- test('Should not set UI language', function() { |
- var languagesCollapse = languagesPage.$.languagesCollapse; |
+ test('should not set UI language', function() { |
var languageOptionsDropdownTrigger = languagesCollapse.querySelector( |
'paper-icon-button'); |
assertTrue(!!languageOptionsDropdownTrigger); |
@@ -199,7 +201,11 @@ TEST_F('SettingsLanguagesPageBrowserTest', 'MAYBE_LanguagesPage', function() { |
// This shouldn't get called. |
languageHelper.setUILanguage = assertNotReached; |
+ // Tap the menu trigger twice to open and close the menu. |
MockInteractions.tap(languageOptionsDropdownTrigger); |
+ MockInteractions.tap(languageOptionsDropdownTrigger); |
+ |
+ languageHelper.setUILanguage = languageHelper.__proto__.setUILanguage; |
}); |
test('remove language', function() { |
@@ -215,7 +221,6 @@ TEST_F('SettingsLanguagesPageBrowserTest', 'MAYBE_LanguagesPage', function() { |
Polymer.dom.flush(); |
// Find the new language item. |
- var languagesCollapse = languagesPage.$.languagesCollapse; |
var items = languagesCollapse.querySelectorAll('.list-item'); |
var domRepeat = assert( |
languagesCollapse.querySelector('template[is="dom-repeat"]')); |
@@ -226,10 +231,12 @@ TEST_F('SettingsLanguagesPageBrowserTest', 'MAYBE_LanguagesPage', function() { |
// Open the menu and select Remove. |
MockInteractions.tap(item.querySelector('paper-icon-button')); |
- var removeMenuItem = assert(item.querySelector( |
- '.dropdown-content .dropdown-item:last-of-type')); |
+ assertTrue(languageMenu.menuOpen); |
+ var removeMenuItem = assert(languageMenu.querySelector( |
+ '.dropdown-item:last-of-type')); |
assertFalse(removeMenuItem.disabled); |
MockInteractions.tap(removeMenuItem); |
+ assertFalse(languageMenu.menuOpen); |
// We should go back down to the original number of enabled languages. |
return whenNumEnabledLanguagesBecomes(numEnabled).then(function() { |
@@ -239,10 +246,11 @@ TEST_F('SettingsLanguagesPageBrowserTest', 'MAYBE_LanguagesPage', function() { |
}); |
test('language detail', function() { |
- var languagesCollapse = languagesPage.$.languagesCollapse; |
- var languageDetailMenuItem = languagesCollapse.querySelectorAll( |
- '.dropdown-content .dropdown-item')[2]; |
- assertTrue(!!languageDetailMenuItem); |
+ var languageOptionsDropdownTrigger = languagesCollapse.querySelector( |
+ 'paper-icon-button'); |
+ MockInteractions.tap(languageOptionsDropdownTrigger); |
+ var languageDetailMenuItem = assert( |
+ languageMenu.querySelectorAll('.dropdown-item')[2]); |
MockInteractions.tap(languageDetailMenuItem); |
var languageDetailPage = |