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

Unified Diff: components/translate/core/browser/translate_prefs_unittest.cc

Issue 1923143003: Implement the 2016Q2 Translate UI designe spec out in (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: minor changes in comments Created 4 years, 8 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: components/translate/core/browser/translate_prefs_unittest.cc
diff --git a/components/translate/core/browser/translate_prefs_unittest.cc b/components/translate/core/browser/translate_prefs_unittest.cc
index 6f01b0175d03fbf07e75af5592bd8a49bb7daf1b..2f941921cdc42d24554b5ec6056108c34f4ceb90 100644
--- a/components/translate/core/browser/translate_prefs_unittest.cc
+++ b/components/translate/core/browser/translate_prefs_unittest.cc
@@ -6,12 +6,14 @@
#include <algorithm>
#include <string>
+#include <utility>
#include <vector>
#include "build/build_config.h"
#include "components/pref_registry/testing_pref_service_syncable.h"
#include "components/prefs/scoped_user_pref_update.h"
#include "components/translate/core/browser/translate_download_manager.h"
+#include "components/translate/core/browser/translate_prefs.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace {
@@ -47,9 +49,8 @@ TEST(TranslatePrefsTest, CreateBlockedLanguages) {
std::vector<std::string> blocked_languages;
- TranslatePrefs::CreateBlockedLanguages(&blocked_languages,
- blacklisted_languages,
- accept_languages);
+ TranslatePrefs::CreateBlockedLanguages(
+ &blocked_languages, blacklisted_languages, accept_languages);
// The order of the elements cannot be determined.
std::vector<std::string> expected;
@@ -66,10 +67,8 @@ TEST(TranslatePrefsTest, CreateBlockedLanguages) {
EXPECT_EQ(expected.size(), blocked_languages.size());
for (std::vector<std::string>::const_iterator it = expected.begin();
it != expected.end(); ++it) {
- EXPECT_NE(blocked_languages.end(),
- std::find(blocked_languages.begin(),
- blocked_languages.end(),
- *it));
+ EXPECT_NE(blocked_languages.end(), std::find(blocked_languages.begin(),
+ blocked_languages.end(), *it));
}
}
@@ -86,9 +85,8 @@ TEST(TranslatePrefsTest, CreateBlockedLanguagesNonEnglishUI) {
{
TranslateDownloadManager::GetInstance()->set_application_locale("en");
std::vector<std::string> blocked_languages;
- TranslatePrefs::CreateBlockedLanguages(&blocked_languages,
- blacklisted_languages,
- accept_languages);
+ TranslatePrefs::CreateBlockedLanguages(
+ &blocked_languages, blacklisted_languages, accept_languages);
std::vector<std::string> expected;
expected.push_back("en");
expected.push_back("fr");
@@ -98,10 +96,9 @@ TEST(TranslatePrefsTest, CreateBlockedLanguagesNonEnglishUI) {
EXPECT_EQ(expected.size(), blocked_languages.size());
for (std::vector<std::string>::const_iterator it = expected.begin();
it != expected.end(); ++it) {
- EXPECT_NE(blocked_languages.end(),
- std::find(blocked_languages.begin(),
- blocked_languages.end(),
- *it));
+ EXPECT_NE(
+ blocked_languages.end(),
+ std::find(blocked_languages.begin(), blocked_languages.end(), *it));
}
}
@@ -111,9 +108,8 @@ TEST(TranslatePrefsTest, CreateBlockedLanguagesNonEnglishUI) {
{
TranslateDownloadManager::GetInstance()->set_application_locale("ja");
std::vector<std::string> blocked_languages;
- TranslatePrefs::CreateBlockedLanguages(&blocked_languages,
- blacklisted_languages,
- accept_languages);
+ TranslatePrefs::CreateBlockedLanguages(
+ &blocked_languages, blacklisted_languages, accept_languages);
std::vector<std::string> expected;
expected.push_back("fr");
expected.push_back("ja");
@@ -122,10 +118,9 @@ TEST(TranslatePrefsTest, CreateBlockedLanguagesNonEnglishUI) {
EXPECT_EQ(expected.size(), blocked_languages.size());
for (std::vector<std::string>::const_iterator it = expected.begin();
it != expected.end(); ++it) {
- EXPECT_NE(blocked_languages.end(),
- std::find(blocked_languages.begin(),
- blocked_languages.end(),
- *it));
+ EXPECT_NE(
+ blocked_languages.end(),
+ std::find(blocked_languages.begin(), blocked_languages.end(), *it));
}
}
}
@@ -156,6 +151,19 @@ class TranslatePrefTest : public testing::Test {
return update.GetOldestDenialTime();
}
+ void SetUp() override {
+ base::FeatureList::ClearInstanceForTesting();
+ base::FeatureList::SetInstance(base::WrapUnique(new base::FeatureList()));
+ }
+
+ void TurnOnTranslate2016Q2UIFlag() {
+ base::FeatureList::ClearInstanceForTesting();
+ std::unique_ptr<base::FeatureList> feature_list(new base::FeatureList);
+ feature_list->InitializeFromCommandLine(translate::kTranslateUI2016Q2.name,
+ std::string());
+ base::FeatureList::SetInstance(std::move(feature_list));
+ }
+
std::unique_ptr<user_prefs::TestingPrefServiceSyncable> prefs_;
std::unique_ptr<translate::TranslatePrefs> translate_prefs_;
@@ -164,6 +172,36 @@ class TranslatePrefTest : public testing::Test {
base::Time two_days_ago_;
};
+TEST_F(TranslatePrefTest, IsTooOftenDeniedIn2016Q2UI) {
+ TurnOnTranslate2016Q2UIFlag();
+
+ translate_prefs_->ResetDenialState();
+ EXPECT_FALSE(translate_prefs_->IsTooOftenDenied(kTestLanguage));
+
+ for (int i = 0; i < 3; i++) {
+ translate_prefs_->IncrementTranslationDeniedCount(kTestLanguage);
+ EXPECT_FALSE(translate_prefs_->IsTooOftenDenied(kTestLanguage));
+ }
+
+ translate_prefs_->IncrementTranslationDeniedCount(kTestLanguage);
+ EXPECT_TRUE(translate_prefs_->IsTooOftenDenied(kTestLanguage));
+}
+
+TEST_F(TranslatePrefTest, IsTooOftenIgnoredIn2016Q2UI) {
+ TurnOnTranslate2016Q2UIFlag();
+
+ translate_prefs_->ResetDenialState();
+ EXPECT_FALSE(translate_prefs_->IsTooOftenDenied(kTestLanguage));
+
+ for (int i = 0; i < 10; i++) {
+ translate_prefs_->IncrementTranslationIgnoredCount(kTestLanguage);
+ EXPECT_FALSE(translate_prefs_->IsTooOftenDenied(kTestLanguage));
+ }
+
+ translate_prefs_->IncrementTranslationIgnoredCount(kTestLanguage);
+ EXPECT_TRUE(translate_prefs_->IsTooOftenDenied(kTestLanguage));
+}
+
TEST_F(TranslatePrefTest, UpdateLastDeniedTime) {
// Test that denials with more than 24 hours difference between them do not
// block the language.
@@ -215,16 +253,16 @@ TEST_F(TranslatePrefTest, DenialTimeUpdate_ForceListExistence) {
DictionaryPrefUpdate dict_update(
prefs_.get(), TranslatePrefs::kPrefTranslateLastDeniedTimeForLanguage);
base::DictionaryValue* denial_dict = dict_update.Get();
- ASSERT_TRUE(denial_dict);
+ EXPECT_TRUE(denial_dict);
base::ListValue* list_value = nullptr;
bool has_list = denial_dict->GetList(kTestLanguage, &list_value);
- ASSERT_FALSE(has_list);
+ EXPECT_FALSE(has_list);
// Calling GetDenialTimes will force creation of a properly populated list.
DenialTimeUpdate update(prefs_.get(), kTestLanguage, 2);
base::ListValue* time_list = update.GetDenialTimes();
- ASSERT_TRUE(time_list);
+ EXPECT_TRUE(time_list);
EXPECT_EQ(0U, time_list->GetSize());
}
@@ -235,20 +273,20 @@ TEST_F(TranslatePrefTest, DenialTimeUpdate_Migrate) {
DictionaryPrefUpdate dict_update(
prefs_.get(), TranslatePrefs::kPrefTranslateLastDeniedTimeForLanguage);
base::DictionaryValue* denial_dict = dict_update.Get();
- ASSERT_TRUE(denial_dict);
+ EXPECT_TRUE(denial_dict);
denial_dict->SetDouble(kTestLanguage, two_days_ago_.ToJsTime());
base::ListValue* list_value = nullptr;
bool has_list = denial_dict->GetList(kTestLanguage, &list_value);
- ASSERT_FALSE(has_list);
+ EXPECT_FALSE(has_list);
// Calling GetDenialTimes will force creation of a properly populated list.
DenialTimeUpdate update(prefs_.get(), kTestLanguage, 2);
base::ListValue* time_list = update.GetDenialTimes();
- ASSERT_TRUE(time_list);
+ EXPECT_TRUE(time_list);
has_list = denial_dict->GetList(kTestLanguage, &list_value);
- ASSERT_TRUE(has_list);
+ EXPECT_TRUE(has_list);
EXPECT_EQ(time_list, list_value);
EXPECT_EQ(1U, time_list->GetSize());
EXPECT_EQ(two_days_ago_, update.GetOldestDenialTime());
« no previous file with comments | « components/translate/core/browser/translate_prefs.cc ('k') | components/translate/core/browser/translate_ui_delegate.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698