Index: sync/engine/apply_updates_command_unittest.cc |
diff --git a/sync/engine/apply_updates_command_unittest.cc b/sync/engine/apply_updates_command_unittest.cc |
index 91fa259e35749decfb65f6eb4e33b836aa4af4fa..5e14c59e4761ef0b2251a47f3c29299c940de5b4 100644 |
--- a/sync/engine/apply_updates_command_unittest.cc |
+++ b/sync/engine/apply_updates_command_unittest.cc |
@@ -65,22 +65,14 @@ class ApplyUpdatesCommandTest : public SyncerCommandTest { |
SyncerCommandTest::SetUp(); |
entry_factory_.reset(new TestEntryFactory(directory())); |
ExpectNoGroupsToChange(apply_updates_command_); |
- |
- syncable::ReadTransaction trans(FROM_HERE, directory()); |
- directory()->GetCryptographer(&trans)->SetNigoriHandler( |
- &fake_encryption_handler_); |
- fake_encryption_handler_.set_cryptographer( |
- directory()->GetCryptographer(&trans)); |
} |
protected: |
DISALLOW_COPY_AND_ASSIGN(ApplyUpdatesCommandTest); |
ApplyUpdatesCommand apply_updates_command_; |
- FakeEncryptor encryptor_; |
TestIdFactory id_factory_; |
scoped_ptr<TestEntryFactory> entry_factory_; |
- FakeSyncEncryptionHandler fake_encryption_handler_; |
}; |
TEST_F(ApplyUpdatesCommandTest, Simple) { |
@@ -466,6 +458,7 @@ TEST_F(ApplyUpdatesCommandTest, UndecryptableData) { |
} |
TEST_F(ApplyUpdatesCommandTest, SomeUndecryptablePassword) { |
+ Cryptographer* cryptographer; |
// Only decryptable password updates should be applied. |
{ |
sync_pb::EntitySpecifics specifics; |
@@ -473,7 +466,7 @@ TEST_F(ApplyUpdatesCommandTest, SomeUndecryptablePassword) { |
data.set_origin("http://example.com/1"); |
{ |
syncable::ReadTransaction trans(FROM_HERE, directory()); |
- Cryptographer* cryptographer = directory()->GetCryptographer(&trans); |
+ cryptographer = directory()->GetCryptographer(&trans); |
KeyParams params = {"localhost", "dummy", "foobar"}; |
cryptographer->AddKey(params); |
@@ -485,15 +478,15 @@ TEST_F(ApplyUpdatesCommandTest, SomeUndecryptablePassword) { |
} |
{ |
// Create a new cryptographer, independent of the one in the session. |
- Cryptographer cryptographer(&encryptor_); |
+ Cryptographer other_cryptographer(cryptographer->encryptor()); |
KeyParams params = {"localhost", "dummy", "bazqux"}; |
- cryptographer.AddKey(params); |
+ other_cryptographer.AddKey(params); |
sync_pb::EntitySpecifics specifics; |
sync_pb::PasswordSpecificsData data; |
data.set_origin("http://example.com/2"); |
- cryptographer.Encrypt(data, |
+ other_cryptographer.Encrypt(data, |
specifics.mutable_password()->mutable_encrypted()); |
entry_factory_->CreateUnappliedNewItem("item2", specifics, false); |
} |
@@ -532,11 +525,12 @@ TEST_F(ApplyUpdatesCommandTest, NigoriUpdate) { |
{ |
syncable::ReadTransaction trans(FROM_HERE, directory()); |
cryptographer = directory()->GetCryptographer(&trans); |
- EXPECT_TRUE(cryptographer->GetEncryptedTypes().Equals(encrypted_types)); |
+ EXPECT_TRUE(directory()->GetNigoriHandler()->GetEncryptedTypes(&trans) |
+ .Equals(encrypted_types)); |
} |
// Nigori node updates should update the Cryptographer. |
- Cryptographer other_cryptographer(&encryptor_); |
+ Cryptographer other_cryptographer(cryptographer->encryptor()); |
KeyParams params = {"localhost", "dummy", "foobar"}; |
other_cryptographer.AddKey(params); |
@@ -564,7 +558,11 @@ TEST_F(ApplyUpdatesCommandTest, NigoriUpdate) { |
EXPECT_FALSE(cryptographer->is_ready()); |
EXPECT_TRUE(cryptographer->has_pending_keys()); |
- EXPECT_TRUE(cryptographer->GetEncryptedTypes().Equals(ModelTypeSet::All())); |
+ { |
+ syncable::ReadTransaction trans(FROM_HERE, directory()); |
+ EXPECT_TRUE(directory()->GetNigoriHandler()->GetEncryptedTypes(&trans) |
+ .Equals(ModelTypeSet::All())); |
+ } |
} |
TEST_F(ApplyUpdatesCommandTest, NigoriUpdateForDisabledTypes) { |
@@ -577,11 +575,12 @@ TEST_F(ApplyUpdatesCommandTest, NigoriUpdateForDisabledTypes) { |
{ |
syncable::ReadTransaction trans(FROM_HERE, directory()); |
cryptographer = directory()->GetCryptographer(&trans); |
- EXPECT_TRUE(cryptographer->GetEncryptedTypes().Equals(encrypted_types)); |
+ EXPECT_TRUE(directory()->GetNigoriHandler()->GetEncryptedTypes(&trans) |
+ .Equals(encrypted_types)); |
} |
// Nigori node updates should update the Cryptographer. |
- Cryptographer other_cryptographer(&encryptor_); |
+ Cryptographer other_cryptographer(cryptographer->encryptor()); |
KeyParams params = {"localhost", "dummy", "foobar"}; |
other_cryptographer.AddKey(params); |
@@ -609,7 +608,11 @@ TEST_F(ApplyUpdatesCommandTest, NigoriUpdateForDisabledTypes) { |
EXPECT_FALSE(cryptographer->is_ready()); |
EXPECT_TRUE(cryptographer->has_pending_keys()); |
- EXPECT_TRUE(cryptographer->GetEncryptedTypes().Equals(ModelTypeSet::All())); |
+ { |
+ syncable::ReadTransaction trans(FROM_HERE, directory()); |
+ EXPECT_TRUE(directory()->GetNigoriHandler()->GetEncryptedTypes(&trans) |
+ .Equals(ModelTypeSet::All())); |
+ } |
} |
// Create some local unsynced and unencrypted data. Apply a nigori update that |
@@ -627,7 +630,8 @@ TEST_F(ApplyUpdatesCommandTest, EncryptUnsyncedChanges) { |
{ |
syncable::ReadTransaction trans(FROM_HERE, directory()); |
cryptographer = directory()->GetCryptographer(&trans); |
- EXPECT_TRUE(cryptographer->GetEncryptedTypes().Equals(encrypted_types)); |
+ EXPECT_TRUE(directory()->GetNigoriHandler()->GetEncryptedTypes(&trans) |
+ .Equals(encrypted_types)); |
// With default encrypted_types, this should be true. |
EXPECT_TRUE(VerifyUnsyncedChangesAreEncrypted(&trans, encrypted_types)); |
@@ -704,8 +708,8 @@ TEST_F(ApplyUpdatesCommandTest, EncryptUnsyncedChanges) { |
// If ProcessUnsyncedChangesForEncryption worked, all our unsynced changes |
// should be encrypted now. |
- EXPECT_TRUE(ModelTypeSet::All().Equals( |
- cryptographer->GetEncryptedTypes())); |
+ EXPECT_TRUE(directory()->GetNigoriHandler()->GetEncryptedTypes(&trans) |
+ .Equals(ModelTypeSet::All())); |
EXPECT_TRUE(VerifyUnsyncedChangesAreEncrypted(&trans, encrypted_types)); |
Syncer::UnsyncedMetaHandles handles; |
@@ -744,8 +748,8 @@ TEST_F(ApplyUpdatesCommandTest, EncryptUnsyncedChanges) { |
syncable::ReadTransaction trans(FROM_HERE, directory()); |
// All our changes should still be encrypted. |
- EXPECT_TRUE(ModelTypeSet::All().Equals( |
- cryptographer->GetEncryptedTypes())); |
+ EXPECT_TRUE(directory()->GetNigoriHandler()->GetEncryptedTypes(&trans) |
+ .Equals(ModelTypeSet::All())); |
EXPECT_TRUE(VerifyUnsyncedChangesAreEncrypted(&trans, encrypted_types)); |
Syncer::UnsyncedMetaHandles handles; |
@@ -764,7 +768,8 @@ TEST_F(ApplyUpdatesCommandTest, CannotEncryptUnsyncedChanges) { |
{ |
syncable::ReadTransaction trans(FROM_HERE, directory()); |
cryptographer = directory()->GetCryptographer(&trans); |
- EXPECT_TRUE(cryptographer->GetEncryptedTypes().Equals(encrypted_types)); |
+ EXPECT_TRUE(directory()->GetNigoriHandler()->GetEncryptedTypes(&trans) |
+ .Equals(encrypted_types)); |
// With default encrypted_types, this should be true. |
EXPECT_TRUE(VerifyUnsyncedChangesAreEncrypted(&trans, encrypted_types)); |
@@ -798,7 +803,7 @@ TEST_F(ApplyUpdatesCommandTest, CannotEncryptUnsyncedChanges) { |
// We encrypt with new keys, triggering the local cryptographer to be unready |
// and unable to decrypt data (once updated). |
- Cryptographer other_cryptographer(&encryptor_); |
+ Cryptographer other_cryptographer(cryptographer->encryptor()); |
KeyParams params = {"localhost", "dummy", "foobar"}; |
other_cryptographer.AddKey(params); |
sync_pb::EntitySpecifics specifics; |
@@ -844,8 +849,8 @@ TEST_F(ApplyUpdatesCommandTest, CannotEncryptUnsyncedChanges) { |
// Since we have pending keys, we would have failed to encrypt, but the |
// cryptographer should be updated. |
EXPECT_FALSE(VerifyUnsyncedChangesAreEncrypted(&trans, encrypted_types)); |
- EXPECT_TRUE(cryptographer->GetEncryptedTypes().Equals( |
- ModelTypeSet().All())); |
+ EXPECT_TRUE(directory()->GetNigoriHandler()->GetEncryptedTypes(&trans) |
+ .Equals(ModelTypeSet::All())); |
EXPECT_FALSE(cryptographer->is_ready()); |
EXPECT_TRUE(cryptographer->has_pending_keys()); |