| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 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 "chrome/browser/sync/glue/sync_backend_registrar.h" | 5 #include "chrome/browser/sync/glue/sync_backend_registrar.h" |
| 6 | 6 |
| 7 #include "chrome/browser/sync/glue/change_processor_mock.h" | 7 #include "chrome/browser/sync/glue/change_processor_mock.h" |
| 8 #include "chrome/browser/sync/glue/ui_model_worker.h" | 8 #include "chrome/browser/sync/glue/ui_model_worker.h" |
| 9 #include "chrome/test/base/testing_profile.h" | 9 #include "chrome/test/base/testing_profile.h" |
| 10 #include "content/public/test/test_browser_thread.h" | 10 #include "content/public/test/test_browser_thread.h" |
| (...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 66 | 66 |
| 67 MessageLoop loop_; | 67 MessageLoop loop_; |
| 68 TestUserShare test_user_share_; | 68 TestUserShare test_user_share_; |
| 69 | 69 |
| 70 private: | 70 private: |
| 71 content::TestBrowserThread ui_thread_; | 71 content::TestBrowserThread ui_thread_; |
| 72 }; | 72 }; |
| 73 | 73 |
| 74 TEST_F(SyncBackendRegistrarTest, ConstructorEmpty) { | 74 TEST_F(SyncBackendRegistrarTest, ConstructorEmpty) { |
| 75 TestingProfile profile; | 75 TestingProfile profile; |
| 76 SyncBackendRegistrar registrar(ModelTypeSet(), "test", &profile, &loop_); | 76 SyncBackendRegistrar registrar("test", &profile, &loop_); |
| 77 registrar.SetInitialTypes(ModelTypeSet()); |
| 77 EXPECT_FALSE(registrar.IsNigoriEnabled()); | 78 EXPECT_FALSE(registrar.IsNigoriEnabled()); |
| 78 { | 79 { |
| 79 std::vector<ModelSafeWorker*> workers; | 80 std::vector<ModelSafeWorker*> workers; |
| 80 registrar.GetWorkers(&workers); | 81 registrar.GetWorkers(&workers); |
| 81 EXPECT_EQ(4u, workers.size()); | 82 EXPECT_EQ(4u, workers.size()); |
| 82 } | 83 } |
| 83 ExpectRoutingInfo(®istrar, ModelSafeRoutingInfo()); | 84 ExpectRoutingInfo(®istrar, ModelSafeRoutingInfo()); |
| 84 ExpectHasProcessorsForTypes(registrar, ModelTypeSet()); | 85 ExpectHasProcessorsForTypes(registrar, ModelTypeSet()); |
| 85 registrar.OnSyncerShutdownComplete(); | 86 registrar.OnSyncerShutdownComplete(); |
| 86 registrar.StopOnUIThread(); | 87 registrar.StopOnUIThread(); |
| 87 } | 88 } |
| 88 | 89 |
| 89 TEST_F(SyncBackendRegistrarTest, ConstructorNonEmpty) { | 90 TEST_F(SyncBackendRegistrarTest, ConstructorNonEmpty) { |
| 90 TestingProfile profile; | 91 TestingProfile profile; |
| 91 const ModelTypeSet initial_types(BOOKMARKS, NIGORI, PASSWORDS); | 92 const ModelTypeSet initial_types(BOOKMARKS, NIGORI, PASSWORDS); |
| 92 SyncBackendRegistrar registrar(initial_types, "test", &profile, &loop_); | 93 SyncBackendRegistrar registrar("test", &profile, &loop_); |
| 94 registrar.SetInitialTypes(initial_types); |
| 93 EXPECT_TRUE(registrar.IsNigoriEnabled()); | 95 EXPECT_TRUE(registrar.IsNigoriEnabled()); |
| 94 { | 96 { |
| 95 std::vector<ModelSafeWorker*> workers; | 97 std::vector<ModelSafeWorker*> workers; |
| 96 registrar.GetWorkers(&workers); | 98 registrar.GetWorkers(&workers); |
| 97 EXPECT_EQ(4u, workers.size()); | 99 EXPECT_EQ(4u, workers.size()); |
| 98 } | 100 } |
| 99 { | 101 { |
| 100 ModelSafeRoutingInfo expected_routing_info; | 102 ModelSafeRoutingInfo expected_routing_info; |
| 101 expected_routing_info[BOOKMARKS] = GROUP_PASSIVE; | 103 expected_routing_info[BOOKMARKS] = GROUP_PASSIVE; |
| 102 expected_routing_info[NIGORI] = GROUP_PASSIVE; | 104 expected_routing_info[NIGORI] = GROUP_PASSIVE; |
| 103 // Passwords dropped because of no password store. | 105 // Passwords dropped because of no password store. |
| 104 ExpectRoutingInfo(®istrar, expected_routing_info); | 106 ExpectRoutingInfo(®istrar, expected_routing_info); |
| 105 } | 107 } |
| 106 ExpectHasProcessorsForTypes(registrar, ModelTypeSet()); | 108 ExpectHasProcessorsForTypes(registrar, ModelTypeSet()); |
| 107 registrar.OnSyncerShutdownComplete(); | 109 registrar.OnSyncerShutdownComplete(); |
| 108 registrar.StopOnUIThread(); | 110 registrar.StopOnUIThread(); |
| 109 } | 111 } |
| 110 | 112 |
| 111 TEST_F(SyncBackendRegistrarTest, ConfigureDataTypes) { | 113 TEST_F(SyncBackendRegistrarTest, ConfigureDataTypes) { |
| 112 TestingProfile profile; | 114 TestingProfile profile; |
| 113 SyncBackendRegistrar registrar(ModelTypeSet(), "test", &profile, &loop_); | 115 SyncBackendRegistrar registrar("test", &profile, &loop_); |
| 116 registrar.SetInitialTypes(ModelTypeSet()); |
| 114 | 117 |
| 115 // Add. | 118 // Add. |
| 116 const ModelTypeSet types1(BOOKMARKS, NIGORI, AUTOFILL); | 119 const ModelTypeSet types1(BOOKMARKS, NIGORI, AUTOFILL); |
| 117 EXPECT_TRUE( | 120 EXPECT_TRUE( |
| 118 registrar.ConfigureDataTypes(types1, ModelTypeSet()).Equals(types1)); | 121 registrar.ConfigureDataTypes(types1, ModelTypeSet()).Equals(types1)); |
| 119 { | 122 { |
| 120 ModelSafeRoutingInfo expected_routing_info; | 123 ModelSafeRoutingInfo expected_routing_info; |
| 121 expected_routing_info[BOOKMARKS] = GROUP_PASSIVE; | 124 expected_routing_info[BOOKMARKS] = GROUP_PASSIVE; |
| 122 expected_routing_info[NIGORI] = GROUP_PASSIVE; | 125 expected_routing_info[NIGORI] = GROUP_PASSIVE; |
| 123 expected_routing_info[AUTOFILL] = GROUP_PASSIVE; | 126 expected_routing_info[AUTOFILL] = GROUP_PASSIVE; |
| (...skipping 23 matching lines...) Expand all Loading... |
| 147 | 150 |
| 148 void TriggerChanges(SyncBackendRegistrar* registrar, ModelType type) { | 151 void TriggerChanges(SyncBackendRegistrar* registrar, ModelType type) { |
| 149 registrar->OnChangesApplied(type, NULL, | 152 registrar->OnChangesApplied(type, NULL, |
| 150 sync_api::ImmutableChangeRecordList()); | 153 sync_api::ImmutableChangeRecordList()); |
| 151 registrar->OnChangesComplete(type); | 154 registrar->OnChangesComplete(type); |
| 152 } | 155 } |
| 153 | 156 |
| 154 TEST_F(SyncBackendRegistrarTest, ActivateDeactivateUIDataType) { | 157 TEST_F(SyncBackendRegistrarTest, ActivateDeactivateUIDataType) { |
| 155 InSequence in_sequence; | 158 InSequence in_sequence; |
| 156 TestingProfile profile; | 159 TestingProfile profile; |
| 157 SyncBackendRegistrar registrar(ModelTypeSet(), "test", &profile, &loop_); | 160 SyncBackendRegistrar registrar("test", &profile, &loop_); |
| 161 registrar.SetInitialTypes(ModelTypeSet()); |
| 158 | 162 |
| 159 // Should do nothing. | 163 // Should do nothing. |
| 160 TriggerChanges(®istrar, BOOKMARKS); | 164 TriggerChanges(®istrar, BOOKMARKS); |
| 161 | 165 |
| 162 StrictMock<ChangeProcessorMock> change_processor_mock; | 166 StrictMock<ChangeProcessorMock> change_processor_mock; |
| 163 EXPECT_CALL(change_processor_mock, StartImpl(&profile)); | 167 EXPECT_CALL(change_processor_mock, StartImpl(&profile)); |
| 164 EXPECT_CALL(change_processor_mock, IsRunning()) | 168 EXPECT_CALL(change_processor_mock, IsRunning()) |
| 165 .WillRepeatedly(Return(true)); | 169 .WillRepeatedly(Return(true)); |
| 166 EXPECT_CALL(change_processor_mock, ApplyChangesFromSyncModel(NULL, _)); | 170 EXPECT_CALL(change_processor_mock, ApplyChangesFromSyncModel(NULL, _)); |
| 167 EXPECT_CALL(change_processor_mock, IsRunning()) | 171 EXPECT_CALL(change_processor_mock, IsRunning()) |
| (...skipping 26 matching lines...) Expand all Loading... |
| 194 TriggerChanges(®istrar, BOOKMARKS); | 198 TriggerChanges(®istrar, BOOKMARKS); |
| 195 | 199 |
| 196 registrar.OnSyncerShutdownComplete(); | 200 registrar.OnSyncerShutdownComplete(); |
| 197 registrar.StopOnUIThread(); | 201 registrar.StopOnUIThread(); |
| 198 } | 202 } |
| 199 | 203 |
| 200 TEST_F(SyncBackendRegistrarTest, ActivateDeactivateNonUIDataType) { | 204 TEST_F(SyncBackendRegistrarTest, ActivateDeactivateNonUIDataType) { |
| 201 content::TestBrowserThread db_thread(BrowserThread::DB, &loop_); | 205 content::TestBrowserThread db_thread(BrowserThread::DB, &loop_); |
| 202 InSequence in_sequence; | 206 InSequence in_sequence; |
| 203 TestingProfile profile; | 207 TestingProfile profile; |
| 204 SyncBackendRegistrar registrar(ModelTypeSet(), "test", &profile, &loop_); | 208 SyncBackendRegistrar registrar("test", &profile, &loop_); |
| 209 registrar.SetInitialTypes(ModelTypeSet()); |
| 205 | 210 |
| 206 // Should do nothing. | 211 // Should do nothing. |
| 207 TriggerChanges(®istrar, AUTOFILL); | 212 TriggerChanges(®istrar, AUTOFILL); |
| 208 | 213 |
| 209 StrictMock<ChangeProcessorMock> change_processor_mock; | 214 StrictMock<ChangeProcessorMock> change_processor_mock; |
| 210 EXPECT_CALL(change_processor_mock, StartImpl(&profile)); | 215 EXPECT_CALL(change_processor_mock, StartImpl(&profile)); |
| 211 EXPECT_CALL(change_processor_mock, IsRunning()) | 216 EXPECT_CALL(change_processor_mock, IsRunning()) |
| 212 .WillRepeatedly(Return(true)); | 217 .WillRepeatedly(Return(true)); |
| 213 EXPECT_CALL(change_processor_mock, ApplyChangesFromSyncModel(NULL, _)); | 218 EXPECT_CALL(change_processor_mock, ApplyChangesFromSyncModel(NULL, _)); |
| 214 EXPECT_CALL(change_processor_mock, IsRunning()) | 219 EXPECT_CALL(change_processor_mock, IsRunning()) |
| (...skipping 25 matching lines...) Expand all Loading... |
| 240 // Should do nothing. | 245 // Should do nothing. |
| 241 TriggerChanges(®istrar, AUTOFILL); | 246 TriggerChanges(®istrar, AUTOFILL); |
| 242 | 247 |
| 243 registrar.OnSyncerShutdownComplete(); | 248 registrar.OnSyncerShutdownComplete(); |
| 244 registrar.StopOnUIThread(); | 249 registrar.StopOnUIThread(); |
| 245 } | 250 } |
| 246 | 251 |
| 247 } // namespace | 252 } // namespace |
| 248 | 253 |
| 249 } // namespace browser_sync | 254 } // namespace browser_sync |
| OLD | NEW |