summaryrefslogtreecommitdiffstats
path: root/chrome/browser/ui/webui/options/language_options_browsertest.js
blob: eedfeb600b0e8f9e127034a32682eb62113f0e1c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
// Copyright 2014 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.

/**
 * TestFixture for language options WebUI testing.
 * @extends {testing.Test}
 * @constructor
 */
function LanguageOptionsWebUITest() {}

LanguageOptionsWebUITest.prototype = {
  __proto__: testing.Test.prototype,

  /** @override */
  browsePreload: 'chrome://settings-frame/languages',
};

// Test opening language options has correct location.
TEST_F('LanguageOptionsWebUITest', 'testOpenLanguageOptions', function() {
  assertEquals(this.browsePreload, document.location.href);
});

GEN('#if defined(OS_WIN) || defined(OS_CHROMEOS)');
// Test reselecting the same language as the current UI locale. This should show
// a "Chrome is displayed in this language" message rather than a restart banner
// or a [ Display Chrome in this language ] button.
TEST_F('LanguageOptionsWebUITest', 'reselectUILocale', function() {
  var currentLang = loadTimeData.getString('currentUiLanguageCode');
  $('language-options-list').selectLanguageByCode(currentLang);
  LanguageOptions.uiLanguageSaved(currentLang);

  expectTrue($('language-options-ui-language-button').hidden);
  expectFalse($('language-options-ui-language-message').hidden);
  expectTrue($('language-options-ui-notification-bar').hidden);
});
GEN('#endif');  // defined(OS_WIN) || defined(OS_CHROMEOS)