OLD | NEW |
1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 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 "base/stringprintf.h" | 5 #include "base/stringprintf.h" |
6 #include "chrome/browser/signin/oauth2_token_service.h" | 6 #include "chrome/browser/signin/oauth2_token_service.h" |
7 #include "chrome/browser/signin/oauth2_token_service_factory.h" | 7 #include "chrome/browser/signin/oauth2_token_service_factory.h" |
8 #include "chrome/browser/signin/token_service_factory.h" | 8 #include "chrome/browser/signin/token_service_factory.h" |
9 #include "chrome/browser/signin/token_service_unittest.h" | 9 #include "chrome/browser/signin/token_service_unittest.h" |
10 #include "chrome/common/chrome_notification_types.h" | 10 #include "chrome/common/chrome_notification_types.h" |
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
131 "refreshToken"); | 131 "refreshToken"); |
132 scoped_ptr<OAuth2TokenService::Request> request(oauth2_service_->StartRequest( | 132 scoped_ptr<OAuth2TokenService::Request> request(oauth2_service_->StartRequest( |
133 std::set<std::string>(), &consumer_)); | 133 std::set<std::string>(), &consumer_)); |
134 message_loop_.RunUntilIdle(); | 134 message_loop_.RunUntilIdle(); |
135 | 135 |
136 EXPECT_EQ(0, consumer_.number_of_correct_tokens_); | 136 EXPECT_EQ(0, consumer_.number_of_correct_tokens_); |
137 EXPECT_EQ(0, consumer_.number_of_errors_); | 137 EXPECT_EQ(0, consumer_.number_of_errors_); |
138 net::TestURLFetcher* fetcher = factory_.GetFetcherByID(0); | 138 net::TestURLFetcher* fetcher = factory_.GetFetcherByID(0); |
139 EXPECT_TRUE(fetcher); | 139 EXPECT_TRUE(fetcher); |
140 fetcher->set_response_code(net::HTTP_UNAUTHORIZED); | 140 fetcher->set_response_code(net::HTTP_UNAUTHORIZED); |
141 fetcher->SetResponseString(""); | 141 fetcher->SetResponseString(std::string()); |
142 fetcher->delegate()->OnURLFetchComplete(fetcher); | 142 fetcher->delegate()->OnURLFetchComplete(fetcher); |
143 EXPECT_EQ(0, consumer_.number_of_correct_tokens_); | 143 EXPECT_EQ(0, consumer_.number_of_correct_tokens_); |
144 EXPECT_EQ(1, consumer_.number_of_errors_); | 144 EXPECT_EQ(1, consumer_.number_of_errors_); |
145 EXPECT_EQ(fetcher, factory_.GetFetcherByID(0)); | 145 EXPECT_EQ(fetcher, factory_.GetFetcherByID(0)); |
146 } | 146 } |
147 | 147 |
148 TEST_F(OAuth2TokenServiceTest, SuccessWithoutCaching) { | 148 TEST_F(OAuth2TokenServiceTest, SuccessWithoutCaching) { |
149 service_->IssueAuthTokenForTest(GaiaConstants::kGaiaOAuth2LoginRefreshToken, | 149 service_->IssueAuthTokenForTest(GaiaConstants::kGaiaOAuth2LoginRefreshToken, |
150 "refreshToken"); | 150 "refreshToken"); |
151 scoped_ptr<OAuth2TokenService::Request> request(oauth2_service_->StartRequest( | 151 scoped_ptr<OAuth2TokenService::Request> request(oauth2_service_->StartRequest( |
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
244 scoped_ptr<OAuth2TokenService::Request> request2( | 244 scoped_ptr<OAuth2TokenService::Request> request2( |
245 oauth2_service_->StartRequest(std::set<std::string>(), &consumer_)); | 245 oauth2_service_->StartRequest(std::set<std::string>(), &consumer_)); |
246 message_loop_.RunUntilIdle(); | 246 message_loop_.RunUntilIdle(); |
247 EXPECT_EQ(1, consumer_.number_of_correct_tokens_); | 247 EXPECT_EQ(1, consumer_.number_of_correct_tokens_); |
248 EXPECT_EQ(0, consumer_.number_of_errors_); | 248 EXPECT_EQ(0, consumer_.number_of_errors_); |
249 | 249 |
250 // Network failure. | 250 // Network failure. |
251 fetcher = factory_.GetFetcherByID(0); | 251 fetcher = factory_.GetFetcherByID(0); |
252 EXPECT_TRUE(fetcher); | 252 EXPECT_TRUE(fetcher); |
253 fetcher->set_response_code(net::HTTP_UNAUTHORIZED); | 253 fetcher->set_response_code(net::HTTP_UNAUTHORIZED); |
254 fetcher->SetResponseString(""); | 254 fetcher->SetResponseString(std::string()); |
255 fetcher->delegate()->OnURLFetchComplete(fetcher); | 255 fetcher->delegate()->OnURLFetchComplete(fetcher); |
256 EXPECT_EQ(1, consumer_.number_of_correct_tokens_); | 256 EXPECT_EQ(1, consumer_.number_of_correct_tokens_); |
257 EXPECT_EQ(1, consumer_.number_of_errors_); | 257 EXPECT_EQ(1, consumer_.number_of_errors_); |
258 } | 258 } |
259 | 259 |
260 TEST_F(OAuth2TokenServiceTest, SuccessAndExpirationAndSuccess) { | 260 TEST_F(OAuth2TokenServiceTest, SuccessAndExpirationAndSuccess) { |
261 service_->IssueAuthTokenForTest(GaiaConstants::kGaiaOAuth2LoginRefreshToken, | 261 service_->IssueAuthTokenForTest(GaiaConstants::kGaiaOAuth2LoginRefreshToken, |
262 "refreshToken"); | 262 "refreshToken"); |
263 | 263 |
264 // First request. | 264 // First request. |
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
367 net::TestURLFetcher* fetcher = factory_.GetFetcherByID(0); | 367 net::TestURLFetcher* fetcher = factory_.GetFetcherByID(0); |
368 fetcher->set_response_code(net::HTTP_OK); | 368 fetcher->set_response_code(net::HTTP_OK); |
369 fetcher->SetResponseString(GetValidTokenResponse("token", 3600)); | 369 fetcher->SetResponseString(GetValidTokenResponse("token", 3600)); |
370 fetcher->delegate()->OnURLFetchComplete(fetcher); | 370 fetcher->delegate()->OnURLFetchComplete(fetcher); |
371 EXPECT_EQ(1, consumer_.number_of_correct_tokens_); | 371 EXPECT_EQ(1, consumer_.number_of_correct_tokens_); |
372 EXPECT_EQ(0, consumer_.number_of_errors_); | 372 EXPECT_EQ(0, consumer_.number_of_errors_); |
373 EXPECT_EQ("token", consumer_.last_token_); | 373 EXPECT_EQ("token", consumer_.last_token_); |
374 | 374 |
375 // Signs out | 375 // Signs out |
376 service_->IssueAuthTokenForTest(GaiaConstants::kGaiaOAuth2LoginRefreshToken, | 376 service_->IssueAuthTokenForTest(GaiaConstants::kGaiaOAuth2LoginRefreshToken, |
377 ""); | 377 std::string()); |
378 service_->EraseTokensFromDB(); | 378 service_->EraseTokensFromDB(); |
379 | 379 |
380 request = oauth2_service_->StartRequest(std::set<std::string>(), &consumer_); | 380 request = oauth2_service_->StartRequest(std::set<std::string>(), &consumer_); |
381 message_loop_.RunUntilIdle(); | 381 message_loop_.RunUntilIdle(); |
382 EXPECT_EQ(fetcher, factory_.GetFetcherByID(0)); | 382 EXPECT_EQ(fetcher, factory_.GetFetcherByID(0)); |
383 EXPECT_EQ(1, consumer_.number_of_correct_tokens_); | 383 EXPECT_EQ(1, consumer_.number_of_correct_tokens_); |
384 EXPECT_EQ(1, consumer_.number_of_errors_); | 384 EXPECT_EQ(1, consumer_.number_of_errors_); |
385 } | 385 } |
386 | 386 |
387 TEST_F(OAuth2TokenServiceTest, SuccessAndSignOutAndSignInAndSuccess) { | 387 TEST_F(OAuth2TokenServiceTest, SuccessAndSignOutAndSignInAndSuccess) { |
388 service_->IssueAuthTokenForTest(GaiaConstants::kGaiaOAuth2LoginRefreshToken, | 388 service_->IssueAuthTokenForTest(GaiaConstants::kGaiaOAuth2LoginRefreshToken, |
389 "refreshToken"); | 389 "refreshToken"); |
390 std::set<std::string> scopes; | 390 std::set<std::string> scopes; |
391 scopes.insert("s1"); | 391 scopes.insert("s1"); |
392 scopes.insert("s2"); | 392 scopes.insert("s2"); |
393 | 393 |
394 scoped_ptr<OAuth2TokenService::Request> request(oauth2_service_->StartRequest( | 394 scoped_ptr<OAuth2TokenService::Request> request(oauth2_service_->StartRequest( |
395 scopes, &consumer_)); | 395 scopes, &consumer_)); |
396 message_loop_.RunUntilIdle(); | 396 message_loop_.RunUntilIdle(); |
397 net::TestURLFetcher* fetcher = factory_.GetFetcherByID(0); | 397 net::TestURLFetcher* fetcher = factory_.GetFetcherByID(0); |
398 fetcher->set_response_code(net::HTTP_OK); | 398 fetcher->set_response_code(net::HTTP_OK); |
399 fetcher->SetResponseString(GetValidTokenResponse("token", 3600)); | 399 fetcher->SetResponseString(GetValidTokenResponse("token", 3600)); |
400 fetcher->delegate()->OnURLFetchComplete(fetcher); | 400 fetcher->delegate()->OnURLFetchComplete(fetcher); |
401 EXPECT_EQ(1, consumer_.number_of_correct_tokens_); | 401 EXPECT_EQ(1, consumer_.number_of_correct_tokens_); |
402 EXPECT_EQ(0, consumer_.number_of_errors_); | 402 EXPECT_EQ(0, consumer_.number_of_errors_); |
403 EXPECT_EQ("token", consumer_.last_token_); | 403 EXPECT_EQ("token", consumer_.last_token_); |
404 | 404 |
405 // Signs out and signs in | 405 // Signs out and signs in |
406 service_->IssueAuthTokenForTest(GaiaConstants::kGaiaOAuth2LoginRefreshToken, | 406 service_->IssueAuthTokenForTest(GaiaConstants::kGaiaOAuth2LoginRefreshToken, |
407 ""); | 407 std::string()); |
408 service_->EraseTokensFromDB(); | 408 service_->EraseTokensFromDB(); |
409 service_->IssueAuthTokenForTest(GaiaConstants::kGaiaOAuth2LoginRefreshToken, | 409 service_->IssueAuthTokenForTest(GaiaConstants::kGaiaOAuth2LoginRefreshToken, |
410 "refreshToken"); | 410 "refreshToken"); |
411 | 411 |
412 request = oauth2_service_->StartRequest(scopes, &consumer_); | 412 request = oauth2_service_->StartRequest(scopes, &consumer_); |
413 message_loop_.RunUntilIdle(); | 413 message_loop_.RunUntilIdle(); |
414 fetcher = factory_.GetFetcherByID(0); | 414 fetcher = factory_.GetFetcherByID(0); |
415 fetcher->set_response_code(net::HTTP_OK); | 415 fetcher->set_response_code(net::HTTP_OK); |
416 fetcher->SetResponseString(GetValidTokenResponse("another token", 3600)); | 416 fetcher->SetResponseString(GetValidTokenResponse("another token", 3600)); |
417 fetcher->delegate()->OnURLFetchComplete(fetcher); | 417 fetcher->delegate()->OnURLFetchComplete(fetcher); |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
479 RetryingTestingOAuth2TokenServiceConsumer consumer(oauth2_service_); | 479 RetryingTestingOAuth2TokenServiceConsumer consumer(oauth2_service_); |
480 scoped_ptr<OAuth2TokenService::Request> request(oauth2_service_->StartRequest( | 480 scoped_ptr<OAuth2TokenService::Request> request(oauth2_service_->StartRequest( |
481 std::set<std::string>(), &consumer)); | 481 std::set<std::string>(), &consumer)); |
482 message_loop_.RunUntilIdle(); | 482 message_loop_.RunUntilIdle(); |
483 EXPECT_EQ(0, consumer.number_of_correct_tokens_); | 483 EXPECT_EQ(0, consumer.number_of_correct_tokens_); |
484 EXPECT_EQ(0, consumer.number_of_errors_); | 484 EXPECT_EQ(0, consumer.number_of_errors_); |
485 | 485 |
486 net::TestURLFetcher* fetcher = factory_.GetFetcherByID(0); | 486 net::TestURLFetcher* fetcher = factory_.GetFetcherByID(0); |
487 EXPECT_TRUE(fetcher); | 487 EXPECT_TRUE(fetcher); |
488 fetcher->set_response_code(net::HTTP_UNAUTHORIZED); | 488 fetcher->set_response_code(net::HTTP_UNAUTHORIZED); |
489 fetcher->SetResponseString(""); | 489 fetcher->SetResponseString(std::string()); |
490 fetcher->delegate()->OnURLFetchComplete(fetcher); | 490 fetcher->delegate()->OnURLFetchComplete(fetcher); |
491 EXPECT_EQ(0, consumer.number_of_correct_tokens_); | 491 EXPECT_EQ(0, consumer.number_of_correct_tokens_); |
492 EXPECT_EQ(1, consumer.number_of_errors_); | 492 EXPECT_EQ(1, consumer.number_of_errors_); |
493 | 493 |
494 fetcher = factory_.GetFetcherByID(0); | 494 fetcher = factory_.GetFetcherByID(0); |
495 EXPECT_TRUE(fetcher); | 495 EXPECT_TRUE(fetcher); |
496 fetcher->set_response_code(net::HTTP_UNAUTHORIZED); | 496 fetcher->set_response_code(net::HTTP_UNAUTHORIZED); |
497 fetcher->SetResponseString(""); | 497 fetcher->SetResponseString(std::string()); |
498 fetcher->delegate()->OnURLFetchComplete(fetcher); | 498 fetcher->delegate()->OnURLFetchComplete(fetcher); |
499 EXPECT_EQ(0, consumer.number_of_correct_tokens_); | 499 EXPECT_EQ(0, consumer.number_of_correct_tokens_); |
500 EXPECT_EQ(2, consumer.number_of_errors_); | 500 EXPECT_EQ(2, consumer.number_of_errors_); |
501 } | 501 } |
OLD | NEW |