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

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

Issue 15421011: Use OAuth2 token for sync (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Remove token prefetch. Move UMA counters. Fix some tests. Etc. Created 7 years, 6 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
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 "chrome/browser/sync/test_profile_sync_service.h" 5 #include "chrome/browser/sync/test_profile_sync_service.h"
6 6
7 #include "chrome/browser/signin/signin_manager.h" 7 #include "chrome/browser/signin/signin_manager.h"
8 #include "chrome/browser/signin/signin_manager_factory.h" 8 #include "chrome/browser/signin/signin_manager_factory.h"
9 #include "chrome/browser/sync/glue/data_type_controller.h" 9 #include "chrome/browser/sync/glue/data_type_controller.h"
10 #include "chrome/browser/sync/glue/sync_backend_host.h" 10 #include "chrome/browser/sync/glue/sync_backend_host.h"
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
78 // first place, but SyncBackendHost will have created one by now so we must 78 // first place, but SyncBackendHost will have created one by now so we must
79 // free it. Grab the switches to pass on first. 79 // free it. Grab the switches to pass on first.
80 InternalComponentsFactory::Switches factory_switches = 80 InternalComponentsFactory::Switches factory_switches =
81 test_options.internal_components_factory->GetSwitches(); 81 test_options.internal_components_factory->GetSwitches();
82 delete test_options.internal_components_factory; 82 delete test_options.internal_components_factory;
83 83
84 test_options.internal_components_factory = 84 test_options.internal_components_factory =
85 new TestInternalComponentsFactory(factory_switches, storage); 85 new TestInternalComponentsFactory(factory_switches, storage);
86 86
87 SyncBackendHost::InitCore(test_options); 87 SyncBackendHost::InitCore(test_options);
88 if (synchronous_init_) { 88 if (synchronous_init_ && !base::MessageLoop::current()->is_running()) {
89 // The SyncBackend posts a task to the current loop when 89 // The SyncBackend posts a task to the current loop when
90 // initialization completes. 90 // initialization completes.
91 base::MessageLoop::current()->Run(); 91 base::MessageLoop::current()->Run();
92 } 92 }
93 } 93 }
94 94
95 void SyncBackendHostForProfileSyncTest::UpdateCredentials( 95 void SyncBackendHostForProfileSyncTest::UpdateCredentials(
96 const syncer::SyncCredentials& credentials) { 96 const syncer::SyncCredentials& credentials) {
97 // If we had failed the initial download, complete initialization now. 97 // If we had failed the initial download, complete initialization now.
98 if (!initial_download_closure_.is_null()) { 98 if (!initial_download_closure_.is_null()) {
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after
240 return new TestProfileSyncService( 240 return new TestProfileSyncService(
241 factory, profile, signin, ProfileSyncService::AUTO_START, false); 241 factory, profile, signin, ProfileSyncService::AUTO_START, false);
242 } 242 }
243 243
244 ProfileSyncComponentsFactoryMock* 244 ProfileSyncComponentsFactoryMock*
245 TestProfileSyncService::components_factory_mock() { 245 TestProfileSyncService::components_factory_mock() {
246 // We always create a mock factory, see Build* routines. 246 // We always create a mock factory, see Build* routines.
247 return static_cast<ProfileSyncComponentsFactoryMock*>(factory()); 247 return static_cast<ProfileSyncComponentsFactoryMock*>(factory());
248 } 248 }
249 249
250 void TestProfileSyncService::RequestAccessToken() {
251 ProfileSyncService::RequestAccessToken();
252 if (synchronous_backend_initialization_) {
253 base::MessageLoop::current()->Run();
254 }
255 }
256
257 void TestProfileSyncService::OnGetTokenFailure(
258 const OAuth2TokenService::Request* request,
259 const GoogleServiceAuthError& error) {
260 ProfileSyncService::OnGetTokenFailure(request, error);
261 if (synchronous_backend_initialization_) {
262 base::MessageLoop::current()->Quit();
Andrew T Wilson (Slow) 2013/06/04 14:37:32 Should we also add an OnGetTokenSuccess() loop tha
pavely 2013/06/04 20:11:13 In success case TryStart will be called and will r
263 }
264 }
265
266
250 void TestProfileSyncService::OnBackendInitialized( 267 void TestProfileSyncService::OnBackendInitialized(
251 const syncer::WeakHandle<syncer::JsBackend>& backend, 268 const syncer::WeakHandle<syncer::JsBackend>& backend,
252 const syncer::WeakHandle<syncer::DataTypeDebugInfoListener>& 269 const syncer::WeakHandle<syncer::DataTypeDebugInfoListener>&
253 debug_info_listener, 270 debug_info_listener,
254 bool success) { 271 bool success) {
255 ProfileSyncService::OnBackendInitialized(backend, 272 ProfileSyncService::OnBackendInitialized(backend,
256 debug_info_listener, 273 debug_info_listener,
257 success); 274 success);
258 275
259 // TODO(akalin): Figure out a better way to do this. 276 // TODO(akalin): Figure out a better way to do this.
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
292 profile(), 309 profile(),
293 sync_prefs_.AsWeakPtr(), 310 sync_prefs_.AsWeakPtr(),
294 invalidator_storage_.AsWeakPtr(), 311 invalidator_storage_.AsWeakPtr(),
295 id_factory_, 312 id_factory_,
296 callback_, 313 callback_,
297 set_initial_sync_ended_on_init_, 314 set_initial_sync_ended_on_init_,
298 synchronous_backend_initialization_, 315 synchronous_backend_initialization_,
299 fail_initial_download_, 316 fail_initial_download_,
300 storage_option_)); 317 storage_option_));
301 } 318 }
319
320 scoped_ptr<OAuth2TokenService::Request> FakeOAuth2TokenService::StartRequest(
321 const OAuth2TokenService::ScopeSet& scopes,
322 OAuth2TokenService::Consumer* consumer) {
323 // Ensure token in question is cached and never expires. Request will succeed
324 // without network IO.
325 RegisterCacheEntry(GetRefreshToken(), scopes, "access_token",
326 base::Time::Max());
327 return ProfileOAuth2TokenService::StartRequest(scopes, consumer);
328 }
329
330 BrowserContextKeyedService* FakeOAuth2TokenService::BuildTokenService(
331 content::BrowserContext* context) {
332 Profile* profile = static_cast<Profile*>(context);
333
334 FakeOAuth2TokenService* service =
335 new FakeOAuth2TokenService(context->GetRequestContext());
336 service->Initialize(profile);
337 return service;
338 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698