| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 "base/strings/stringprintf.h" | 5 #include "base/strings/stringprintf.h" |
| 6 #include "base/threading/platform_thread.h" | 6 #include "base/threading/platform_thread.h" |
| 7 #include "base/time/time.h" | 7 #include "base/time/time.h" |
| 8 #include "chrome/browser/signin/profile_oauth2_token_service_factory.h" | 8 #include "chrome/browser/signin/profile_oauth2_token_service_factory.h" |
| 9 #include "chrome/browser/sync/profile_sync_service.h" | 9 #include "chrome/browser/sync/profile_sync_service.h" |
| 10 #include "chrome/browser/sync/test/integration/bookmarks_helper.h" | 10 #include "chrome/browser/sync/test/integration/bookmarks_helper.h" |
| (...skipping 229 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 240 // an invalid_grant error is returned by OAuth2TokenService with an | 240 // an invalid_grant error is returned by OAuth2TokenService with an |
| 241 // HTTP_BAD_REQUEST (400) response code. | 241 // HTTP_BAD_REQUEST (400) response code. |
| 242 IN_PROC_BROWSER_TEST_F(SyncAuthTest, FailInitialSetupWithPersistentError) { | 242 IN_PROC_BROWSER_TEST_F(SyncAuthTest, FailInitialSetupWithPersistentError) { |
| 243 ASSERT_TRUE(SetupClients()); | 243 ASSERT_TRUE(SetupClients()); |
| 244 GetFakeServer()->SetUnauthenticated(); | 244 GetFakeServer()->SetUnauthenticated(); |
| 245 DisableTokenFetchRetries(); | 245 DisableTokenFetchRetries(); |
| 246 SetOAuth2TokenResponse(kInvalidGrantOAuth2Token, | 246 SetOAuth2TokenResponse(kInvalidGrantOAuth2Token, |
| 247 net::HTTP_BAD_REQUEST, | 247 net::HTTP_BAD_REQUEST, |
| 248 net::URLRequestStatus::SUCCESS); | 248 net::URLRequestStatus::SUCCESS); |
| 249 ASSERT_FALSE(GetClient(0)->SetupSync()); | 249 ASSERT_FALSE(GetClient(0)->SetupSync()); |
| 250 ASSERT_FALSE(GetSyncService((0))->SyncActive()); | 250 ASSERT_FALSE(GetSyncService((0))->IsSyncActive()); |
| 251 ASSERT_EQ(GoogleServiceAuthError::INVALID_GAIA_CREDENTIALS, | 251 ASSERT_EQ(GoogleServiceAuthError::INVALID_GAIA_CREDENTIALS, |
| 252 GetSyncService((0))->GetAuthError().state()); | 252 GetSyncService((0))->GetAuthError().state()); |
| 253 } | 253 } |
| 254 | 254 |
| 255 // Verify that ProfileSyncService fails initial sync setup during backend | 255 // Verify that ProfileSyncService fails initial sync setup during backend |
| 256 // initialization, but continues trying to fetch access tokens when | 256 // initialization, but continues trying to fetch access tokens when |
| 257 // OAuth2TokenService receives an HTTP_INTERNAL_SERVER_ERROR (500) response | 257 // OAuth2TokenService receives an HTTP_INTERNAL_SERVER_ERROR (500) response |
| 258 // code. | 258 // code. |
| 259 IN_PROC_BROWSER_TEST_F(SyncAuthTest, RetryInitialSetupWithTransientError) { | 259 IN_PROC_BROWSER_TEST_F(SyncAuthTest, RetryInitialSetupWithTransientError) { |
| 260 ASSERT_TRUE(SetupClients()); | 260 ASSERT_TRUE(SetupClients()); |
| 261 GetFakeServer()->SetUnauthenticated(); | 261 GetFakeServer()->SetUnauthenticated(); |
| 262 DisableTokenFetchRetries(); | 262 DisableTokenFetchRetries(); |
| 263 SetOAuth2TokenResponse(kEmptyOAuth2Token, | 263 SetOAuth2TokenResponse(kEmptyOAuth2Token, |
| 264 net::HTTP_INTERNAL_SERVER_ERROR, | 264 net::HTTP_INTERNAL_SERVER_ERROR, |
| 265 net::URLRequestStatus::SUCCESS); | 265 net::URLRequestStatus::SUCCESS); |
| 266 ASSERT_FALSE(GetClient(0)->SetupSync()); | 266 ASSERT_FALSE(GetClient(0)->SetupSync()); |
| 267 ASSERT_FALSE(GetSyncService((0))->SyncActive()); | 267 ASSERT_FALSE(GetSyncService((0))->IsSyncActive()); |
| 268 ASSERT_TRUE( | 268 ASSERT_TRUE( |
| 269 GetSyncService((0))->IsRetryingAccessTokenFetchForTest()); | 269 GetSyncService((0))->IsRetryingAccessTokenFetchForTest()); |
| 270 } | 270 } |
| 271 | 271 |
| 272 // Verify that ProfileSyncService fetches a new token when an old token expires. | 272 // Verify that ProfileSyncService fetches a new token when an old token expires. |
| 273 IN_PROC_BROWSER_TEST_F(SyncAuthTest, TokenExpiry) { | 273 IN_PROC_BROWSER_TEST_F(SyncAuthTest, TokenExpiry) { |
| 274 // Initial sync succeeds with a short lived OAuth2 Token. | 274 // Initial sync succeeds with a short lived OAuth2 Token. |
| 275 ASSERT_TRUE(SetupClients()); | 275 ASSERT_TRUE(SetupClients()); |
| 276 GetFakeServer()->SetAuthenticated(); | 276 GetFakeServer()->SetAuthenticated(); |
| 277 DisableTokenFetchRetries(); | 277 DisableTokenFetchRetries(); |
| (...skipping 20 matching lines...) Expand all Loading... |
| 298 GetFakeServer()->SetAuthenticated(); | 298 GetFakeServer()->SetAuthenticated(); |
| 299 SetOAuth2TokenResponse(kValidOAuth2Token, | 299 SetOAuth2TokenResponse(kValidOAuth2Token, |
| 300 net::HTTP_OK, | 300 net::HTTP_OK, |
| 301 net::URLRequestStatus::SUCCESS); | 301 net::URLRequestStatus::SUCCESS); |
| 302 | 302 |
| 303 // Verify that the next sync cycle is successful, and uses the new auth token. | 303 // Verify that the next sync cycle is successful, and uses the new auth token. |
| 304 ASSERT_TRUE(AwaitCommitActivityCompletion(GetSyncService((0)))); | 304 ASSERT_TRUE(AwaitCommitActivityCompletion(GetSyncService((0)))); |
| 305 std::string new_token = GetSyncService((0))->GetAccessTokenForTest(); | 305 std::string new_token = GetSyncService((0))->GetAccessTokenForTest(); |
| 306 ASSERT_NE(old_token, new_token); | 306 ASSERT_NE(old_token, new_token); |
| 307 } | 307 } |
| OLD | NEW |