Index: chrome/browser/sync/util/cryptographer_unittest.cc |
diff --git a/chrome/browser/sync/util/cryptographer_unittest.cc b/chrome/browser/sync/util/cryptographer_unittest.cc |
index 73e389179a8ac578f5acaa0a8f5d34cbdb7dfcdd..b596c118237b873007ce46a698589e213b52b93c 100644 |
--- a/chrome/browser/sync/util/cryptographer_unittest.cc |
+++ b/chrome/browser/sync/util/cryptographer_unittest.cc |
@@ -11,21 +11,23 @@ |
#include "chrome/browser/password_manager/encryptor.h" |
#include "chrome/browser/sync/protocol/nigori_specifics.pb.h" |
#include "chrome/browser/sync/protocol/password_specifics.pb.h" |
+#include "chrome/browser/sync/syncable/model_type_test_util.h" |
#include "testing/gmock/include/gmock/gmock.h" |
#include "testing/gtest/include/gtest/gtest.h" |
namespace browser_sync { |
+using ::testing::_; |
using ::testing::Mock; |
using ::testing::StrictMock; |
-using syncable::ModelTypeSet; |
+using syncable::ModelEnumSet; |
namespace { |
class MockObserver : public Cryptographer::Observer { |
public: |
MOCK_METHOD2(OnEncryptedTypesChanged, |
- void(const syncable::ModelTypeSet&, bool)); |
+ void(syncable::ModelEnumSet, bool)); |
}; |
} // namespace |
@@ -206,41 +208,43 @@ TEST(CryptographerTest, NigoriEncryptionTypes) { |
// Just set the sensitive types (shouldn't trigger any |
// notifications). |
- ModelTypeSet encrypted_types(Cryptographer::SensitiveTypes()); |
+ ModelEnumSet encrypted_types(Cryptographer::SensitiveTypes()); |
cryptographer.MergeEncryptedTypesForTest(encrypted_types); |
cryptographer.UpdateNigoriFromEncryptedTypes(&nigori); |
cryptographer2.UpdateEncryptedTypesFromNigori(nigori); |
- EXPECT_EQ(encrypted_types, cryptographer.GetEncryptedTypes()); |
- EXPECT_EQ(encrypted_types, cryptographer2.GetEncryptedTypes()); |
+ EXPECT_TRUE(encrypted_types.Equals(cryptographer.GetEncryptedTypes())); |
+ EXPECT_TRUE(encrypted_types.Equals(cryptographer2.GetEncryptedTypes())); |
Mock::VerifyAndClearExpectations(&observer); |
Mock::VerifyAndClearExpectations(&observer2); |
EXPECT_CALL(observer, |
- OnEncryptedTypesChanged(syncable::GetAllRealModelTypes(), |
- false)); |
+ OnEncryptedTypesChanged( |
+ HasModelTypes(syncable::ModelEnumSet::All()), |
+ false)); |
EXPECT_CALL(observer2, |
- OnEncryptedTypesChanged(syncable::GetAllRealModelTypes(), |
- false)); |
+ OnEncryptedTypesChanged( |
+ HasModelTypes(syncable::ModelEnumSet::All()), |
+ false)); |
// Set all encrypted types |
- encrypted_types = syncable::GetAllRealModelTypes(); |
+ encrypted_types = syncable::ModelEnumSet::All(); |
cryptographer.MergeEncryptedTypesForTest(encrypted_types); |
cryptographer.UpdateNigoriFromEncryptedTypes(&nigori); |
cryptographer2.UpdateEncryptedTypesFromNigori(nigori); |
- EXPECT_EQ(encrypted_types, cryptographer.GetEncryptedTypes()); |
- EXPECT_EQ(encrypted_types, cryptographer2.GetEncryptedTypes()); |
+ EXPECT_TRUE(encrypted_types.Equals(cryptographer.GetEncryptedTypes())); |
+ EXPECT_TRUE(encrypted_types.Equals(cryptographer2.GetEncryptedTypes())); |
// Receiving an empty nigori should not reset any encrypted types or trigger |
// an observer notification. |
Mock::VerifyAndClearExpectations(&observer); |
nigori = sync_pb::NigoriSpecifics(); |
cryptographer.UpdateEncryptedTypesFromNigori(nigori); |
- EXPECT_EQ(encrypted_types, cryptographer.GetEncryptedTypes()); |
+ EXPECT_TRUE(encrypted_types.Equals(cryptographer.GetEncryptedTypes())); |
} |
TEST(CryptographerTest, EncryptEverythingExplicit) { |
- ModelTypeSet real_types = syncable::GetAllRealModelTypes(); |
+ ModelEnumSet real_types = syncable::ModelEnumSet::All(); |
sync_pb::NigoriSpecifics specifics; |
specifics.set_encrypt_everything(true); |
@@ -249,28 +253,26 @@ TEST(CryptographerTest, EncryptEverythingExplicit) { |
cryptographer.AddObserver(&observer); |
EXPECT_CALL(observer, |
- OnEncryptedTypesChanged(syncable::GetAllRealModelTypes(), |
- true)); |
+ OnEncryptedTypesChanged( |
+ HasModelTypes(syncable::ModelEnumSet::All()), true)); |
EXPECT_FALSE(cryptographer.encrypt_everything()); |
- ModelTypeSet encrypted_types = cryptographer.GetEncryptedTypes(); |
- for (ModelTypeSet::iterator iter = real_types.begin(); |
- iter != real_types.end(); |
- ++iter) { |
- if (*iter == syncable::PASSWORDS || *iter == syncable::NIGORI) |
- EXPECT_EQ(1U, encrypted_types.count(*iter)); |
+ ModelEnumSet encrypted_types = cryptographer.GetEncryptedTypes(); |
+ for (ModelEnumSet::Iterator iter = real_types.First(); |
+ iter.Good(); iter.Inc()) { |
+ if (iter.Get() == syncable::PASSWORDS || iter.Get() == syncable::NIGORI) |
+ EXPECT_TRUE(encrypted_types.Has(iter.Get())); |
else |
- EXPECT_EQ(0U, encrypted_types.count(*iter)); |
+ EXPECT_FALSE(encrypted_types.Has(iter.Get())); |
} |
cryptographer.UpdateEncryptedTypesFromNigori(specifics); |
EXPECT_TRUE(cryptographer.encrypt_everything()); |
encrypted_types = cryptographer.GetEncryptedTypes(); |
- for (ModelTypeSet::iterator iter = real_types.begin(); |
- iter != real_types.end(); |
- ++iter) { |
- EXPECT_EQ(1U, encrypted_types.count(*iter)); |
+ for (ModelEnumSet::Iterator iter = real_types.First(); |
+ iter.Good(); iter.Inc()) { |
+ EXPECT_TRUE(encrypted_types.Has(iter.Get())); |
} |
// Shouldn't trigger another notification. |
@@ -280,7 +282,7 @@ TEST(CryptographerTest, EncryptEverythingExplicit) { |
} |
TEST(CryptographerTest, EncryptEverythingImplicit) { |
- ModelTypeSet real_types = syncable::GetAllRealModelTypes(); |
+ ModelEnumSet real_types = syncable::ModelEnumSet::All(); |
sync_pb::NigoriSpecifics specifics; |
specifics.set_encrypt_bookmarks(true); // Non-passwords = encrypt everything |
@@ -289,28 +291,26 @@ TEST(CryptographerTest, EncryptEverythingImplicit) { |
cryptographer.AddObserver(&observer); |
EXPECT_CALL(observer, |
- OnEncryptedTypesChanged(syncable::GetAllRealModelTypes(), |
- true)); |
+ OnEncryptedTypesChanged( |
+ HasModelTypes(syncable::ModelEnumSet::All()), true)); |
EXPECT_FALSE(cryptographer.encrypt_everything()); |
- ModelTypeSet encrypted_types = cryptographer.GetEncryptedTypes(); |
- for (ModelTypeSet::iterator iter = real_types.begin(); |
- iter != real_types.end(); |
- ++iter) { |
- if (*iter == syncable::PASSWORDS || *iter == syncable::NIGORI) |
- EXPECT_EQ(1U, encrypted_types.count(*iter)); |
+ ModelEnumSet encrypted_types = cryptographer.GetEncryptedTypes(); |
+ for (ModelEnumSet::Iterator iter = real_types.First(); |
+ iter.Good(); iter.Inc()) { |
+ if (iter.Get() == syncable::PASSWORDS || iter.Get() == syncable::NIGORI) |
+ EXPECT_TRUE(encrypted_types.Has(iter.Get())); |
else |
- EXPECT_EQ(0U, encrypted_types.count(*iter)); |
+ EXPECT_FALSE(encrypted_types.Has(iter.Get())); |
} |
cryptographer.UpdateEncryptedTypesFromNigori(specifics); |
EXPECT_TRUE(cryptographer.encrypt_everything()); |
encrypted_types = cryptographer.GetEncryptedTypes(); |
- for (ModelTypeSet::iterator iter = real_types.begin(); |
- iter != real_types.end(); |
- ++iter) { |
- EXPECT_EQ(1U, encrypted_types.count(*iter)); |
+ for (ModelEnumSet::Iterator iter = real_types.First(); |
+ iter.Good(); iter.Inc()) { |
+ EXPECT_TRUE(encrypted_types.Has(iter.Get())); |
} |
// Shouldn't trigger another notification. |
@@ -320,7 +320,7 @@ TEST(CryptographerTest, EncryptEverythingImplicit) { |
} |
TEST(CryptographerTest, UnknownSensitiveTypes) { |
- ModelTypeSet real_types = syncable::GetAllRealModelTypes(); |
+ ModelEnumSet real_types = syncable::ModelEnumSet::All(); |
sync_pb::NigoriSpecifics specifics; |
// Explicitly setting encrypt everything should override logic for implicit |
// encrypt everything. |
@@ -331,38 +331,36 @@ TEST(CryptographerTest, UnknownSensitiveTypes) { |
StrictMock<MockObserver> observer; |
cryptographer.AddObserver(&observer); |
- syncable::ModelTypeSet expected_encrypted_types = |
+ syncable::ModelEnumSet expected_encrypted_types = |
Cryptographer::SensitiveTypes(); |
- expected_encrypted_types.insert(syncable::BOOKMARKS); |
+ expected_encrypted_types.Put(syncable::BOOKMARKS); |
EXPECT_CALL(observer, |
- OnEncryptedTypesChanged(expected_encrypted_types, |
- false)); |
+ OnEncryptedTypesChanged( |
+ HasModelTypes(expected_encrypted_types), false)); |
EXPECT_FALSE(cryptographer.encrypt_everything()); |
- ModelTypeSet encrypted_types = cryptographer.GetEncryptedTypes(); |
- for (ModelTypeSet::iterator iter = real_types.begin(); |
- iter != real_types.end(); |
- ++iter) { |
- if (*iter == syncable::PASSWORDS || *iter == syncable::NIGORI) |
- EXPECT_EQ(1U, encrypted_types.count(*iter)); |
+ ModelEnumSet encrypted_types = cryptographer.GetEncryptedTypes(); |
+ for (ModelEnumSet::Iterator iter = real_types.First(); |
+ iter.Good(); iter.Inc()) { |
+ if (iter.Get() == syncable::PASSWORDS || iter.Get() == syncable::NIGORI) |
+ EXPECT_TRUE(encrypted_types.Has(iter.Get())); |
else |
- EXPECT_EQ(0U, encrypted_types.count(*iter)); |
+ EXPECT_FALSE(encrypted_types.Has(iter.Get())); |
} |
cryptographer.UpdateEncryptedTypesFromNigori(specifics); |
EXPECT_FALSE(cryptographer.encrypt_everything()); |
encrypted_types = cryptographer.GetEncryptedTypes(); |
- for (ModelTypeSet::iterator iter = real_types.begin(); |
- iter != real_types.end(); |
- ++iter) { |
- if (*iter == syncable::PASSWORDS || |
- *iter == syncable::NIGORI || |
- *iter == syncable::BOOKMARKS) |
- EXPECT_EQ(1U, encrypted_types.count(*iter)); |
+ for (ModelEnumSet::Iterator iter = real_types.First(); |
+ iter.Good(); iter.Inc()) { |
+ if (iter.Get() == syncable::PASSWORDS || |
+ iter.Get() == syncable::NIGORI || |
+ iter.Get() == syncable::BOOKMARKS) |
+ EXPECT_TRUE(encrypted_types.Has(iter.Get())); |
else |
- EXPECT_EQ(0U, encrypted_types.count(*iter)); |
+ EXPECT_FALSE(encrypted_types.Has(iter.Get())); |
} |
cryptographer.RemoveObserver(&observer); |