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

Unified Diff: chrome/browser/prefs/pref_hash_filter_unittest.cc

Issue 398893002: Invoke the StartSyncFlare for prefs when performing an automatic reset. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 5 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/prefs/pref_hash_filter_unittest.cc
diff --git a/chrome/browser/prefs/pref_hash_filter_unittest.cc b/chrome/browser/prefs/pref_hash_filter_unittest.cc
index 3b5e8218f1936d3d7892d8ec9e00e9d076fce572..dfcd6e5f05a9c3fe2a72f93aa6a5f7873b835f53 100644
--- a/chrome/browser/prefs/pref_hash_filter_unittest.cc
+++ b/chrome/browser/prefs/pref_hash_filter_unittest.cc
@@ -348,7 +348,8 @@ class PrefHashFilterTest
public:
PrefHashFilterTest() : mock_pref_hash_store_(NULL),
pref_store_contents_(new base::DictionaryValue),
- last_filter_on_load_modified_prefs_(false) {}
+ last_filter_on_load_modified_prefs_(false),
+ reset_recorded_(false) {}
virtual void SetUp() OVERRIDE {
// Construct a PrefHashFilter and MockPrefHashStore for the test.
@@ -367,13 +368,19 @@ class PrefHashFilterTest
pref_hash_filter_.reset(
new PrefHashFilter(temp_mock_pref_hash_store.PassAs<PrefHashStore>(),
configuration,
+ base::Bind(&PrefHashFilterTest::RecordReset,
+ base::Unretained(this)),
&mock_validation_delegate_,
arraysize(kTestTrackedPrefs),
true));
}
- bool RecordedReset() {
- return pref_store_contents_->Get(prefs::kPreferenceResetTime, NULL);
+ // Verifies whether a reset was reported by the PrefHashFiler. Also verifies
+ // that kPreferenceResetTime was set (or not) accordingly.
+ void VerifyRecordedReset(bool reset_expected) {
+ EXPECT_EQ(reset_expected, reset_recorded_);
+ EXPECT_EQ(reset_expected,
+ pref_store_contents_->Get(prefs::kPreferenceResetTime, NULL));
}
// Calls FilterOnLoad() on |pref_hash_Filter_|. |pref_store_contents_| is
@@ -404,6 +411,15 @@ class PrefHashFilterTest
EXPECT_EQ(expected_schedule_write, schedule_write);
}
+ void RecordReset() {
+ // As-is |reset_recorded_| is only designed to remember a single reset, make
+ // sure none was previously recorded.
+ EXPECT_FALSE(reset_recorded_);
+ reset_recorded_ = true;
+ }
+
+ bool reset_recorded_;
+
DISALLOW_COPY_AND_ASSIGN(PrefHashFilterTest);
};
@@ -421,7 +437,7 @@ TEST_P(PrefHashFilterTest, EmptyAndUnchanged) {
kTestTrackedPrefs[i].name).first);
}
ASSERT_EQ(1u, mock_pref_hash_store_->transactions_performed());
- ASSERT_FALSE(RecordedReset());
+ VerifyRecordedReset(false);
// Delegate saw all paths, and all unchanged.
ASSERT_EQ(arraysize(kTestTrackedPrefs),
@@ -450,7 +466,7 @@ TEST_P(PrefHashFilterTest, FilterTrackedPrefUpdate) {
ASSERT_EQ(PrefHashFilter::TRACKING_STRATEGY_ATOMIC, stored_value.second);
ASSERT_EQ(1u, mock_pref_hash_store_->transactions_performed());
- ASSERT_FALSE(RecordedReset());
+ VerifyRecordedReset(false);
}
TEST_P(PrefHashFilterTest, FilterSplitPrefUpdate) {
@@ -474,7 +490,7 @@ TEST_P(PrefHashFilterTest, FilterSplitPrefUpdate) {
ASSERT_EQ(PrefHashFilter::TRACKING_STRATEGY_SPLIT, stored_value.second);
ASSERT_EQ(1u, mock_pref_hash_store_->transactions_performed());
- ASSERT_FALSE(RecordedReset());
+ VerifyRecordedReset(false);
}
TEST_P(PrefHashFilterTest, FilterUntrackedPrefUpdate) {
@@ -644,7 +660,7 @@ TEST_P(PrefHashFilterTest, InitialValueUnknown) {
ASSERT_FALSE(pref_store_contents_->Get(kSplitPref, NULL));
ASSERT_EQ(NULL, stored_split_value.first);
- ASSERT_TRUE(RecordedReset());
+ VerifyRecordedReset(true);
} else {
// Otherwise the values should have remained intact and the hashes should
// have been updated to match them.
@@ -658,7 +674,7 @@ TEST_P(PrefHashFilterTest, InitialValueUnknown) {
ASSERT_EQ(dict_value, split_value_in_store);
ASSERT_EQ(dict_value, stored_split_value.first);
- ASSERT_FALSE(RecordedReset());
+ VerifyRecordedReset(false);
}
}
@@ -771,7 +787,7 @@ TEST_P(PrefHashFilterTest, InitialValueChanged) {
ASSERT_TRUE(dict_value->HasKey("d"));
ASSERT_EQ(dict_value, stored_split_value.first);
- ASSERT_TRUE(RecordedReset());
+ VerifyRecordedReset(true);
} else {
// Otherwise the value should have remained intact and the hash should have
// been updated to match it.
@@ -790,7 +806,7 @@ TEST_P(PrefHashFilterTest, InitialValueChanged) {
ASSERT_TRUE(dict_value->HasKey("d"));
ASSERT_EQ(dict_value, stored_split_value.first);
- ASSERT_FALSE(RecordedReset());
+ VerifyRecordedReset(false);
}
}
@@ -873,7 +889,7 @@ TEST_P(PrefHashFilterTest, InitialValueMigrated) {
ASSERT_FALSE(pref_store_contents_->Get(kAtomicPref, NULL));
ASSERT_EQ(NULL, stored_atomic_value.first);
- ASSERT_TRUE(RecordedReset());
+ VerifyRecordedReset(true);
} else {
// Otherwise the value should have remained intact and the hash should have
// been updated to match it.
@@ -882,7 +898,7 @@ TEST_P(PrefHashFilterTest, InitialValueMigrated) {
ASSERT_EQ(list_value, atomic_value_in_store);
ASSERT_EQ(list_value, stored_atomic_value.first);
- ASSERT_FALSE(RecordedReset());
+ VerifyRecordedReset(false);
}
}
@@ -942,7 +958,7 @@ TEST_P(PrefHashFilterTest, InitialValueUnchangedLegacyId) {
ASSERT_EQ(dict_value, split_value_in_store);
ASSERT_EQ(dict_value, stored_split_value.first);
- ASSERT_FALSE(RecordedReset());
+ VerifyRecordedReset(false);
}
TEST_P(PrefHashFilterTest, DontResetReportOnly) {
@@ -1005,7 +1021,7 @@ TEST_P(PrefHashFilterTest, DontResetReportOnly) {
ASSERT_EQ(NULL, mock_pref_hash_store_->stored_value(kAtomicPref).first);
ASSERT_EQ(NULL, mock_pref_hash_store_->stored_value(kAtomicPref2).first);
- ASSERT_TRUE(RecordedReset());
+ VerifyRecordedReset(true);
} else {
const base::Value* value_in_store;
const base::Value* value_in_store2;
@@ -1018,7 +1034,7 @@ TEST_P(PrefHashFilterTest, DontResetReportOnly) {
ASSERT_EQ(int_value2,
mock_pref_hash_store_->stored_value(kAtomicPref2).first);
- ASSERT_FALSE(RecordedReset());
+ VerifyRecordedReset(false);
}
}

Powered by Google App Engine
This is Rietveld 408576698