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

Side by Side Diff: ios/chrome/browser/signin/authentication_service_unittest.mm

Issue 2622913002: Simplify registration of a test ChromeBrowserStateManager. (Closed)
Patch Set: Created 3 years, 11 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
OLDNEW
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 <memory> 5 #include <memory>
6 6
7 #include "base/memory/ptr_util.h" 7 #include "base/memory/ptr_util.h"
8 #include "base/run_loop.h" 8 #include "base/run_loop.h"
9 #include "base/strings/sys_string_conversions.h" 9 #include "base/strings/sys_string_conversions.h"
10 #include "components/browser_sync/profile_sync_service_mock.h" 10 #include "components/browser_sync/profile_sync_service_mock.h"
(...skipping 18 matching lines...) Expand all
29 #include "ios/chrome/browser/signin/fake_signin_manager_builder.h" 29 #include "ios/chrome/browser/signin/fake_signin_manager_builder.h"
30 #include "ios/chrome/browser/signin/oauth2_token_service_factory.h" 30 #include "ios/chrome/browser/signin/oauth2_token_service_factory.h"
31 #include "ios/chrome/browser/signin/signin_client_factory.h" 31 #include "ios/chrome/browser/signin/signin_client_factory.h"
32 #include "ios/chrome/browser/signin/signin_client_impl.h" 32 #include "ios/chrome/browser/signin/signin_client_impl.h"
33 #include "ios/chrome/browser/signin/signin_error_controller_factory.h" 33 #include "ios/chrome/browser/signin/signin_error_controller_factory.h"
34 #include "ios/chrome/browser/signin/signin_manager_factory.h" 34 #include "ios/chrome/browser/signin/signin_manager_factory.h"
35 #include "ios/chrome/browser/sync/ios_chrome_profile_sync_service_factory.h" 35 #include "ios/chrome/browser/sync/ios_chrome_profile_sync_service_factory.h"
36 #include "ios/chrome/browser/sync/ios_chrome_profile_sync_test_util.h" 36 #include "ios/chrome/browser/sync/ios_chrome_profile_sync_test_util.h"
37 #include "ios/chrome/browser/sync/sync_setup_service_factory.h" 37 #include "ios/chrome/browser/sync/sync_setup_service_factory.h"
38 #include "ios/chrome/browser/sync/sync_setup_service_mock.h" 38 #include "ios/chrome/browser/sync/sync_setup_service_mock.h"
39 #include "ios/chrome/test/testing_application_context.h" 39 #include "ios/chrome/test/ios_chrome_scoped_testing_chrome_browser_state_manager .h"
40 #include "ios/public/provider/chrome/browser/chrome_browser_provider.h" 40 #include "ios/public/provider/chrome/browser/chrome_browser_provider.h"
41 #import "ios/public/provider/chrome/browser/signin/chrome_identity.h" 41 #import "ios/public/provider/chrome/browser/signin/chrome_identity.h"
42 #import "ios/public/provider/chrome/browser/signin/fake_chrome_identity_service. h" 42 #import "ios/public/provider/chrome/browser/signin/fake_chrome_identity_service. h"
43 #include "ios/web/public/test/test_web_thread_bundle.h" 43 #include "ios/web/public/test/test_web_thread_bundle.h"
44 #include "testing/gtest/include/gtest/gtest.h" 44 #include "testing/gtest/include/gtest/gtest.h"
45 #include "testing/gtest_mac.h" 45 #include "testing/gtest_mac.h"
46 #include "testing/platform_test.h" 46 #include "testing/platform_test.h"
47 #import "third_party/ocmock/OCMock/OCMock.h" 47 #import "third_party/ocmock/OCMock/OCMock.h"
48 48
49 using testing::_; 49 using testing::_;
(...skipping 27 matching lines...) Expand all
77 IOSChromeProfileSyncServiceFactory::GetForBrowserState(browser_state), 77 IOSChromeProfileSyncServiceFactory::GetForBrowserState(browser_state),
78 browser_state->GetPrefs()); 78 browser_state->GetPrefs());
79 } 79 }
80 80
81 } // namespace 81 } // namespace
82 82
83 class AuthenticationServiceTest : public PlatformTest, 83 class AuthenticationServiceTest : public PlatformTest,
84 public OAuth2TokenService::Observer { 84 public OAuth2TokenService::Observer {
85 protected: 85 protected:
86 AuthenticationServiceTest() 86 AuthenticationServiceTest()
87 : browser_state_manager_(base::FilePath()), 87 : scoped_browser_state_manager_(
88 base::MakeUnique<TestChromeBrowserStateManager>(base::FilePath())),
88 refresh_token_available_count_(0) {} 89 refresh_token_available_count_(0) {}
89 90
90 void SetUp() override { 91 void SetUp() override {
91 PlatformTest::SetUp(); 92 PlatformTest::SetUp();
92 93
93 TestingApplicationContext::GetGlobal()->SetChromeBrowserStateManager(
94 &browser_state_manager_);
95
96 identity_service_ = 94 identity_service_ =
97 ios::FakeChromeIdentityService::GetInstanceFromChromeProvider(); 95 ios::FakeChromeIdentityService::GetInstanceFromChromeProvider();
98 identity_service_->AddIdentities(@[ @"foo", @"foo2" ]); 96 identity_service_->AddIdentities(@[ @"foo", @"foo2" ]);
99 identity_ = 97 identity_ =
100 [identity_service_->GetAllIdentitiesSortedForDisplay() objectAtIndex:0]; 98 [identity_service_->GetAllIdentitiesSortedForDisplay() objectAtIndex:0];
101 identity2_ = 99 identity2_ =
102 [identity_service_->GetAllIdentitiesSortedForDisplay() objectAtIndex:1]; 100 [identity_service_->GetAllIdentitiesSortedForDisplay() objectAtIndex:1];
103 101
104 TestChromeBrowserState::Builder builder; 102 TestChromeBrowserState::Builder builder;
105 builder.SetPrefService(CreatePrefService()); 103 builder.SetPrefService(CreatePrefService());
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
137 RegisterBrowserStatePrefs(registry.get()); 135 RegisterBrowserStatePrefs(registry.get());
138 return prefs; 136 return prefs;
139 } 137 }
140 138
141 void TearDown() override { 139 void TearDown() override {
142 OAuth2TokenServiceFactory::GetForBrowserState(browser_state_.get()) 140 OAuth2TokenServiceFactory::GetForBrowserState(browser_state_.get())
143 ->RemoveObserver(this); 141 ->RemoveObserver(this);
144 authentication_service_->Shutdown(); 142 authentication_service_->Shutdown();
145 authentication_service_.reset(); 143 authentication_service_.reset();
146 browser_state_.reset(); 144 browser_state_.reset();
147 TestingApplicationContext::GetGlobal()->SetChromeBrowserStateManager(
148 nullptr);
149 PlatformTest::TearDown(); 145 PlatformTest::TearDown();
150 } 146 }
151 147
152 void SetExpectationsForSignIn() { 148 void SetExpectationsForSignIn() {
153 EXPECT_CALL(*profile_sync_service_mock_, RequestStart()); 149 EXPECT_CALL(*profile_sync_service_mock_, RequestStart());
154 EXPECT_CALL(*sync_setup_service_mock_, PrepareForFirstSyncSetup()); 150 EXPECT_CALL(*sync_setup_service_mock_, PrepareForFirstSyncSetup());
155 } 151 }
156 152
157 void CreateAuthenticationService() { 153 void CreateAuthenticationService() {
158 if (authentication_service_.get()) { 154 if (authentication_service_.get()) {
159 authentication_service_->Shutdown(); 155 authentication_service_->Shutdown();
160 } 156 }
161 authentication_service_.reset(new AuthenticationService( 157 authentication_service_ = base::MakeUnique<AuthenticationService>(
162 browser_state_.get(), 158 browser_state_.get(),
163 OAuth2TokenServiceFactory::GetForBrowserState(browser_state_.get()), 159 OAuth2TokenServiceFactory::GetForBrowserState(browser_state_.get()),
164 SyncSetupServiceFactory::GetForBrowserState(browser_state_.get()))); 160 SyncSetupServiceFactory::GetForBrowserState(browser_state_.get()));
165 authentication_service_->Initialize(); 161 authentication_service_->Initialize();
166 } 162 }
167 163
168 void StoreAccountsInPrefs() { 164 void StoreAccountsInPrefs() {
169 authentication_service_->StoreAccountsInPrefs(); 165 authentication_service_->StoreAccountsInPrefs();
170 } 166 }
171 167
172 void MigrateAccountsStoredInPrefsIfNeeded() { 168 void MigrateAccountsStoredInPrefsIfNeeded() {
173 authentication_service_->MigrateAccountsStoredInPrefsIfNeeded(); 169 authentication_service_->MigrateAccountsStoredInPrefsIfNeeded();
174 } 170 }
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
207 bool HasCachedMDMInfo(ChromeIdentity* identity) { 203 bool HasCachedMDMInfo(ChromeIdentity* identity) {
208 return authentication_service_->cached_mdm_infos_.count( 204 return authentication_service_->cached_mdm_infos_.count(
209 base::SysNSStringToUTF8([identity gaiaID])) > 0; 205 base::SysNSStringToUTF8([identity gaiaID])) > 0;
210 } 206 }
211 207
212 void OnRefreshTokenAvailable(const std::string& account_id) override { 208 void OnRefreshTokenAvailable(const std::string& account_id) override {
213 refresh_token_available_count_++; 209 refresh_token_available_count_++;
214 } 210 }
215 211
216 web::TestWebThreadBundle thread_bundle_; 212 web::TestWebThreadBundle thread_bundle_;
217 TestChromeBrowserStateManager browser_state_manager_; 213 IOSChromeScopedTestingChromeBrowserStateManager scoped_browser_state_manager_;
218
219 std::unique_ptr<TestChromeBrowserState> browser_state_; 214 std::unique_ptr<TestChromeBrowserState> browser_state_;
220 ios::FakeChromeIdentityService* identity_service_; 215 ios::FakeChromeIdentityService* identity_service_;
221 browser_sync::ProfileSyncServiceMock* profile_sync_service_mock_; 216 browser_sync::ProfileSyncServiceMock* profile_sync_service_mock_;
222 SyncSetupServiceMock* sync_setup_service_mock_; 217 SyncSetupServiceMock* sync_setup_service_mock_;
223 SigninManager* signin_manager_; 218 SigninManager* signin_manager_;
224 std::unique_ptr<AuthenticationService> authentication_service_; 219 std::unique_ptr<AuthenticationService> authentication_service_;
225 ChromeIdentity* identity_; 220 ChromeIdentity* identity_;
226 ChromeIdentity* identity2_; 221 ChromeIdentity* identity2_;
227 int refresh_token_available_count_; 222 int refresh_token_available_count_;
228 }; 223 };
(...skipping 511 matching lines...) Expand 10 before | Expand all | Expand 10 after
740 NSDictionary* user_info = [NSDictionary dictionary]; 735 NSDictionary* user_info = [NSDictionary dictionary];
741 SetCachedMDMInfo(identity_, user_info); 736 SetCachedMDMInfo(identity_, user_info);
742 737
743 EXPECT_CALL(*identity_service_, 738 EXPECT_CALL(*identity_service_,
744 HandleMDMNotification(identity_, user_info, _)) 739 HandleMDMNotification(identity_, user_info, _))
745 .WillOnce(Return(true)); 740 .WillOnce(Return(true));
746 741
747 EXPECT_TRUE( 742 EXPECT_TRUE(
748 authentication_service_->ShowMDMErrorDialogForIdentity(identity_)); 743 authentication_service_->ShowMDMErrorDialogForIdentity(identity_));
749 } 744 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698