| OLD | NEW |
| 1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "components/sync/engine_impl/syncer.h" | 5 #include "components/sync/engine_impl/syncer.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include <algorithm> | 9 #include <algorithm> |
| 10 #include <limits> | 10 #include <limits> |
| (...skipping 233 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 244 ResetCycle(); | 244 ResetCycle(); |
| 245 | 245 |
| 246 // Pretend we've seen a local change, to make the nudge_tracker look normal. | 246 // Pretend we've seen a local change, to make the nudge_tracker look normal. |
| 247 nudge_tracker_.RecordLocalChange(ModelTypeSet(BOOKMARKS)); | 247 nudge_tracker_.RecordLocalChange(ModelTypeSet(BOOKMARKS)); |
| 248 | 248 |
| 249 return syncer_->NormalSyncShare(context_->GetEnabledTypes(), | 249 return syncer_->NormalSyncShare(context_->GetEnabledTypes(), |
| 250 &nudge_tracker_, cycle_.get()); | 250 &nudge_tracker_, cycle_.get()); |
| 251 } | 251 } |
| 252 | 252 |
| 253 bool SyncShareConfigure() { | 253 bool SyncShareConfigure() { |
| 254 return SyncShareConfigureTypes(context_->GetEnabledTypes()); |
| 255 } |
| 256 |
| 257 bool SyncShareConfigureTypes(ModelTypeSet types) { |
| 254 ResetCycle(); | 258 ResetCycle(); |
| 255 return syncer_->ConfigureSyncShare( | 259 return syncer_->ConfigureSyncShare( |
| 256 context_->GetEnabledTypes(), | 260 types, sync_pb::GetUpdatesCallerInfo::RECONFIGURATION, cycle_.get()); |
| 257 sync_pb::GetUpdatesCallerInfo::RECONFIGURATION, cycle_.get()); | |
| 258 } | 261 } |
| 259 | 262 |
| 260 void SetUp() override { | 263 void SetUp() override { |
| 261 test_user_share_.SetUp(); | 264 test_user_share_.SetUp(); |
| 262 mock_server_ = base::MakeUnique<MockConnectionManager>( | 265 mock_server_ = base::MakeUnique<MockConnectionManager>( |
| 263 directory(), &cancelation_signal_); | 266 directory(), &cancelation_signal_); |
| 264 debug_info_getter_ = base::MakeUnique<MockDebugInfoGetter>(); | 267 debug_info_getter_ = base::MakeUnique<MockDebugInfoGetter>(); |
| 265 workers_.push_back( | 268 workers_.push_back( |
| 266 scoped_refptr<ModelSafeWorker>(new FakeModelWorker(GROUP_PASSIVE))); | 269 scoped_refptr<ModelSafeWorker>(new FakeModelWorker(GROUP_PASSIVE))); |
| 267 std::vector<SyncEngineEventListener*> listeners; | 270 std::vector<SyncEngineEventListener*> listeners; |
| (...skipping 4744 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5012 EXPECT_TRUE(n1.GetIsUnappliedUpdate()); | 5015 EXPECT_TRUE(n1.GetIsUnappliedUpdate()); |
| 5013 | 5016 |
| 5014 // The second node was not downloaded. | 5017 // The second node was not downloaded. |
| 5015 Entry n2(&trans, GET_BY_ID, node2); | 5018 Entry n2(&trans, GET_BY_ID, node2); |
| 5016 EXPECT_FALSE(n2.good()); | 5019 EXPECT_FALSE(n2.good()); |
| 5017 | 5020 |
| 5018 // One update remains undownloaded. | 5021 // One update remains undownloaded. |
| 5019 mock_server_->ClearUpdatesQueue(); | 5022 mock_server_->ClearUpdatesQueue(); |
| 5020 } | 5023 } |
| 5021 | 5024 |
| 5025 // Tests that, after shutdown initiated, if set of types to download includes |
| 5026 // unregistered type, DCHECK doesn't get triggered. |
| 5027 TEST_F(SyncerTest, ConfigureUnregisteredTypesDuringShutdown) { |
| 5028 // Signal that shutdown is initiated. |
| 5029 cancelation_signal_.Signal(); |
| 5030 |
| 5031 // Simulate type being unregistered before configuration by including type |
| 5032 // that isn't registered with ModelTypeRegistry. |
| 5033 SyncShareConfigureTypes(ModelTypeSet(APPS)); |
| 5034 |
| 5035 // No explicit verification, DCHECK shouldn't have been triggered. |
| 5036 } |
| 5037 |
| 5022 TEST_F(SyncerTest, GetKeySuccess) { | 5038 TEST_F(SyncerTest, GetKeySuccess) { |
| 5023 { | 5039 { |
| 5024 syncable::ReadTransaction rtrans(FROM_HERE, directory()); | 5040 syncable::ReadTransaction rtrans(FROM_HERE, directory()); |
| 5025 EXPECT_TRUE(directory()->GetNigoriHandler()->NeedKeystoreKey(&rtrans)); | 5041 EXPECT_TRUE(directory()->GetNigoriHandler()->NeedKeystoreKey(&rtrans)); |
| 5026 } | 5042 } |
| 5027 | 5043 |
| 5028 SyncShareConfigure(); | 5044 SyncShareConfigure(); |
| 5029 | 5045 |
| 5030 EXPECT_EQ(SYNCER_OK, cycle_->status_controller().last_get_key_result()); | 5046 EXPECT_EQ(SYNCER_OK, cycle_->status_controller().last_get_key_result()); |
| 5031 { | 5047 { |
| (...skipping 861 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5893 EXPECT_EQ("xyz", final_monitor_records["xyz"].extension_id); | 5909 EXPECT_EQ("xyz", final_monitor_records["xyz"].extension_id); |
| 5894 EXPECT_EQ(2049U, final_monitor_records["ABC"].bookmark_write_count); | 5910 EXPECT_EQ(2049U, final_monitor_records["ABC"].bookmark_write_count); |
| 5895 EXPECT_EQ(4U, final_monitor_records["xyz"].bookmark_write_count); | 5911 EXPECT_EQ(4U, final_monitor_records["xyz"].bookmark_write_count); |
| 5896 } else { | 5912 } else { |
| 5897 EXPECT_TRUE(final_monitor_records.empty()) | 5913 EXPECT_TRUE(final_monitor_records.empty()) |
| 5898 << "Should not restore records after successful bookmark commit."; | 5914 << "Should not restore records after successful bookmark commit."; |
| 5899 } | 5915 } |
| 5900 } | 5916 } |
| 5901 | 5917 |
| 5902 } // namespace syncer | 5918 } // namespace syncer |
| OLD | NEW |