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 ea63a88ee718d0b2e9757ad6ab334af7cb305ede..3b5e8218f1936d3d7892d8ec9e00e9d076fce572 100644 |
--- a/chrome/browser/prefs/pref_hash_filter_unittest.cc |
+++ b/chrome/browser/prefs/pref_hash_filter_unittest.cc |
@@ -22,6 +22,7 @@ |
#include "chrome/browser/prefs/mock_validation_delegate.h" |
#include "chrome/browser/prefs/pref_hash_store.h" |
#include "chrome/browser/prefs/pref_hash_store_transaction.h" |
+#include "chrome/browser/prefs/tracked/hash_store_contents.h" |
#include "chrome/common/pref_names.h" |
#include "testing/gtest/include/gtest/gtest.h" |
@@ -75,9 +76,8 @@ class MockPrefHashStore : public PrefHashStore { |
typedef std::pair<const void*, PrefHashFilter::PrefTrackingStrategy> |
ValuePtrStrategyPair; |
- MockPrefHashStore() : transactions_performed_(0), |
- transaction_active_(false), |
- commit_performed_(false) {} |
+ MockPrefHashStore() |
+ : transactions_performed_(0), transaction_active_(false) {} |
virtual ~MockPrefHashStore() { |
EXPECT_FALSE(transaction_active_); |
@@ -98,10 +98,6 @@ class MockPrefHashStore : public PrefHashStore { |
// Returns the number of transactions that were performed. |
size_t transactions_performed() { return transactions_performed_; } |
- // Returns true if this MockPrefHashStore's CommitPendingWrite method was |
- // called. |
- bool commit_performed() { return commit_performed_; } |
- |
// Returns the number of paths checked. |
size_t checked_paths_count() const { |
return checked_values_.size(); |
@@ -139,8 +135,8 @@ class MockPrefHashStore : public PrefHashStore { |
} |
// PrefHashStore implementation. |
- virtual scoped_ptr<PrefHashStoreTransaction> BeginTransaction() OVERRIDE; |
- virtual void CommitPendingWrite() OVERRIDE; |
+ virtual scoped_ptr<PrefHashStoreTransaction> BeginTransaction( |
+ scoped_ptr<HashStoreContents> storage) OVERRIDE; |
private: |
// A MockPrefHashStoreTransaction is handed to the caller on |
@@ -169,6 +165,12 @@ class MockPrefHashStore : public PrefHashStore { |
virtual void StoreSplitHash( |
const std::string& path, |
const base::DictionaryValue* split_value) OVERRIDE; |
+ virtual bool HasHash(const std::string& path) const OVERRIDE; |
+ virtual void ImportHash(const std::string& path, |
+ const base::Value* hash) OVERRIDE; |
+ virtual void ClearHash(const std::string& path) OVERRIDE; |
+ virtual bool IsSuperMACValid() const OVERRIDE; |
+ virtual bool StampSuperMac() OVERRIDE; |
private: |
MockPrefHashStore* outer_; |
@@ -205,9 +207,6 @@ class MockPrefHashStore : public PrefHashStore { |
// active at a time). |
bool transaction_active_; |
- // Whether CommitPendingWrite() was called. |
- bool commit_performed_; |
- |
DISALLOW_COPY_AND_ASSIGN(MockPrefHashStore); |
}; |
@@ -229,17 +228,13 @@ void MockPrefHashStore::SetInvalidKeysResult( |
invalid_keys_results_.insert(std::make_pair(path, invalid_keys_result)); |
} |
-scoped_ptr<PrefHashStoreTransaction> MockPrefHashStore::BeginTransaction() { |
+scoped_ptr<PrefHashStoreTransaction> MockPrefHashStore::BeginTransaction( |
+ scoped_ptr<HashStoreContents> storage) { |
EXPECT_FALSE(transaction_active_); |
return scoped_ptr<PrefHashStoreTransaction>( |
new MockPrefHashStoreTransaction(this)); |
} |
-void MockPrefHashStore::CommitPendingWrite() { |
- EXPECT_FALSE(commit_performed_); |
- commit_performed_ = true; |
-} |
- |
PrefHashStoreTransaction::ValueState MockPrefHashStore::RecordCheckValue( |
const std::string& path, |
const base::Value* value, |
@@ -304,6 +299,36 @@ void MockPrefHashStore::MockPrefHashStoreTransaction::StoreSplitHash( |
PrefHashFilter::TRACKING_STRATEGY_SPLIT); |
} |
+bool MockPrefHashStore::MockPrefHashStoreTransaction::HasHash( |
+ const std::string& path) const { |
+ ADD_FAILURE() << "Unexpected call."; |
+ return false; |
+} |
+ |
+void MockPrefHashStore::MockPrefHashStoreTransaction::ImportHash( |
+ const std::string& path, |
+ const base::Value* hash) { |
+ ADD_FAILURE() << "Unexpected call."; |
+} |
+ |
+void MockPrefHashStore::MockPrefHashStoreTransaction::ClearHash( |
+ const std::string& path) { |
+ ADD_FAILURE() << "Unexpected call."; |
+} |
+ |
+bool MockPrefHashStore::MockPrefHashStoreTransaction::IsSuperMACValid() const { |
+ // TODO(erikwright): Test that the result of this method is reported to |
+ // Settings.HashesDictionaryTrusted. |
+ return false; |
+} |
+ |
+bool MockPrefHashStore::MockPrefHashStoreTransaction::StampSuperMac() { |
+ // TODO(erikwright): Test that, when there are no other changes to the store, |
+ // the result of this method determines the value of |prefs_altered| in the |
+ // |post_filter_on_load_callback| invocation. |
+ return false; |
+} |
+ |
std::vector<PrefHashFilter::TrackedPreferenceMetadata> GetConfiguration( |
PrefHashFilter::EnforcementLevel max_enforcement_level) { |
std::vector<PrefHashFilter::TrackedPreferenceMetadata> configuration( |
@@ -343,7 +368,8 @@ class PrefHashFilterTest |
new PrefHashFilter(temp_mock_pref_hash_store.PassAs<PrefHashStore>(), |
configuration, |
&mock_validation_delegate_, |
- arraysize(kTestTrackedPrefs))); |
+ arraysize(kTestTrackedPrefs), |
+ true)); |
} |
bool RecordedReset() { |
@@ -396,7 +422,6 @@ TEST_P(PrefHashFilterTest, EmptyAndUnchanged) { |
} |
ASSERT_EQ(1u, mock_pref_hash_store_->transactions_performed()); |
ASSERT_FALSE(RecordedReset()); |
- EXPECT_FALSE(mock_pref_hash_store_->commit_performed()); |
// Delegate saw all paths, and all unchanged. |
ASSERT_EQ(arraysize(kTestTrackedPrefs), |
@@ -426,7 +451,6 @@ TEST_P(PrefHashFilterTest, FilterTrackedPrefUpdate) { |
ASSERT_EQ(1u, mock_pref_hash_store_->transactions_performed()); |
ASSERT_FALSE(RecordedReset()); |
- EXPECT_TRUE(mock_pref_hash_store_->commit_performed()); |
} |
TEST_P(PrefHashFilterTest, FilterSplitPrefUpdate) { |
@@ -451,7 +475,6 @@ TEST_P(PrefHashFilterTest, FilterSplitPrefUpdate) { |
ASSERT_EQ(1u, mock_pref_hash_store_->transactions_performed()); |
ASSERT_FALSE(RecordedReset()); |
- EXPECT_TRUE(mock_pref_hash_store_->commit_performed()); |
} |
TEST_P(PrefHashFilterTest, FilterUntrackedPrefUpdate) { |
@@ -518,7 +541,6 @@ TEST_P(PrefHashFilterTest, MultiplePrefsFilterSerializeData) { |
mock_pref_hash_store_->stored_value(kSplitPref); |
ASSERT_EQ(dict_value, stored_value_split.first); |
ASSERT_EQ(PrefHashFilter::TRACKING_STRATEGY_SPLIT, stored_value_split.second); |
- EXPECT_TRUE(mock_pref_hash_store_->commit_performed()); |
} |
TEST_P(PrefHashFilterTest, EmptyAndUnknown) { |
@@ -546,7 +568,6 @@ TEST_P(PrefHashFilterTest, EmptyAndUnknown) { |
ASSERT_EQ(NULL, stored_split_value.first); |
ASSERT_EQ(PrefHashFilter::TRACKING_STRATEGY_SPLIT, |
stored_split_value.second); |
- EXPECT_FALSE(mock_pref_hash_store_->commit_performed()); |
// Delegate saw all prefs, two of which had the expected value_state. |
ASSERT_EQ(arraysize(kTestTrackedPrefs), |
@@ -639,7 +660,6 @@ TEST_P(PrefHashFilterTest, InitialValueUnknown) { |
ASSERT_FALSE(RecordedReset()); |
} |
- EXPECT_FALSE(mock_pref_hash_store_->commit_performed()); |
} |
TEST_P(PrefHashFilterTest, InitialValueTrustedUnknown) { |
@@ -693,7 +713,6 @@ TEST_P(PrefHashFilterTest, InitialValueTrustedUnknown) { |
ASSERT_EQ(dict_value, stored_split_value.first); |
ASSERT_EQ(PrefHashFilter::TRACKING_STRATEGY_SPLIT, |
stored_split_value.second); |
- EXPECT_FALSE(mock_pref_hash_store_->commit_performed()); |
} |
TEST_P(PrefHashFilterTest, InitialValueChanged) { |
@@ -773,7 +792,6 @@ TEST_P(PrefHashFilterTest, InitialValueChanged) { |
ASSERT_FALSE(RecordedReset()); |
} |
- EXPECT_FALSE(mock_pref_hash_store_->commit_performed()); |
} |
TEST_P(PrefHashFilterTest, EmptyCleared) { |
@@ -814,7 +832,6 @@ TEST_P(PrefHashFilterTest, EmptyCleared) { |
ASSERT_EQ(NULL, stored_split_value.first); |
ASSERT_EQ(PrefHashFilter::TRACKING_STRATEGY_SPLIT, |
stored_split_value.second); |
- EXPECT_FALSE(mock_pref_hash_store_->commit_performed()); |
} |
TEST_P(PrefHashFilterTest, InitialValueMigrated) { |
@@ -867,7 +884,6 @@ TEST_P(PrefHashFilterTest, InitialValueMigrated) { |
ASSERT_FALSE(RecordedReset()); |
} |
- EXPECT_FALSE(mock_pref_hash_store_->commit_performed()); |
} |
TEST_P(PrefHashFilterTest, InitialValueUnchangedLegacyId) { |
@@ -927,7 +943,6 @@ TEST_P(PrefHashFilterTest, InitialValueUnchangedLegacyId) { |
ASSERT_EQ(dict_value, stored_split_value.first); |
ASSERT_FALSE(RecordedReset()); |
- EXPECT_FALSE(mock_pref_hash_store_->commit_performed()); |
} |
TEST_P(PrefHashFilterTest, DontResetReportOnly) { |
@@ -1005,7 +1020,6 @@ TEST_P(PrefHashFilterTest, DontResetReportOnly) { |
ASSERT_FALSE(RecordedReset()); |
} |
- EXPECT_FALSE(mock_pref_hash_store_->commit_performed()); |
} |
INSTANTIATE_TEST_CASE_P( |