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

Side by Side Diff: chrome/browser/sync/profile_sync_service_preference_unittest.cc

Issue 9749012: [Sync] Have SyncableService's take ownership of their SyncChangeProcessor. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix merge conflict Created 8 years, 9 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 <map> 5 #include <map>
6 #include <string> 6 #include <string>
7 7
8 #include "base/bind.h" 8 #include "base/bind.h"
9 #include "base/bind_helpers.h" 9 #include "base/bind_helpers.h"
10 #include "base/callback.h" 10 #include "base/callback.h"
(...skipping 23 matching lines...) Expand all
34 #include "chrome/common/pref_names.h" 34 #include "chrome/common/pref_names.h"
35 #include "chrome/test/base/testing_pref_service.h" 35 #include "chrome/test/base/testing_pref_service.h"
36 #include "chrome/test/base/testing_profile.h" 36 #include "chrome/test/base/testing_profile.h"
37 #include "sync/protocol/preference_specifics.pb.h" 37 #include "sync/protocol/preference_specifics.pb.h"
38 #include "sync/syncable/model_type.h" 38 #include "sync/syncable/model_type.h"
39 #include "testing/gmock/include/gmock/gmock.h" 39 #include "testing/gmock/include/gmock/gmock.h"
40 #include "testing/gtest/include/gtest/gtest.h" 40 #include "testing/gtest/include/gtest/gtest.h"
41 41
42 using base::JSONReader; 42 using base::JSONReader;
43 using browser_sync::GenericChangeProcessor; 43 using browser_sync::GenericChangeProcessor;
44 using browser_sync::SharedChangeProcessor;
44 using browser_sync::UIDataTypeController; 45 using browser_sync::UIDataTypeController;
45 using browser_sync::SyncBackendHost;
46 using sync_api::ChangeRecord; 46 using sync_api::ChangeRecord;
47 using testing::_; 47 using testing::_;
48 using testing::Invoke; 48 using testing::Invoke;
49 using testing::Return; 49 using testing::Return;
50 50
51 typedef std::map<const std::string, const Value*> PreferenceValues; 51 typedef std::map<const std::string, const Value*> PreferenceValues;
52 52
53 ACTION_P(CreateAndSaveChangeProcessor, change_processor) { 53 ACTION_P(CreateAndSaveChangeProcessor, change_processor) {
54 sync_api::UserShare* user_share = arg0->GetUserShare(); 54 sync_api::UserShare* user_share = arg0->GetUserShare();
55 *change_processor = new GenericChangeProcessor(arg1, arg2, user_share); 55 *change_processor = new GenericChangeProcessor(arg1, arg2, user_share);
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
127 return false; 127 return false;
128 EXPECT_CALL(*factory, GetSyncableServiceForType(syncable::PREFERENCES)). 128 EXPECT_CALL(*factory, GetSyncableServiceForType(syncable::PREFERENCES)).
129 WillOnce(Return(pref_sync_service_->AsWeakPtr())); 129 WillOnce(Return(pref_sync_service_->AsWeakPtr()));
130 130
131 EXPECT_CALL(*factory, CreateDataTypeManager(_, _)). 131 EXPECT_CALL(*factory, CreateDataTypeManager(_, _)).
132 WillOnce(ReturnNewDataTypeManager()); 132 WillOnce(ReturnNewDataTypeManager());
133 dtc_ = new UIDataTypeController(syncable::PREFERENCES, 133 dtc_ = new UIDataTypeController(syncable::PREFERENCES,
134 factory, 134 factory,
135 profile_.get(), 135 profile_.get(),
136 service_.get()); 136 service_.get());
137 EXPECT_CALL(*factory, CreateGenericChangeProcessor(_, _, _)). 137 EXPECT_CALL(*factory, CreateSharedChangeProcessor()).
138 WillOnce(CreateAndSaveChangeProcessor(&change_processor_)); 138 WillOnce(Return(new SharedChangeProcessor()));
139 EXPECT_CALL(*factory, CreateGenericChangeProcessor(_, _, _)).
140 WillOnce(CreateAndSaveChangeProcessor(&change_processor_));
139 service_->RegisterDataTypeController(dtc_); 141 service_->RegisterDataTypeController(dtc_);
140 TokenServiceFactory::GetForProfile(profile_.get())->IssueAuthTokenForTest( 142 TokenServiceFactory::GetForProfile(profile_.get())->IssueAuthTokenForTest(
141 GaiaConstants::kSyncService, "token"); 143 GaiaConstants::kSyncService, "token");
142 144
143 service_->Initialize(); 145 service_->Initialize();
144 MessageLoop::current()->Run(); 146 MessageLoop::current()->Run();
145 return true; 147 return true;
146 } 148 }
147 149
148 const Value& GetPreferenceValue(const std::string& name) { 150 const Value& GetPreferenceValue(const std::string& name) {
(...skipping 419 matching lines...) Expand 10 before | Expand all | Expand 10 after
568 EXPECT_FALSE(pref->IsDefaultValue()); 570 EXPECT_FALSE(pref->IsDefaultValue());
569 // There should be no synced value. 571 // There should be no synced value.
570 EXPECT_TRUE(GetSyncedValue(prefs::kHomePage) == NULL); 572 EXPECT_TRUE(GetSyncedValue(prefs::kHomePage) == NULL);
571 // Switch kHomePage back to unmanaged. 573 // Switch kHomePage back to unmanaged.
572 profile_->GetTestingPrefService()->RemoveManagedPref(prefs::kHomePage); 574 profile_->GetTestingPrefService()->RemoveManagedPref(prefs::kHomePage);
573 // The original value should be picked up. 575 // The original value should be picked up.
574 EXPECT_TRUE(pref->IsDefaultValue()); 576 EXPECT_TRUE(pref->IsDefaultValue());
575 // There should still be no synced value. 577 // There should still be no synced value.
576 EXPECT_TRUE(GetSyncedValue(prefs::kHomePage) == NULL); 578 EXPECT_TRUE(GetSyncedValue(prefs::kHomePage) == NULL);
577 } 579 }
OLDNEW
« no previous file with comments | « chrome/browser/sync/glue/ui_data_type_controller_unittest.cc ('k') | chrome/browser/webdata/autocomplete_syncable_service.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698