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

Side by Side Diff: chrome/browser/signin/ubertoken_fetcher_unittest.cc

Issue 17127002: Correctly integrate StoragePartition into TestingProfile. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix InstantNTP test. Created 7 years, 5 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 | Annotate | Revision Log
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/signin/ubertoken_fetcher.h" 5 #include "chrome/browser/signin/ubertoken_fetcher.h"
6 6
7 #include "chrome/browser/chrome_notification_types.h" 7 #include "chrome/browser/chrome_notification_types.h"
8 #include "chrome/browser/signin/token_service.h" 8 #include "chrome/browser/signin/token_service.h"
9 #include "chrome/browser/signin/token_service_unittest.h" 9 #include "chrome/browser/signin/token_service_unittest.h"
10 #include "google_apis/gaia/gaia_constants.h" 10 #include "google_apis/gaia/gaia_constants.h"
11 #include "net/url_request/test_url_fetcher_factory.h" 11 #include "net/url_request/test_url_fetcher_factory.h"
12 #include "testing/gtest/include/gtest/gtest.h" 12 #include "testing/gtest/include/gtest/gtest.h"
13 13
14 using content::BrowserThread;
15
16 class MockUbertokenConsumer : public UbertokenConsumer { 14 class MockUbertokenConsumer : public UbertokenConsumer {
17 public: 15 public:
18 MockUbertokenConsumer() 16 MockUbertokenConsumer()
19 : nb_correct_token_(0), 17 : nb_correct_token_(0),
20 last_error_(GoogleServiceAuthError::AuthErrorNone()), 18 last_error_(GoogleServiceAuthError::AuthErrorNone()),
21 nb_error_(0) { 19 nb_error_(0) {
22 } 20 }
23 virtual ~MockUbertokenConsumer() {} 21 virtual ~MockUbertokenConsumer() {}
24 22
25 virtual void OnUbertokenSuccess(const std::string& token) OVERRIDE { 23 virtual void OnUbertokenSuccess(const std::string& token) OVERRIDE {
(...skipping 10 matching lines...) Expand all
36 std::string last_token_; 34 std::string last_token_;
37 int nb_correct_token_; 35 int nb_correct_token_;
38 GoogleServiceAuthError last_error_; 36 GoogleServiceAuthError last_error_;
39 int nb_error_; 37 int nb_error_;
40 }; 38 };
41 39
42 class UbertokenFetcherTest : public TokenServiceTestHarness { 40 class UbertokenFetcherTest : public TokenServiceTestHarness {
43 public: 41 public:
44 virtual void SetUp() OVERRIDE { 42 virtual void SetUp() OVERRIDE {
45 TokenServiceTestHarness::SetUp(); 43 TokenServiceTestHarness::SetUp();
46 service_->UpdateCredentials(credentials_); 44 UpdateCredentialsOnService();
47 fetcher_.reset(new UbertokenFetcher(profile_.get(), &consumer_)); 45 fetcher_.reset(new UbertokenFetcher(profile(), &consumer_));
48 } 46 }
49 47
50 virtual void TearDown() OVERRIDE { 48 virtual void TearDown() OVERRIDE {
51 TokenServiceTestHarness::TearDown(); 49 TokenServiceTestHarness::TearDown();
52 } 50 }
53 51
54 protected: 52 protected:
55 net::TestURLFetcherFactory factory_; 53 net::TestURLFetcherFactory factory_;
56 MockUbertokenConsumer consumer_; 54 MockUbertokenConsumer consumer_;
57 scoped_ptr<UbertokenFetcher> fetcher_; 55 scoped_ptr<UbertokenFetcher> fetcher_;
58 }; 56 };
59 57
60 TEST_F(UbertokenFetcherTest, TestSuccessWithoutRefreshToken) { 58 TEST_F(UbertokenFetcherTest, TestSuccessWithoutRefreshToken) {
61 fetcher_->StartFetchingToken(); 59 fetcher_->StartFetchingToken();
62 TokenService::TokenAvailableDetails 60 TokenService::TokenAvailableDetails
63 details(GaiaConstants::kGaiaOAuth2LoginRefreshToken, "refreshToken"); 61 details(GaiaConstants::kGaiaOAuth2LoginRefreshToken, "refreshToken");
64 service_->IssueAuthTokenForTest(GaiaConstants::kGaiaOAuth2LoginRefreshToken, 62 service()->IssueAuthTokenForTest(GaiaConstants::kGaiaOAuth2LoginRefreshToken,
65 "refreshToken"); 63 "refreshToken");
66 fetcher_->Observe(chrome::NOTIFICATION_TOKEN_AVAILABLE, 64 fetcher_->Observe(chrome::NOTIFICATION_TOKEN_AVAILABLE,
67 content::Source<TokenService>(service_), 65 content::Source<TokenService>(service()),
68 content::Details<const TokenService::TokenAvailableDetails>( 66 content::Details<const TokenService::TokenAvailableDetails>(
69 &details)); 67 &details));
70 fetcher_->OnRefreshTokenResponse("accessToken", 3600); 68 fetcher_->OnRefreshTokenResponse("accessToken", 3600);
71 fetcher_->OnUberAuthTokenSuccess("uberToken"); 69 fetcher_->OnUberAuthTokenSuccess("uberToken");
72 EXPECT_EQ(0, consumer_.nb_error_); 70 EXPECT_EQ(0, consumer_.nb_error_);
73 EXPECT_EQ(1, consumer_.nb_correct_token_); 71 EXPECT_EQ(1, consumer_.nb_correct_token_);
74 EXPECT_EQ("uberToken", consumer_.last_token_); 72 EXPECT_EQ("uberToken", consumer_.last_token_);
75 } 73 }
76 74
77 TEST_F(UbertokenFetcherTest, TestSuccessWithRefreshToken) { 75 TEST_F(UbertokenFetcherTest, TestSuccessWithRefreshToken) {
78 service_->IssueAuthTokenForTest(GaiaConstants::kGaiaOAuth2LoginRefreshToken, 76 service()->IssueAuthTokenForTest(GaiaConstants::kGaiaOAuth2LoginRefreshToken,
79 "refreshToken"); 77 "refreshToken");
80 fetcher_->StartFetchingToken(); 78 fetcher_->StartFetchingToken();
81 fetcher_->OnRefreshTokenResponse("accessToken", 3600); 79 fetcher_->OnRefreshTokenResponse("accessToken", 3600);
82 fetcher_->OnUberAuthTokenSuccess("uberToken"); 80 fetcher_->OnUberAuthTokenSuccess("uberToken");
83 EXPECT_EQ(0, consumer_.nb_error_); 81 EXPECT_EQ(0, consumer_.nb_error_);
84 EXPECT_EQ(1, consumer_.nb_correct_token_); 82 EXPECT_EQ(1, consumer_.nb_correct_token_);
85 EXPECT_EQ("uberToken", consumer_.last_token_); 83 EXPECT_EQ("uberToken", consumer_.last_token_);
86 } 84 }
87 85
88 86
89 TEST_F(UbertokenFetcherTest, TestFailures) { 87 TEST_F(UbertokenFetcherTest, TestFailures) {
90 GoogleServiceAuthError error(GoogleServiceAuthError::USER_NOT_SIGNED_UP); 88 GoogleServiceAuthError error(GoogleServiceAuthError::USER_NOT_SIGNED_UP);
91 EXPECT_EQ(0, consumer_.nb_error_); 89 EXPECT_EQ(0, consumer_.nb_error_);
92 TokenService::TokenRequestFailedDetails 90 TokenService::TokenRequestFailedDetails
93 details(GaiaConstants::kGaiaOAuth2LoginRefreshToken, error); 91 details(GaiaConstants::kGaiaOAuth2LoginRefreshToken, error);
94 fetcher_->Observe( 92 fetcher_->Observe(
95 chrome::NOTIFICATION_TOKEN_REQUEST_FAILED, 93 chrome::NOTIFICATION_TOKEN_REQUEST_FAILED,
96 content::Source<TokenService>(service_), 94 content::Source<TokenService>(service()),
97 content::Details<const TokenService::TokenRequestFailedDetails>( 95 content::Details<const TokenService::TokenRequestFailedDetails>(
98 &details)); 96 &details));
99 EXPECT_EQ(1, consumer_.nb_error_); 97 EXPECT_EQ(1, consumer_.nb_error_);
100 fetcher_->OnOAuthError(); 98 fetcher_->OnOAuthError();
101 EXPECT_EQ(2, consumer_.nb_error_); 99 EXPECT_EQ(2, consumer_.nb_error_);
102 fetcher_->OnNetworkError(401); 100 fetcher_->OnNetworkError(401);
103 EXPECT_EQ(3, consumer_.nb_error_); 101 EXPECT_EQ(3, consumer_.nb_error_);
104 fetcher_->OnUberAuthTokenFailure(error); 102 fetcher_->OnUberAuthTokenFailure(error);
105 EXPECT_EQ(4, consumer_.nb_error_); 103 EXPECT_EQ(4, consumer_.nb_error_);
106 } 104 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698