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

Side by Side Diff: chrome/browser/sync/glue/bookmark_data_type_controller_unittest.cc

Issue 10387144: [Sync] - Implement isolated model association. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: For submitting. Created 8 years, 7 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 "testing/gtest/include/gtest/gtest.h" 5 #include "testing/gtest/include/gtest/gtest.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/bind_helpers.h" 8 #include "base/bind_helpers.h"
9 #include "base/callback.h" 9 #include "base/callback.h"
10 #include "base/memory/scoped_ptr.h" 10 #include "base/memory/scoped_ptr.h"
11 #include "base/message_loop.h" 11 #include "base/message_loop.h"
12 #include "chrome/browser/bookmarks/bookmark_model.h" 12 #include "chrome/browser/bookmarks/bookmark_model.h"
13 #include "chrome/browser/profiles/profile.h" 13 #include "chrome/browser/profiles/profile.h"
14 #include "chrome/browser/sync/glue/bookmark_data_type_controller.h" 14 #include "chrome/browser/sync/glue/bookmark_data_type_controller.h"
15 #include "chrome/browser/sync/glue/change_processor_mock.h" 15 #include "chrome/browser/sync/glue/change_processor_mock.h"
16 #include "chrome/browser/sync/glue/data_type_controller_mock.h" 16 #include "chrome/browser/sync/glue/data_type_controller_mock.h"
17 #include "chrome/browser/sync/glue/model_associator_mock.h" 17 #include "chrome/browser/sync/glue/model_associator_mock.h"
18 #include "chrome/browser/sync/profile_sync_components_factory_mock.h" 18 #include "chrome/browser/sync/profile_sync_components_factory_mock.h"
19 #include "chrome/browser/sync/profile_sync_service_mock.h" 19 #include "chrome/browser/sync/profile_sync_service_mock.h"
20 #include "chrome/common/chrome_notification_types.h" 20 #include "chrome/common/chrome_notification_types.h"
21 #include "chrome/test/base/profile_mock.h" 21 #include "chrome/test/base/profile_mock.h"
22 #include "content/public/browser/notification_service.h" 22 #include "content/public/browser/notification_service.h"
23 #include "content/public/browser/notification_source.h"
24 #include "content/test/test_browser_thread.h" 23 #include "content/test/test_browser_thread.h"
25 #include "sync/api/sync_error.h" 24 #include "sync/api/sync_error.h"
26 #include "testing/gmock/include/gmock/gmock.h" 25 #include "testing/gmock/include/gmock/gmock.h"
27 26
28 using browser_sync::BookmarkDataTypeController; 27 using browser_sync::BookmarkDataTypeController;
29 using browser_sync::ChangeProcessorMock; 28 using browser_sync::ChangeProcessorMock;
30 using browser_sync::DataTypeController; 29 using browser_sync::DataTypeController;
31 using browser_sync::ModelAssociatorMock; 30 using browser_sync::ModelAssociatorMock;
32 using browser_sync::ModelLoadCallbackMock; 31 using browser_sync::ModelLoadCallbackMock;
33 using browser_sync::StartCallbackMock; 32 using browser_sync::StartCallbackMock;
(...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after
200 EXPECT_CALL(bookmark_model_, IsLoaded()).WillRepeatedly(Return(false)); 199 EXPECT_CALL(bookmark_model_, IsLoaded()).WillRepeatedly(Return(false));
201 EXPECT_CALL(*history_service_, BackendLoaded()).WillRepeatedly(Return(false)); 200 EXPECT_CALL(*history_service_, BackendLoaded()).WillRepeatedly(Return(false));
202 201
203 EXPECT_CALL(model_load_callback_, Run(_, _)); 202 EXPECT_CALL(model_load_callback_, Run(_, _));
204 bookmark_dtc_->LoadModels( 203 bookmark_dtc_->LoadModels(
205 base::Bind(&ModelLoadCallbackMock::Run, 204 base::Bind(&ModelLoadCallbackMock::Run,
206 base::Unretained(&model_load_callback_))); 205 base::Unretained(&model_load_callback_)));
207 bookmark_dtc_->LoadModels( 206 bookmark_dtc_->LoadModels(
208 base::Bind(&ModelLoadCallbackMock::Run, 207 base::Bind(&ModelLoadCallbackMock::Run,
209 base::Unretained(&model_load_callback_))); 208 base::Unretained(&model_load_callback_)));
210
211 } 209 }
212 210
213 TEST_F(SyncBookmarkDataTypeControllerTest, StartOk) { 211 TEST_F(SyncBookmarkDataTypeControllerTest, StartOk) {
214 SetStartExpectations(); 212 SetStartExpectations();
215 SetAssociateExpectations(); 213 SetAssociateExpectations();
216 EXPECT_CALL(*model_associator_, SyncModelHasUserCreatedNodes(_)). 214 EXPECT_CALL(*model_associator_, SyncModelHasUserCreatedNodes(_)).
217 WillRepeatedly(DoAll(SetArgumentPointee<0>(true), Return(true))); 215 WillRepeatedly(DoAll(SetArgumentPointee<0>(true), Return(true)));
218 216
219 EXPECT_CALL(start_callback_, Run(DataTypeController::OK, _)); 217 EXPECT_CALL(start_callback_, Run(DataTypeController::OK, _));
220 Start(); 218 Start();
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
255 } 253 }
256 254
257 TEST_F(SyncBookmarkDataTypeControllerTest, StartAborted) { 255 TEST_F(SyncBookmarkDataTypeControllerTest, StartAborted) {
258 EXPECT_CALL(bookmark_model_, IsLoaded()).WillRepeatedly(Return(false)); 256 EXPECT_CALL(bookmark_model_, IsLoaded()).WillRepeatedly(Return(false));
259 EXPECT_CALL(*history_service_, BackendLoaded()).WillRepeatedly(Return(false)); 257 EXPECT_CALL(*history_service_, BackendLoaded()).WillRepeatedly(Return(false));
260 258
261 EXPECT_CALL(model_load_callback_, Run(_, _)); 259 EXPECT_CALL(model_load_callback_, Run(_, _));
262 bookmark_dtc_->LoadModels( 260 bookmark_dtc_->LoadModels(
263 base::Bind(&ModelLoadCallbackMock::Run, 261 base::Bind(&ModelLoadCallbackMock::Run,
264 base::Unretained(&model_load_callback_))); 262 base::Unretained(&model_load_callback_)));
263
265 bookmark_dtc_->Stop(); 264 bookmark_dtc_->Stop();
266 EXPECT_EQ(DataTypeController::NOT_RUNNING, bookmark_dtc_->state()); 265 EXPECT_EQ(DataTypeController::NOT_RUNNING, bookmark_dtc_->state());
267 } 266 }
268 267
269 TEST_F(SyncBookmarkDataTypeControllerTest, Stop) { 268 TEST_F(SyncBookmarkDataTypeControllerTest, Stop) {
270 SetStartExpectations(); 269 SetStartExpectations();
271 SetAssociateExpectations(); 270 SetAssociateExpectations();
272 SetStopExpectations(); 271 SetStopExpectations();
273 272
274 EXPECT_EQ(DataTypeController::NOT_RUNNING, bookmark_dtc_->state()); 273 EXPECT_EQ(DataTypeController::NOT_RUNNING, bookmark_dtc_->state());
(...skipping 14 matching lines...) Expand all
289 WillOnce(InvokeWithoutArgs(bookmark_dtc_.get(), 288 WillOnce(InvokeWithoutArgs(bookmark_dtc_.get(),
290 &BookmarkDataTypeController::Stop)); 289 &BookmarkDataTypeController::Stop));
291 SetStopExpectations(); 290 SetStopExpectations();
292 291
293 EXPECT_CALL(start_callback_, Run(DataTypeController::OK, _)); 292 EXPECT_CALL(start_callback_, Run(DataTypeController::OK, _));
294 Start(); 293 Start();
295 // This should cause bookmark_dtc_->Stop() to be called. 294 // This should cause bookmark_dtc_->Stop() to be called.
296 bookmark_dtc_->OnUnrecoverableError(FROM_HERE, "Test"); 295 bookmark_dtc_->OnUnrecoverableError(FROM_HERE, "Test");
297 PumpLoop(); 296 PumpLoop();
298 } 297 }
OLDNEW
« no previous file with comments | « chrome/browser/sync/backend_migrator_unittest.cc ('k') | chrome/browser/sync/glue/data_type_manager.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698