Index: sync/util/cryptographer_unittest.cc |
diff --git a/sync/util/cryptographer_unittest.cc b/sync/util/cryptographer_unittest.cc |
index 01190e9865fa1c200a83ac1016be32f670551e66..09fb63fec0662022eb0fd28bad0f703e5d0ba118 100644 |
--- a/sync/util/cryptographer_unittest.cc |
+++ b/sync/util/cryptographer_unittest.cc |
@@ -8,8 +8,6 @@ |
#include "base/memory/scoped_ptr.h" |
#include "base/string_util.h" |
-#include "sync/internal_api/public/base/model_type_test_util.h" |
-#include "sync/protocol/nigori_specifics.pb.h" |
#include "sync/protocol/password_specifics.pb.h" |
#include "sync/test/fake_encryptor.h" |
#include "testing/gmock/include/gmock/gmock.h" |
@@ -20,13 +18,6 @@ namespace syncer { |
namespace { |
using ::testing::_; |
-using ::testing::Mock; |
-using ::testing::StrictMock; |
- |
-class MockObserver : public Cryptographer::Observer { |
- public: |
- MOCK_METHOD2(OnEncryptedTypesChanged, void(ModelTypeSet, bool)); |
-}; |
} // namespace |
@@ -251,167 +242,4 @@ TEST_F(SyncCryptographerTest, BootstrapKeystore) { |
EXPECT_FALSE(cryptographer2.is_initialized()); |
} |
-TEST_F(SyncCryptographerTest, NigoriEncryptionTypes) { |
- Cryptographer cryptographer2(&encryptor_); |
- sync_pb::NigoriSpecifics nigori; |
- |
- StrictMock<MockObserver> observer; |
- cryptographer_.AddObserver(&observer); |
- StrictMock<MockObserver> observer2; |
- cryptographer2.AddObserver(&observer2); |
- |
- // Just set the sensitive types (shouldn't trigger any |
- // notifications). |
- ModelTypeSet encrypted_types(Cryptographer::SensitiveTypes()); |
- cryptographer_.MergeEncryptedTypesForTest(encrypted_types); |
- cryptographer_.UpdateNigoriFromEncryptedTypes(&nigori); |
- cryptographer2.UpdateEncryptedTypesFromNigori(nigori); |
- EXPECT_TRUE(encrypted_types.Equals(cryptographer_.GetEncryptedTypes())); |
- EXPECT_TRUE(encrypted_types.Equals(cryptographer2.GetEncryptedTypes())); |
- |
- Mock::VerifyAndClearExpectations(&observer); |
- Mock::VerifyAndClearExpectations(&observer2); |
- |
- EXPECT_CALL(observer, |
- OnEncryptedTypesChanged( |
- HasModelTypes(ModelTypeSet::All()), false)); |
- EXPECT_CALL(observer2, |
- OnEncryptedTypesChanged( |
- HasModelTypes(ModelTypeSet::All()), false)); |
- |
- // Set all encrypted types |
- encrypted_types = ModelTypeSet::All(); |
- cryptographer_.MergeEncryptedTypesForTest(encrypted_types); |
- cryptographer_.UpdateNigoriFromEncryptedTypes(&nigori); |
- cryptographer2.UpdateEncryptedTypesFromNigori(nigori); |
- 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_TRUE(encrypted_types.Equals(cryptographer_.GetEncryptedTypes())); |
-} |
- |
-TEST_F(SyncCryptographerTest, EncryptEverythingExplicit) { |
- ModelTypeSet real_types = ModelTypeSet::All(); |
- sync_pb::NigoriSpecifics specifics; |
- specifics.set_encrypt_everything(true); |
- |
- StrictMock<MockObserver> observer; |
- cryptographer_.AddObserver(&observer); |
- |
- EXPECT_CALL(observer, |
- OnEncryptedTypesChanged( |
- HasModelTypes(ModelTypeSet::All()), true)); |
- |
- EXPECT_FALSE(cryptographer_.encrypt_everything()); |
- ModelTypeSet encrypted_types = cryptographer_.GetEncryptedTypes(); |
- for (ModelTypeSet::Iterator iter = real_types.First(); |
- iter.Good(); iter.Inc()) { |
- if (iter.Get() == PASSWORDS || iter.Get() == NIGORI) |
- EXPECT_TRUE(encrypted_types.Has(iter.Get())); |
- else |
- 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.First(); |
- iter.Good(); iter.Inc()) { |
- EXPECT_TRUE(encrypted_types.Has(iter.Get())); |
- } |
- |
- // Shouldn't trigger another notification. |
- specifics.set_encrypt_everything(true); |
- |
- cryptographer_.RemoveObserver(&observer); |
-} |
- |
-TEST_F(SyncCryptographerTest, EncryptEverythingImplicit) { |
- ModelTypeSet real_types = ModelTypeSet::All(); |
- sync_pb::NigoriSpecifics specifics; |
- specifics.set_encrypt_bookmarks(true); // Non-passwords = encrypt everything |
- |
- StrictMock<MockObserver> observer; |
- cryptographer_.AddObserver(&observer); |
- |
- EXPECT_CALL(observer, |
- OnEncryptedTypesChanged( |
- HasModelTypes(ModelTypeSet::All()), true)); |
- |
- EXPECT_FALSE(cryptographer_.encrypt_everything()); |
- ModelTypeSet encrypted_types = cryptographer_.GetEncryptedTypes(); |
- for (ModelTypeSet::Iterator iter = real_types.First(); |
- iter.Good(); iter.Inc()) { |
- if (iter.Get() == PASSWORDS || iter.Get() == NIGORI) |
- EXPECT_TRUE(encrypted_types.Has(iter.Get())); |
- else |
- 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.First(); |
- iter.Good(); iter.Inc()) { |
- EXPECT_TRUE(encrypted_types.Has(iter.Get())); |
- } |
- |
- // Shouldn't trigger another notification. |
- specifics.set_encrypt_everything(true); |
- |
- cryptographer_.RemoveObserver(&observer); |
-} |
- |
-TEST_F(SyncCryptographerTest, UnknownSensitiveTypes) { |
- ModelTypeSet real_types = ModelTypeSet::All(); |
- sync_pb::NigoriSpecifics specifics; |
- // Explicitly setting encrypt everything should override logic for implicit |
- // encrypt everything. |
- specifics.set_encrypt_everything(false); |
- specifics.set_encrypt_bookmarks(true); |
- |
- StrictMock<MockObserver> observer; |
- cryptographer_.AddObserver(&observer); |
- |
- ModelTypeSet expected_encrypted_types = Cryptographer::SensitiveTypes(); |
- expected_encrypted_types.Put(BOOKMARKS); |
- |
- EXPECT_CALL(observer, |
- OnEncryptedTypesChanged( |
- HasModelTypes(expected_encrypted_types), false)); |
- |
- EXPECT_FALSE(cryptographer_.encrypt_everything()); |
- ModelTypeSet encrypted_types = cryptographer_.GetEncryptedTypes(); |
- for (ModelTypeSet::Iterator iter = real_types.First(); |
- iter.Good(); iter.Inc()) { |
- if (iter.Get() == PASSWORDS || iter.Get() == NIGORI) |
- EXPECT_TRUE(encrypted_types.Has(iter.Get())); |
- else |
- 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.First(); |
- iter.Good(); iter.Inc()) { |
- if (iter.Get() == PASSWORDS || |
- iter.Get() == NIGORI || |
- iter.Get() == BOOKMARKS) |
- EXPECT_TRUE(encrypted_types.Has(iter.Get())); |
- else |
- EXPECT_FALSE(encrypted_types.Has(iter.Get())); |
- } |
- |
- cryptographer_.RemoveObserver(&observer); |
-} |
- |
} // namespace syncer |