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 3 // found in the LICENSE file. 4 5 #include "chrome/browser/sync/profile_sync_service_mock.h" 6 7 #include "base/prefs/pref_service.h" 8 #include "base/prefs/testing_pref_store.h" 9 #include "chrome/browser/signin/profile_oauth2_token_service_factory.h" 10 #include "chrome/browser/signin/signin_manager_factory.h" 11 #include "chrome/browser/sync/managed_user_signin_manager_wrapper.h" 12 #include "chrome/common/pref_names.h" 13 #include "chrome/common/url_constants.h" 14 #include "chrome/test/base/testing_profile.h" 15 #include "components/signin/core/browser/profile_oauth2_token_service.h" 16 #include "components/signin/core/browser/signin_manager.h" 17 18 ProfileSyncServiceMock::ProfileSyncServiceMock(Profile* profile) 19 : ProfileSyncService( 20 NULL, 21 profile, 22 make_scoped_ptr(new ManagedUserSigninManagerWrapper( 23 profile, 24 SigninManagerFactory::GetForProfile(profile))), 25 ProfileOAuth2TokenServiceFactory::GetForProfile(profile), 26 browser_sync::MANUAL_START) { 27 } 28 29 ProfileSyncServiceMock::~ProfileSyncServiceMock() { 30 } 31 32 // static 33 TestingProfile* ProfileSyncServiceMock::MakeSignedInTestingProfile() { 34 TestingProfile* profile = new TestingProfile(); 35 profile->GetPrefs()->SetString(prefs::kGoogleServicesUsername, "foo"); 36 return profile; 37 } 38 39 // static 40 KeyedService* ProfileSyncServiceMock::BuildMockProfileSyncService( 41 content::BrowserContext* profile) { 42 return new ProfileSyncServiceMock(static_cast<Profile*>(profile)); 43 } 44 45 ScopedVector<browser_sync::DeviceInfo> 46 ProfileSyncServiceMock::GetAllSignedInDevices() const { 47 ScopedVector<browser_sync::DeviceInfo> devices; 48 std::vector<browser_sync::DeviceInfo*>* device_vector = 49 GetAllSignedInDevicesMock(); 50 devices.get() = *device_vector; 51 return devices.Pass(); 52 } 53 54 scoped_ptr<browser_sync::DeviceInfo> 55 ProfileSyncServiceMock::GetLocalDeviceInfo() const { 56 return scoped_ptr<browser_sync::DeviceInfo>(GetLocalDeviceInfoMock()).Pass(); 57 } 58