| 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 901258b85da6a93b2a1f4697185b058d9f142a8c..320221f91be46bd5dc5fc73ad21af97c98beddd3 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"
|
| @@ -64,23 +66,16 @@ class OAuth2TokenServiceTest : public TokenServiceTestHarness {
|
| public:
|
| OAuth2TokenServiceTest()
|
| : request_context_getter_(new net::TestURLRequestContextGetter(
|
| - message_loop_.message_loop_proxy())) {
|
| + BrowserThread::GetMessageLoopProxyForThread(BrowserThread::IO))) {
|
| }
|
|
|
| virtual void SetUp() OVERRIDE {
|
| TokenServiceTestHarness::SetUp();
|
| - io_thread_.reset(new content::TestBrowserThread(content::BrowserThread::IO,
|
| - &message_loop_));
|
| oauth2_service_.reset(
|
| new TestOAuth2TokenService(request_context_getter_.get()));
|
| }
|
|
|
| - virtual void TearDown() OVERRIDE {
|
| - TokenServiceTestHarness::TearDown();
|
| - }
|
| -
|
| protected:
|
| - scoped_ptr<content::TestBrowserThread> io_thread_;
|
| scoped_refptr<net::TestURLRequestContextGetter> request_context_getter_;
|
| net::TestURLFetcherFactory factory_;
|
| scoped_ptr<TestOAuth2TokenService> oauth2_service_;
|
| @@ -90,7 +85,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_);
|
| @@ -100,7 +95,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_);
|
| @@ -118,7 +113,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_);
|
| @@ -147,7 +142,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_);
|
| @@ -164,7 +159,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));
|
| @@ -175,7 +170,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);
|
| @@ -194,7 +189,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);
|
| @@ -209,7 +204,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_);
|
|
|
| @@ -229,7 +224,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);
|
| @@ -244,7 +239,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_);
|
|
|
| @@ -263,7 +258,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);
|
| @@ -283,7 +278,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));
|
| @@ -304,10 +299,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();
|
|
|
| @@ -324,7 +319,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));
|
| @@ -336,7 +331,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_);
|
| @@ -351,7 +346,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.
|
| @@ -362,7 +357,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);
|
| @@ -384,7 +379,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_);
|
|
|
| @@ -400,7 +395,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_);
|
|
|
| @@ -428,7 +423,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_);
|
| @@ -445,7 +440,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));
|
| @@ -457,7 +452,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);
|
|
|