diff options
author | kmadhusu@chromium.org <kmadhusu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-06-22 14:00:53 +0000 |
---|---|---|
committer | kmadhusu@chromium.org <kmadhusu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-06-22 14:00:53 +0000 |
commit | f7181e2db2fec01ccb1eecadc3cde05a78815198 (patch) | |
tree | 00882421077fe5310c66932dbf4f3e2443a8a147 | |
parent | b3e9ff8790de948274d9f50e5cd79910f95c4005 (diff) | |
download | chromium_src-f7181e2db2fec01ccb1eecadc3cde05a78815198.zip chromium_src-f7181e2db2fec01ccb1eecadc3cde05a78815198.tar.gz chromium_src-f7181e2db2fec01ccb1eecadc3cde05a78815198.tar.bz2 |
Added test to verify that NTP respects browser language setting.
BUG=246854
TEST=none
Review URL: https://chromiumcodereview.appspot.com/17243004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@208028 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | chrome/browser/ui/search/local_ntp_browsertest.cc | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/chrome/browser/ui/search/local_ntp_browsertest.cc b/chrome/browser/ui/search/local_ntp_browsertest.cc index ccbc8c4..5201abc 100644 --- a/chrome/browser/ui/search/local_ntp_browsertest.cc +++ b/chrome/browser/ui/search/local_ntp_browsertest.cc @@ -2,12 +2,18 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. +#include "base/prefs/pref_service.h" +#include "base/strings/utf_string_conversions.h" +#include "chrome/browser/browser_process.h" #include "chrome/browser/search/search.h" #include "chrome/browser/ui/search/instant_test_utils.h" #include "chrome/browser/ui/tabs/tab_strip_model.h" +#include "chrome/common/pref_names.h" +#include "chrome/common/url_constants.h" #include "chrome/test/base/in_process_browser_test.h" #include "chrome/test/base/ui_test_utils.h" #include "content/public/browser/web_contents.h" +#include "ui/base/resource/resource_bundle.h" class LocalNTPTest : public InProcessBrowserTest, public InstantTestBase { @@ -41,3 +47,42 @@ IN_PROC_BROWSER_TEST_F(LocalNTPTest, LocalNTPJavascriptTest) { ASSERT_TRUE(GetBoolFromJS(active_tab, "!!runTests()", &success)); EXPECT_TRUE(success); } + +// Flaky on Linux Tests bot. +#if defined(OS_LINUX) +#define MAYBE_NTPRespectsBrowserLanguageSetting DISABLED_NTPRespectsBrowserLanguageSetting +#else +#define MAYBE_NTPRespectsBrowserLanguageSetting NTPRespectsBrowserLanguageSetting +#endif +IN_PROC_BROWSER_TEST_F(LocalNTPTest, MAYBE_NTPRespectsBrowserLanguageSetting) { + // Make sure the default language is not French. + std::string default_locale = g_browser_process->GetApplicationLocale(); + EXPECT_NE("fr", default_locale); + + // Switch browser language to French. + std::string loaded_locale = + ui::ResourceBundle::GetSharedInstance().ReloadLocaleResources("fr"); + EXPECT_EQ("fr", loaded_locale); + g_browser_process->SetApplicationLocale(loaded_locale); + PrefService* prefs = g_browser_process->local_state(); + prefs->SetString(prefs::kApplicationLocale, loaded_locale); + + // Setup Instant. + ASSERT_NO_FATAL_FAILURE(SetupInstant(browser())); + + // The second argument says to use only the local overlay and NTP. + instant()->SetInstantEnabled(false, true); + FocusOmniboxAndWaitForInstantNTPSupport(); + + // Open a new tab. + ui_test_utils::NavigateToURLWithDisposition( + browser(), + GURL(chrome::kChromeUINewTabURL), + NEW_FOREGROUND_TAB, + ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB); + + // Verify that the NTP is in French. + content::WebContents* active_tab = + browser()->tab_strip_model()->GetActiveWebContents(); + EXPECT_EQ(ASCIIToUTF16("Nouvel onglet"), active_tab->GetTitle()); +} |