Index: chrome/browser/ui/webui/options/multilanguage_options_webui_browsertest.js |
diff --git a/chrome/browser/ui/webui/options/multilanguage_options_webui_browsertest.js b/chrome/browser/ui/webui/options/multilanguage_options_webui_browsertest.js |
deleted file mode 100644 |
index 222016cd4c6886f562282dff61392697d86ccc5e..0000000000000000000000000000000000000000 |
--- a/chrome/browser/ui/webui/options/multilanguage_options_webui_browsertest.js |
+++ /dev/null |
@@ -1,212 +0,0 @@ |
-// Copyright 2015 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-GEN_INCLUDE(['options_browsertest_base.js']); |
-GEN('#include "chrome/browser/ui/webui/options/' + |
- 'multilanguage_options_browsertest.h"'); |
- |
-/** |
- * Test C++ fixture for Language Options WebUI testing. |
- * @constructor |
- * @extends {testing.Test} |
- */ |
-function MultilanguageOptionsWebUIBrowserTest() {} |
- |
-MultilanguageOptionsWebUIBrowserTest.prototype = { |
- __proto__: OptionsBrowsertestBase.prototype, |
- |
- /** @override */ |
- browsePreload: 'chrome://settings-frame/languages', |
- |
- /** @override */ |
- typedefCppFixture: 'MultilanguageOptionsBrowserTest', |
- |
- /** @override */ |
- accessibilityIssuesAreErrors: true, |
- |
- /** @param {string} expected Sorted currently selected languages. */ |
- expectCurrentlySelected: function(expected) { |
- var languages = LanguageOptions.getInstance().spellCheckLanguages_; |
- expectEquals(expected, Object.keys(languages).sort().join()); |
- }, |
- |
- /** @override */ |
- setUp: function() { |
- OptionsBrowsertestBase.prototype.setUp.call(this); |
- |
- assertFalse(cr.isMac); |
- expectFalse($('edit-custom-dictionary-button').hidden); |
- this.expectEnableSpellcheckCheckboxVisible(); |
- this.expectCurrentlySelected('fr'); |
- |
- var requiredOwnedAriaRoleMissingSelectors = [ |
- '#default-search-engine-list', |
- '#other-search-engine-list', |
- ]; |
- |
- // Enable when failure is resolved. |
- // AX_ARIA_08: http://crbug.com/559320 |
- this.accessibilityAuditConfig.ignoreSelectors( |
- 'requiredOwnedAriaRoleMissing', |
- requiredOwnedAriaRoleMissingSelectors); |
- |
- // Enable when failure is resolved. |
- // AX_ARIA_10: http://crbug.com/559266 |
- this.accessibilityAuditConfig.ignoreSelectors( |
- 'unsupportedAriaAttribute', |
- '#language-options-list'); |
- |
- // Enable when failure is resolved. |
- // AX_TEXT_04: http://crbug.com/559271 |
- this.accessibilityAuditConfig.ignoreSelectors( |
- 'linkWithUnclearPurpose', |
- '#languagePage > .content-area > .language-options-header > A'); |
- }, |
- |
- /** @override */ |
- tearDown: function() { |
- testing.Test.prototype.tearDown.call(this); |
- this.expectEnableSpellcheckCheckboxVisible(); |
- }, |
- |
- /** Make sure the 'Enable spell checking' checkbox is visible. */ |
- expectEnableSpellcheckCheckboxVisible: function() { |
- if ($('enable-spellcheck-container')) |
- expectFalse($('enable-spellcheck-container').hidden); |
- }, |
-}; |
- |
-// Test that opening language options has the correct location. |
-TEST_F('MultilanguageOptionsWebUIBrowserTest', 'TestOpenLanguageOptions', |
- function() { |
- expectEquals('chrome://settings-frame/languages', document.location.href); |
-}); |
- |
-// Test that only certain languages can be selected and used for spellchecking. |
-// prefs::kLanguagePreferredLanguages/prefs::kAcceptLanguages is set to |
-// 'fr,es,de,en' and prefs::kSpellCheckDictionaries is just 'fr' |
-TEST_F('MultilanguageOptionsWebUIBrowserTest', 'ChangeSpellcheckLanguages', |
- function() { |
- expectTrue($('language-options-list').selectLanguageByCode('es')); |
- expectFalse($('spellcheck-language-checkbox').checked, 'es'); |
- |
- // Click 'es' and ensure that it gets checked and 'fr' stays checked. |
- $('spellcheck-language-checkbox').click(); |
- expectTrue($('spellcheck-language-checkbox').checked, 'es'); |
- expectTrue($('language-options-list').selectLanguageByCode('fr')); |
- expectTrue($('spellcheck-language-checkbox').checked, 'fr'); |
- this.expectCurrentlySelected('es,fr'); |
- |
- // Click 'fr' and ensure that it gets unchecked and 'es' stays checked. |
- $('spellcheck-language-checkbox').click(); |
- expectFalse($('spellcheck-language-checkbox').checked, 'fr'); |
- $('language-options-list').selectLanguageByCode('es'); |
- expectTrue($('spellcheck-language-checkbox').checked, 'es'); |
- this.expectCurrentlySelected('es'); |
-}); |
- |
-// Make sure 'am' cannot be selected as a language and 'fr' stays selected. |
-TEST_F('MultilanguageOptionsWebUIBrowserTest', 'NotAcceptLanguage', function() { |
- expectFalse($('language-options-list').selectLanguageByCode('am')); |
- expectTrue($('language-options-list').selectLanguageByCode('fr')); |
- expectTrue($('spellcheck-language-checkbox').checked, 'fr'); |
- this.expectCurrentlySelected('fr'); |
-}); |
- |
-// Make sure 'en' cannot be used as a language and 'fr' stays selected. |
-TEST_F('MultilanguageOptionsWebUIBrowserTest', 'UnusableLanguage', function() { |
- expectTrue($('language-options-list').selectLanguageByCode('en')); |
- expectTrue($('spellcheck-language-checkbox-container').hidden); |
- expectFalse($('spellcheck-language-checkbox').checked, 'en'); |
- this.expectCurrentlySelected('fr'); |
-}); |
- |
-/** |
- * Test C++ fixture for Language Options WebUI testing. |
- * @constructor |
- * @extends {MultilanguageOptionsWebUIBrowserTest} |
- */ |
-function MultilanguagePreferenceWebUIBrowserTest() {} |
- |
-MultilanguagePreferenceWebUIBrowserTest.prototype = { |
- __proto__: MultilanguageOptionsWebUIBrowserTest.prototype, |
- |
- /** @override */ |
- testGenPreamble: function() { |
- GEN('ClearSpellcheckDictionaries();'); |
- }, |
- |
- /** @override */ |
- isAsync: true, |
- |
- /** |
- * @param {string} expected Sorted languages in the kSpellCheckDictionaries |
- * preference. |
- */ |
- expectRegisteredDictionariesPref: function(expected) { |
- var registeredPrefs = |
- options.Preferences.getInstance().registeredPreferences_; |
- expectEquals(expected, |
- registeredPrefs['spellcheck.dictionaries'].orig.value.sort().join()); |
- }, |
- |
- /** |
- * Watch for a change to the preference |pref| and then call |callback|. |
- * @param {string} pref The preference to listen for a change on. |
- * @param {function} callback The function to run after a listener event. |
- */ |
- addPreferenceListener: function(pref, callback) { |
- options.Preferences.getInstance().addEventListener(pref, callback); |
- }, |
- |
- /** @override */ |
- setUp: function() { |
- OptionsBrowsertestBase.prototype.setUp.call(this); |
- |
- assertFalse(cr.isMac); |
- expectTrue($('edit-custom-dictionary-button').hidden); |
- this.expectEnableSpellcheckCheckboxVisible(); |
- this.expectCurrentlySelected(''); |
- this.expectRegisteredDictionariesPref(''); |
- |
- // Enable when failure is resolved. |
- // AX_ARIA_10: http://crbug.com/559266 |
- this.accessibilityAuditConfig.ignoreSelectors( |
- 'unsupportedAriaAttribute', |
- '#language-options-list'); |
- |
- // Enable when failure is resolved. |
- // AX_TEXT_04: http://crbug.com/559271 |
- this.accessibilityAuditConfig.ignoreSelectors( |
- 'linkWithUnclearPurpose', |
- '#languagePage > .content-area > .language-options-header > A'); |
- |
- // Enable when failure is resolved. |
- // AX_FOCUS_01: http://crbug.com/570046 |
- this.accessibilityAuditConfig.ignoreSelectors( |
- 'focusableElementNotVisibleAndNotAriaHidden', |
- '#offer-to-translate-in-this-language'); |
- }, |
-}; |
- |
-// Make sure the case where no languages are selected is handled properly. |
-TEST_F('MultilanguagePreferenceWebUIBrowserTest', 'SelectFromBlank', |
- function() { |
- expectTrue($('language-options-list').selectLanguageByCode('fr')); |
- expectFalse($('spellcheck-language-checkbox').checked, 'fr'); |
- expectTrue($('edit-custom-dictionary-button').hidden); |
- |
- // Add a preference change event listener which ensures that the preference is |
- // updated correctly and that 'fr' is the only thing in the dictionary object. |
- this.addPreferenceListener('spellcheck.dictionaries', function() { |
- expectTrue($('spellcheck-language-checkbox').checked, 'fr'); |
- this.expectRegisteredDictionariesPref('fr'); |
- this.expectCurrentlySelected('fr'); |
- expectFalse($('edit-custom-dictionary-button').hidden); |
- testDone(); |
- }.bind(this)); |
- |
- // Click 'fr' and trigger the preference listener. |
- $('spellcheck-language-checkbox').click(); |
-}); |