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

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: fix test breakage 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..17f861728a19cf481fd9ac8edc00a5a1eac8761d 100644
--- a/components/translate/core/browser/translate_prefs_unittest.cc
+++ b/components/translate/core/browser/translate_prefs_unittest.cc
@@ -6,7 +6,7 @@
#include <algorithm>
#include <string>
-#include <vector>
+#include <utility>
#include "build/build_config.h"
#include "components/pref_registry/testing_pref_service_syncable.h"
@@ -156,6 +156,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, "");
+ base::FeatureList::SetInstance(std::move(feature_list));
+ }
+
std::unique_ptr<user_prefs::TestingPrefServiceSyncable> prefs_;
std::unique_ptr<translate::TranslatePrefs> translate_prefs_;
@@ -164,6 +177,36 @@ class TranslatePrefTest : public testing::Test {
base::Time two_days_ago_;
};
+TEST_F(TranslatePrefTest, IsTooOftenDeniedIn2016Q2UI) {
+ TurnOnTranslate2016Q2UIFlag();
+
+ translate_prefs_->ResetDenialState();
+ ASSERT_FALSE(translate_prefs_->IsTooOftenDenied(kTestLanguage));
+
+ for (int i = 0; i < 3; i++) {
+ translate_prefs_->IncrementTranslationDeniedCount(kTestLanguage);
+ ASSERT_FALSE(translate_prefs_->IsTooOftenDenied(kTestLanguage));
+ }
+
+ translate_prefs_->IncrementTranslationDeniedCount(kTestLanguage);
+ ASSERT_TRUE(translate_prefs_->IsTooOftenDenied(kTestLanguage));
+}
+
+TEST_F(TranslatePrefTest, IsTooOftenIgnoredIn2016Q2UI) {
+ TurnOnTranslate2016Q2UIFlag();
+
+ translate_prefs_->ResetDenialState();
+ ASSERT_FALSE(translate_prefs_->IsTooOftenDenied(kTestLanguage));
+
+ for (int i = 0; i < 10; i++) {
+ translate_prefs_->IncrementTranslationIgnoredCount(kTestLanguage);
+ ASSERT_FALSE(translate_prefs_->IsTooOftenDenied(kTestLanguage));
+ }
+
+ translate_prefs_->IncrementTranslationIgnoredCount(kTestLanguage);
+ ASSERT_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.

Powered by Google App Engine
This is Rietveld 408576698