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

Unified Diff: sync/internal_api/sync_encryption_handler_impl_unittest.cc

Issue 10878015: [Sync] Move keystore key handling to SyncEncryptionHandlerImpl (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 4 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: sync/internal_api/sync_encryption_handler_impl_unittest.cc
diff --git a/sync/internal_api/sync_encryption_handler_impl_unittest.cc b/sync/internal_api/sync_encryption_handler_impl_unittest.cc
index a10d6d5a9a8f0771d87cc8659426156defba26a9..5dab09419ad2972a7383a9d1b0e4768a827cfcab 100644
--- a/sync/internal_api/sync_encryption_handler_impl_unittest.cc
+++ b/sync/internal_api/sync_encryption_handler_impl_unittest.cc
@@ -40,7 +40,8 @@ class SyncEncryptionHandlerObserverMock
void(PassphraseRequiredReason,
const sync_pb::EncryptedData&)); // NOLINT
MOCK_METHOD0(OnPassphraseAccepted, void()); // NOLINT
- MOCK_METHOD1(OnBootstrapTokenUpdated, void(const std::string&)); // NOLINT
+ MOCK_METHOD2(OnBootstrapTokenUpdated,
+ void(const std::string&, BootstrapTokenType type)); // NOLINT
MOCK_METHOD2(OnEncryptedTypesChanged,
void(ModelTypeSet, bool)); // NOLINT
MOCK_METHOD0(OnEncryptionComplete, void()); // NOLINT
@@ -67,10 +68,10 @@ class SyncEncryptionHandlerImplTest : public ::testing::Test {
protected:
void SetUpEncryption() {
- ReadTransaction trans(FROM_HERE, user_share());
encryption_handler_.reset(
new SyncEncryptionHandlerImpl(user_share(),
- &encryptor_));
+ &encryptor_,
+ std::string(), std::string()));
akalin 2012/08/22 22:09:33 why not ""?
Nicolas Zea 2012/08/22 22:48:59 Done.
encryption_handler_->AddObserver(&observer_);
}
@@ -128,7 +129,8 @@ TEST_F(SyncEncryptionHandlerImplTest, NigoriEncryptionTypes) {
StrictMock<SyncEncryptionHandlerObserverMock> observer2;
SyncEncryptionHandlerImpl handler2(user_share(),
- &encryptor_);
+ &encryptor_,
+ std::string(), std::string());
handler2.AddObserver(&observer2);
// Just set the sensitive types (shouldn't trigger any notifications).
@@ -411,4 +413,25 @@ TEST_F(SyncEncryptionHandlerImplTest, ReceiveOldNigori) {
EXPECT_TRUE(encryption_handler()->EncryptEverythingEnabled());
}
+// Ensure setting the keystore key works, updates the bootstrap token, and
+// doesn't modify the cryptographer.
+TEST_F(SyncEncryptionHandlerImplTest, SetKeystoreUpdatedBoostrapToken) {
+ WriteTransaction trans(FROM_HERE, user_share());
+ EXPECT_CALL(*observer(), OnBootstrapTokenUpdated(_, _)).Times(0);
+ EXPECT_FALSE(encryption_handler()->cryptographer_unsafe()->is_initialized());
+ EXPECT_TRUE(encryption_handler()->NeedKeystoreKey(trans.GetWrappedTrans()));
+ EXPECT_FALSE(encryption_handler()->SetKeystoreKey("",
+ trans.GetWrappedTrans()));
+ EXPECT_TRUE(encryption_handler()->NeedKeystoreKey(trans.GetWrappedTrans()));
+ Mock::VerifyAndClearExpectations(observer());
+
+ std::string valid_key = "keystore_key";
akalin 2012/08/22 22:09:33 const char kValidKey[] = ...
Nicolas Zea 2012/08/22 22:48:59 Done.
+ EXPECT_CALL(*observer(),
+ OnBootstrapTokenUpdated(valid_key, KEYSTORE_BOOTSTRAP_TOKEN));
+ EXPECT_TRUE(encryption_handler()->SetKeystoreKey(valid_key,
+ trans.GetWrappedTrans()));
+ EXPECT_FALSE(encryption_handler()->NeedKeystoreKey(trans.GetWrappedTrans()));
+ EXPECT_FALSE(encryption_handler()->cryptographer_unsafe()->is_initialized());
+}
+
} // namespace syncer

Powered by Google App Engine
This is Rietveld 408576698