Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1762)

Unified Diff: chrome/browser/translate/translate_manager_browsertest.cc

Issue 159883002: Move TranslatePrefs to the Translate component (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@acceptLanguages
Patch Set: Fix ChromeOS browsertests Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/translate/translate_manager_browsertest.cc
diff --git a/chrome/browser/translate/translate_manager_browsertest.cc b/chrome/browser/translate/translate_manager_browsertest.cc
index 717823f6979d3b6fe53ce3a4634a99c8149af63a..2d77d562ed95659b0e16b356c0372e8a5afb76b7 100644
--- a/chrome/browser/translate/translate_manager_browsertest.cc
+++ b/chrome/browser/translate/translate_manager_browsertest.cc
@@ -20,7 +20,6 @@
#include "chrome/browser/tab_contents/render_view_context_menu.h"
#include "chrome/browser/translate/translate_infobar_delegate.h"
#include "chrome/browser/translate/translate_manager.h"
-#include "chrome/browser/translate/translate_prefs.h"
#include "chrome/browser/translate/translate_service.h"
#include "chrome/browser/translate/translate_tab_helper.h"
#include "chrome/browser/ui/browser.h"
@@ -37,8 +36,10 @@
#include "chrome/test/base/testing_browser_process.h"
#include "chrome/test/base/testing_profile.h"
#include "chrome/test/base/ui_test_utils.h"
+#include "components/translate/core/browser/translate_accept_languages.h"
#include "components/translate/core/browser/translate_download_manager.h"
#include "components/translate/core/browser/translate_language_list.h"
+#include "components/translate/core/browser/translate_prefs.h"
#include "components/translate/core/browser/translate_script.h"
#include "components/translate/core/common/language_detection_details.h"
#include "components/translate/core/common/translate_pref_names.h"
@@ -1096,14 +1097,17 @@ TEST_F(TranslateManagerBrowserTest, NeverTranslateLanguagePref) {
registrar.Init(prefs);
registrar.Add(TranslatePrefs::kPrefTranslateBlockedLanguages,
pref_callback_);
- TranslatePrefs translate_prefs(prefs);
- EXPECT_FALSE(translate_prefs.IsBlockedLanguage("fr"));
- EXPECT_TRUE(translate_prefs.CanTranslateLanguage(profile, "fr"));
+ scoped_ptr<TranslatePrefs> translate_prefs(
+ TranslateTabHelper::CreateTranslatePrefs(prefs));
+ EXPECT_FALSE(translate_prefs->IsBlockedLanguage("fr"));
+ TranslateAcceptLanguages* accept_languages =
+ TranslateTabHelper::GetTranslateAcceptLanguages(profile);
+ EXPECT_TRUE(translate_prefs->CanTranslateLanguage(accept_languages, "fr"));
SetPrefObserverExpectation(TranslatePrefs::kPrefTranslateBlockedLanguages);
- translate_prefs.BlockLanguage("fr");
- EXPECT_TRUE(translate_prefs.IsBlockedLanguage("fr"));
- EXPECT_FALSE(translate_prefs.IsSiteBlacklisted(url.host()));
- EXPECT_FALSE(translate_prefs.CanTranslateLanguage(profile, "fr"));
+ translate_prefs->BlockLanguage("fr");
+ EXPECT_TRUE(translate_prefs->IsBlockedLanguage("fr"));
+ EXPECT_FALSE(translate_prefs->IsSiteBlacklisted(url.host()));
+ EXPECT_FALSE(translate_prefs->CanTranslateLanguage(accept_languages, "fr"));
EXPECT_TRUE(CloseTranslateInfoBar());
@@ -1115,10 +1119,10 @@ TEST_F(TranslateManagerBrowserTest, NeverTranslateLanguagePref) {
// Remove the language from the blacklist.
SetPrefObserverExpectation(TranslatePrefs::kPrefTranslateBlockedLanguages);
- translate_prefs.UnblockLanguage("fr");
- EXPECT_FALSE(translate_prefs.IsBlockedLanguage("fr"));
- EXPECT_FALSE(translate_prefs.IsSiteBlacklisted(url.host()));
- EXPECT_TRUE(translate_prefs.CanTranslateLanguage(profile, "fr"));
+ translate_prefs->UnblockLanguage("fr");
+ EXPECT_FALSE(translate_prefs->IsBlockedLanguage("fr"));
+ EXPECT_FALSE(translate_prefs->IsSiteBlacklisted(url.host()));
+ EXPECT_TRUE(translate_prefs->CanTranslateLanguage(accept_languages, "fr"));
// Navigate to a page in French.
SimulateNavigation(url, "fr", true);
@@ -1143,13 +1147,16 @@ TEST_F(TranslateManagerBrowserTest, NeverTranslateSitePref) {
PrefChangeRegistrar registrar;
registrar.Init(prefs);
registrar.Add(TranslatePrefs::kPrefTranslateSiteBlacklist, pref_callback_);
- TranslatePrefs translate_prefs(prefs);
- EXPECT_FALSE(translate_prefs.IsSiteBlacklisted(host));
- EXPECT_TRUE(translate_prefs.CanTranslateLanguage(profile, "fr"));
+ scoped_ptr<TranslatePrefs> translate_prefs(
+ TranslateTabHelper::CreateTranslatePrefs(prefs));
+ EXPECT_FALSE(translate_prefs->IsSiteBlacklisted(host));
+ TranslateAcceptLanguages* accept_languages =
+ TranslateTabHelper::GetTranslateAcceptLanguages(profile);
+ EXPECT_TRUE(translate_prefs->CanTranslateLanguage(accept_languages, "fr"));
SetPrefObserverExpectation(TranslatePrefs::kPrefTranslateSiteBlacklist);
- translate_prefs.BlacklistSite(host);
- EXPECT_TRUE(translate_prefs.IsSiteBlacklisted(host));
- EXPECT_TRUE(translate_prefs.CanTranslateLanguage(profile, "fr"));
+ translate_prefs->BlacklistSite(host);
+ EXPECT_TRUE(translate_prefs->IsSiteBlacklisted(host));
+ EXPECT_TRUE(translate_prefs->CanTranslateLanguage(accept_languages, "fr"));
EXPECT_TRUE(CloseTranslateInfoBar());
@@ -1161,9 +1168,9 @@ TEST_F(TranslateManagerBrowserTest, NeverTranslateSitePref) {
// Remove the site from the blacklist.
SetPrefObserverExpectation(TranslatePrefs::kPrefTranslateSiteBlacklist);
- translate_prefs.RemoveSiteFromBlacklist(host);
- EXPECT_FALSE(translate_prefs.IsSiteBlacklisted(host));
- EXPECT_TRUE(translate_prefs.CanTranslateLanguage(profile, "fr"));
+ translate_prefs->RemoveSiteFromBlacklist(host);
+ EXPECT_FALSE(translate_prefs->IsSiteBlacklisted(host));
+ EXPECT_TRUE(translate_prefs->CanTranslateLanguage(accept_languages, "fr"));
// Navigate to a page in French.
SimulateNavigation(url, "fr", true);
@@ -1181,9 +1188,10 @@ TEST_F(TranslateManagerBrowserTest, AlwaysTranslateLanguagePref) {
PrefChangeRegistrar registrar;
registrar.Init(prefs);
registrar.Add(TranslatePrefs::kPrefTranslateWhitelists, pref_callback_);
- TranslatePrefs translate_prefs(prefs);
+ scoped_ptr<TranslatePrefs> translate_prefs(
+ TranslateTabHelper::CreateTranslatePrefs(prefs));
SetPrefObserverExpectation(TranslatePrefs::kPrefTranslateWhitelists);
- translate_prefs.WhitelistLanguagePair("fr", "en");
+ translate_prefs->WhitelistLanguagePair("fr", "en");
// Load a page in French.
SimulateNavigation(GURL("http://www.google.fr"), "fr", true);
@@ -1222,7 +1230,7 @@ TEST_F(TranslateManagerBrowserTest, AlwaysTranslateLanguagePref) {
// Now revert the always translate pref and make sure we go back to expected
// behavior, which is show a "before translate" infobar.
SetPrefObserverExpectation(TranslatePrefs::kPrefTranslateWhitelists);
- translate_prefs.RemoveLanguagePairFromWhitelist("fr", "en");
+ translate_prefs->RemoveLanguagePairFromWhitelist("fr", "en");
SimulateNavigation(GURL("http://www.google.fr"), "fr", true);
EXPECT_FALSE(GetTranslateMessage(&page_id, &original_lang, &target_lang));
infobar = GetTranslateInfoBar();
@@ -1237,11 +1245,12 @@ TEST_F(TranslateManagerBrowserTest, ContextMenu) {
GURL url("http://www.google.fr");
Profile* profile =
Profile::FromBrowserContext(web_contents()->GetBrowserContext());
- TranslatePrefs translate_prefs(profile->GetPrefs());
- translate_prefs.BlockLanguage("fr");
- translate_prefs.BlacklistSite(url.host());
- EXPECT_TRUE(translate_prefs.IsBlockedLanguage("fr"));
- EXPECT_TRUE(translate_prefs.IsSiteBlacklisted(url.host()));
+ scoped_ptr<TranslatePrefs> translate_prefs(
+ TranslateTabHelper::CreateTranslatePrefs(profile->GetPrefs()));
+ translate_prefs->BlockLanguage("fr");
+ translate_prefs->BlacklistSite(url.host());
+ EXPECT_TRUE(translate_prefs->IsBlockedLanguage("fr"));
+ EXPECT_TRUE(translate_prefs->IsSiteBlacklisted(url.host()));
// Simulate navigating to a page in French. The translate menu should show but
// should only be enabled when the page language has been received.
@@ -1276,8 +1285,8 @@ TEST_F(TranslateManagerBrowserTest, ContextMenu) {
process()->sink().ClearMessages();
// This should also have reverted the blacklisting of this site and language.
- EXPECT_FALSE(translate_prefs.IsBlockedLanguage("fr"));
- EXPECT_FALSE(translate_prefs.IsSiteBlacklisted(url.host()));
+ EXPECT_FALSE(translate_prefs->IsBlockedLanguage("fr"));
+ EXPECT_FALSE(translate_prefs->IsSiteBlacklisted(url.host()));
// Let's simulate the page being translated.
SimulateOnPageTranslated("fr", "en");
@@ -1343,11 +1352,12 @@ TEST_F(TranslateManagerBrowserTest, ContextMenu) {
TEST_F(TranslateManagerBrowserTest, BeforeTranslateExtraButtons) {
Profile* profile =
Profile::FromBrowserContext(web_contents()->GetBrowserContext());
- TranslatePrefs translate_prefs(profile->GetPrefs());
- translate_prefs.ResetTranslationAcceptedCount("fr");
- translate_prefs.ResetTranslationDeniedCount("fr");
- translate_prefs.ResetTranslationAcceptedCount("de");
- translate_prefs.ResetTranslationDeniedCount("de");
+ scoped_ptr<TranslatePrefs> translate_prefs(
+ TranslateTabHelper::CreateTranslatePrefs(profile->GetPrefs()));
+ translate_prefs->ResetTranslationAcceptedCount("fr");
+ translate_prefs->ResetTranslationDeniedCount("fr");
+ translate_prefs->ResetTranslationAcceptedCount("de");
+ translate_prefs->ResetTranslationDeniedCount("de");
// We'll do 4 times in incognito mode first to make sure the button is not
// shown in that case, then 4 times in normal mode.
@@ -1378,7 +1388,7 @@ TEST_F(TranslateManagerBrowserTest, BeforeTranslateExtraButtons) {
}
// Simulate the user pressing "Always translate French".
infobar->AlwaysTranslatePageLanguage();
- EXPECT_TRUE(translate_prefs.IsLanguagePairWhitelisted("fr", "en"));
+ EXPECT_TRUE(translate_prefs->IsLanguagePairWhitelisted("fr", "en"));
// Simulate the translate script being retrieved (it only needs to be done
// once in the test as it is cached).
SimulateTranslateScriptURLFetch(true);
@@ -1410,7 +1420,7 @@ TEST_F(TranslateManagerBrowserTest, BeforeTranslateExtraButtons) {
}
// Simulate the user pressing "Never translate French".
infobar->NeverTranslatePageLanguage();
- EXPECT_TRUE(translate_prefs.IsBlockedLanguage("de"));
+ EXPECT_TRUE(translate_prefs->IsBlockedLanguage("de"));
// No translation should have occured and the infobar should be gone.
EXPECT_FALSE(GetTranslateMessage(&page_id, &original_lang, &target_lang));
process()->sink().ClearMessages();

Powered by Google App Engine
This is Rietveld 408576698