| Index: chrome/browser/signin/oauth2_token_service_unittest.cc
|
| diff --git a/chrome/browser/signin/oauth2_token_service_unittest.cc b/chrome/browser/signin/oauth2_token_service_unittest.cc
|
| index 6859f371833e6f4e2e506d9258fedfedca289bf6..ba68353534dcedd013d8f1cab19804268d9f2d69 100644
|
| --- a/chrome/browser/signin/oauth2_token_service_unittest.cc
|
| +++ b/chrome/browser/signin/oauth2_token_service_unittest.cc
|
| @@ -4,6 +4,7 @@
|
|
|
| #include <string>
|
|
|
| +#include "base/run_loop.h"
|
| #include "base/strings/stringprintf.h"
|
| #include "chrome/browser/chrome_notification_types.h"
|
| #include "chrome/browser/signin/oauth2_token_service.h"
|
| @@ -11,6 +12,7 @@
|
| #include "chrome/browser/signin/token_service_factory.h"
|
| #include "chrome/browser/signin/token_service_unittest.h"
|
| #include "chrome/test/base/testing_browser_process.h"
|
| +#include "content/public/browser/browser_thread.h"
|
| #include "google_apis/gaia/gaia_constants.h"
|
| #include "google_apis/gaia/google_service_auth_error.h"
|
| #include "google_apis/gaia/oauth2_access_token_consumer.h"
|
| @@ -70,19 +72,13 @@ class OAuth2TokenServiceTest : public TokenServiceTestHarness {
|
| public:
|
| virtual void SetUp() OVERRIDE {
|
| TokenServiceTestHarness::SetUp();
|
| - io_thread_.reset(new content::TestBrowserThread(content::BrowserThread::IO,
|
| - &message_loop_));
|
| oauth2_service_.reset(
|
| new TestOAuth2TokenService(new net::TestURLRequestContextGetter(
|
| - message_loop_.message_loop_proxy())));
|
| - }
|
| -
|
| - virtual void TearDown() OVERRIDE {
|
| - TokenServiceTestHarness::TearDown();
|
| + BrowserThread::GetMessageLoopProxyForThread(
|
| + BrowserThread::IO))));
|
| }
|
|
|
| protected:
|
| - scoped_ptr<content::TestBrowserThread> io_thread_;
|
| net::TestURLFetcherFactory factory_;
|
| scoped_ptr<TestOAuth2TokenService> oauth2_service_;
|
| TestingOAuth2TokenServiceConsumer consumer_;
|
| @@ -91,7 +87,7 @@ class OAuth2TokenServiceTest : public TokenServiceTestHarness {
|
| TEST_F(OAuth2TokenServiceTest, NoOAuth2RefreshToken) {
|
| scoped_ptr<OAuth2TokenService::Request> request(
|
| oauth2_service_->StartRequest(std::set<std::string>(), &consumer_));
|
| - message_loop_.RunUntilIdle();
|
| + base::RunLoop().RunUntilIdle();
|
|
|
| EXPECT_EQ(0, consumer_.number_of_successful_tokens_);
|
| EXPECT_EQ(1, consumer_.number_of_errors_);
|
| @@ -101,7 +97,7 @@ TEST_F(OAuth2TokenServiceTest, FailureShouldNotRetry) {
|
| oauth2_service_->set_refresh_token("refreshToken");
|
| scoped_ptr<OAuth2TokenService::Request> request(
|
| oauth2_service_->StartRequest(std::set<std::string>(), &consumer_));
|
| - message_loop_.RunUntilIdle();
|
| + base::RunLoop().RunUntilIdle();
|
|
|
| EXPECT_EQ(0, consumer_.number_of_successful_tokens_);
|
| EXPECT_EQ(0, consumer_.number_of_errors_);
|
| @@ -119,7 +115,7 @@ TEST_F(OAuth2TokenServiceTest, SuccessWithoutCaching) {
|
| oauth2_service_->set_refresh_token("refreshToken");
|
| scoped_ptr<OAuth2TokenService::Request> request(
|
| oauth2_service_->StartRequest(std::set<std::string>(), &consumer_));
|
| - message_loop_.RunUntilIdle();
|
| + base::RunLoop().RunUntilIdle();
|
|
|
| EXPECT_EQ(0, consumer_.number_of_successful_tokens_);
|
| EXPECT_EQ(0, consumer_.number_of_errors_);
|
| @@ -148,7 +144,7 @@ TEST_F(OAuth2TokenServiceTest, SuccessWithCaching) {
|
| // First request.
|
| scoped_ptr<OAuth2TokenService::Request> request(oauth2_service_->StartRequest(
|
| scopes1, &consumer_));
|
| - message_loop_.RunUntilIdle();
|
| + base::RunLoop().RunUntilIdle();
|
|
|
| EXPECT_EQ(0, consumer_.number_of_successful_tokens_);
|
| EXPECT_EQ(0, consumer_.number_of_errors_);
|
| @@ -165,7 +161,7 @@ TEST_F(OAuth2TokenServiceTest, SuccessWithCaching) {
|
| // without needing a network request.
|
| scoped_ptr<OAuth2TokenService::Request> request2(
|
| oauth2_service_->StartRequest(scopes1_same, &consumer_));
|
| - message_loop_.RunUntilIdle();
|
| + base::RunLoop().RunUntilIdle();
|
|
|
| // No new network fetcher.
|
| EXPECT_EQ(fetcher, factory_.GetFetcherByID(0));
|
| @@ -176,7 +172,7 @@ TEST_F(OAuth2TokenServiceTest, SuccessWithCaching) {
|
| // Third request to a new set of scopes, should return another token.
|
| scoped_ptr<OAuth2TokenService::Request> request3(
|
| oauth2_service_->StartRequest(scopes2, &consumer_));
|
| - message_loop_.RunUntilIdle();
|
| + base::RunLoop().RunUntilIdle();
|
| EXPECT_EQ(2, consumer_.number_of_successful_tokens_);
|
| EXPECT_EQ(0, consumer_.number_of_errors_);
|
| fetcher = factory_.GetFetcherByID(0);
|
| @@ -195,7 +191,7 @@ TEST_F(OAuth2TokenServiceTest, SuccessAndExpirationAndFailure) {
|
| // First request.
|
| scoped_ptr<OAuth2TokenService::Request> request(oauth2_service_->StartRequest(
|
| std::set<std::string>(), &consumer_));
|
| - message_loop_.RunUntilIdle();
|
| + base::RunLoop().RunUntilIdle();
|
| EXPECT_EQ(0, consumer_.number_of_successful_tokens_);
|
| EXPECT_EQ(0, consumer_.number_of_errors_);
|
| net::TestURLFetcher* fetcher = factory_.GetFetcherByID(0);
|
| @@ -210,7 +206,7 @@ TEST_F(OAuth2TokenServiceTest, SuccessAndExpirationAndFailure) {
|
| // Second request must try to access the network as the token has expired.
|
| scoped_ptr<OAuth2TokenService::Request> request2(
|
| oauth2_service_->StartRequest(std::set<std::string>(), &consumer_));
|
| - message_loop_.RunUntilIdle();
|
| + base::RunLoop().RunUntilIdle();
|
| EXPECT_EQ(1, consumer_.number_of_successful_tokens_);
|
| EXPECT_EQ(0, consumer_.number_of_errors_);
|
|
|
| @@ -230,7 +226,7 @@ TEST_F(OAuth2TokenServiceTest, SuccessAndExpirationAndSuccess) {
|
| // First request.
|
| scoped_ptr<OAuth2TokenService::Request> request(oauth2_service_->StartRequest(
|
| std::set<std::string>(), &consumer_));
|
| - message_loop_.RunUntilIdle();
|
| + base::RunLoop().RunUntilIdle();
|
| EXPECT_EQ(0, consumer_.number_of_successful_tokens_);
|
| EXPECT_EQ(0, consumer_.number_of_errors_);
|
| net::TestURLFetcher* fetcher = factory_.GetFetcherByID(0);
|
| @@ -245,7 +241,7 @@ TEST_F(OAuth2TokenServiceTest, SuccessAndExpirationAndSuccess) {
|
| // Second request must try to access the network as the token has expired.
|
| scoped_ptr<OAuth2TokenService::Request> request2(
|
| oauth2_service_->StartRequest(std::set<std::string>(), &consumer_));
|
| - message_loop_.RunUntilIdle();
|
| + base::RunLoop().RunUntilIdle();
|
| EXPECT_EQ(1, consumer_.number_of_successful_tokens_);
|
| EXPECT_EQ(0, consumer_.number_of_errors_);
|
|
|
| @@ -264,7 +260,7 @@ TEST_F(OAuth2TokenServiceTest, RequestDeletedBeforeCompletion) {
|
|
|
| scoped_ptr<OAuth2TokenService::Request> request(oauth2_service_->StartRequest(
|
| std::set<std::string>(), &consumer_));
|
| - message_loop_.RunUntilIdle();
|
| + base::RunLoop().RunUntilIdle();
|
| EXPECT_EQ(0, consumer_.number_of_successful_tokens_);
|
| EXPECT_EQ(0, consumer_.number_of_errors_);
|
| net::TestURLFetcher* fetcher = factory_.GetFetcherByID(0);
|
| @@ -284,7 +280,7 @@ TEST_F(OAuth2TokenServiceTest, RequestDeletedAfterCompletion) {
|
|
|
| scoped_ptr<OAuth2TokenService::Request> request(oauth2_service_->StartRequest(
|
| std::set<std::string>(), &consumer_));
|
| - message_loop_.RunUntilIdle();
|
| + base::RunLoop().RunUntilIdle();
|
| net::TestURLFetcher* fetcher = factory_.GetFetcherByID(0);
|
| fetcher->set_response_code(net::HTTP_OK);
|
| fetcher->SetResponseString(GetValidTokenResponse("token", 3600));
|
| @@ -305,10 +301,10 @@ TEST_F(OAuth2TokenServiceTest, MultipleRequestsForTheSameScopesWithOneDeleted) {
|
|
|
| scoped_ptr<OAuth2TokenService::Request> request(oauth2_service_->StartRequest(
|
| std::set<std::string>(), &consumer_));
|
| - message_loop_.RunUntilIdle();
|
| + base::RunLoop().RunUntilIdle();
|
| scoped_ptr<OAuth2TokenService::Request> request2(
|
| oauth2_service_->StartRequest(std::set<std::string>(), &consumer_));
|
| - message_loop_.RunUntilIdle();
|
| + base::RunLoop().RunUntilIdle();
|
|
|
| request.reset();
|
|
|
| @@ -325,7 +321,7 @@ TEST_F(OAuth2TokenServiceTest, ClearedRefreshTokenFailsSubsequentRequests) {
|
| oauth2_service_->set_refresh_token("refreshToken");
|
| scoped_ptr<OAuth2TokenService::Request> request(oauth2_service_->StartRequest(
|
| std::set<std::string>(), &consumer_));
|
| - message_loop_.RunUntilIdle();
|
| + base::RunLoop().RunUntilIdle();
|
| net::TestURLFetcher* fetcher = factory_.GetFetcherByID(0);
|
| fetcher->set_response_code(net::HTTP_OK);
|
| fetcher->SetResponseString(GetValidTokenResponse("token", 3600));
|
| @@ -337,7 +333,7 @@ TEST_F(OAuth2TokenServiceTest, ClearedRefreshTokenFailsSubsequentRequests) {
|
| // The refresh token is no longer available; subsequent requests fail.
|
| oauth2_service_->set_refresh_token("");
|
| request = oauth2_service_->StartRequest(std::set<std::string>(), &consumer_);
|
| - message_loop_.RunUntilIdle();
|
| + base::RunLoop().RunUntilIdle();
|
| EXPECT_EQ(fetcher, factory_.GetFetcherByID(0));
|
| EXPECT_EQ(1, consumer_.number_of_successful_tokens_);
|
| EXPECT_EQ(1, consumer_.number_of_errors_);
|
| @@ -352,7 +348,7 @@ TEST_F(OAuth2TokenServiceTest,
|
|
|
| scoped_ptr<OAuth2TokenService::Request> request(oauth2_service_->StartRequest(
|
| scopes, &consumer_));
|
| - message_loop_.RunUntilIdle();
|
| + base::RunLoop().RunUntilIdle();
|
| net::TestURLFetcher* fetcher1 = factory_.GetFetcherByID(0);
|
|
|
| // Note |request| is still pending when the refresh token changes.
|
| @@ -363,7 +359,7 @@ TEST_F(OAuth2TokenServiceTest,
|
| TestingOAuth2TokenServiceConsumer consumer2;
|
| scoped_ptr<OAuth2TokenService::Request> request2(
|
| oauth2_service_->StartRequest(scopes, &consumer2));
|
| - message_loop_.RunUntilIdle();
|
| + base::RunLoop().RunUntilIdle();
|
|
|
| net::TestURLFetcher* fetcher2 = factory_.GetFetcherByID(0);
|
| fetcher2->set_response_code(net::HTTP_OK);
|
| @@ -385,7 +381,7 @@ TEST_F(OAuth2TokenServiceTest, ServiceShutDownBeforeFetchComplete) {
|
| oauth2_service_->set_refresh_token("refreshToken");
|
| scoped_ptr<OAuth2TokenService::Request> request(oauth2_service_->StartRequest(
|
| std::set<std::string>(), &consumer_));
|
| - message_loop_.RunUntilIdle();
|
| + base::RunLoop().RunUntilIdle();
|
| EXPECT_EQ(0, consumer_.number_of_successful_tokens_);
|
| EXPECT_EQ(0, consumer_.number_of_errors_);
|
|
|
| @@ -401,7 +397,7 @@ TEST_F(OAuth2TokenServiceTest, RetryingConsumer) {
|
| RetryingTestingOAuth2TokenServiceConsumer consumer(oauth2_service_.get());
|
| scoped_ptr<OAuth2TokenService::Request> request(oauth2_service_->StartRequest(
|
| std::set<std::string>(), &consumer));
|
| - message_loop_.RunUntilIdle();
|
| + base::RunLoop().RunUntilIdle();
|
| EXPECT_EQ(0, consumer.number_of_successful_tokens_);
|
| EXPECT_EQ(0, consumer.number_of_errors_);
|
|
|
| @@ -429,7 +425,7 @@ TEST_F(OAuth2TokenServiceTest, InvalidateToken) {
|
| // First request.
|
| scoped_ptr<OAuth2TokenService::Request> request(
|
| oauth2_service_->StartRequest(scopes, &consumer_));
|
| - message_loop_.RunUntilIdle();
|
| + base::RunLoop().RunUntilIdle();
|
|
|
| EXPECT_EQ(0, consumer_.number_of_successful_tokens_);
|
| EXPECT_EQ(0, consumer_.number_of_errors_);
|
| @@ -446,7 +442,7 @@ TEST_F(OAuth2TokenServiceTest, InvalidateToken) {
|
| // request.
|
| scoped_ptr<OAuth2TokenService::Request> request2(
|
| oauth2_service_->StartRequest(scopes, &consumer_));
|
| - message_loop_.RunUntilIdle();
|
| + base::RunLoop().RunUntilIdle();
|
|
|
| // No new network fetcher.
|
| EXPECT_EQ(fetcher, factory_.GetFetcherByID(0));
|
| @@ -458,7 +454,7 @@ TEST_F(OAuth2TokenServiceTest, InvalidateToken) {
|
| oauth2_service_->InvalidateToken(scopes, consumer_.last_token_);
|
| scoped_ptr<OAuth2TokenService::Request> request3(
|
| oauth2_service_->StartRequest(scopes, &consumer_));
|
| - message_loop_.RunUntilIdle();
|
| + base::RunLoop().RunUntilIdle();
|
| EXPECT_EQ(2, consumer_.number_of_successful_tokens_);
|
| EXPECT_EQ(0, consumer_.number_of_errors_);
|
| fetcher = factory_.GetFetcherByID(0);
|
|
|