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

Side by Side Diff: chrome/browser/extensions/app_notify_channel_setup_unittest.cc

Issue 10185008: Taking over issue 10006037: Moved WebDataService to ProfileKeyedService (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 8 years, 7 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 "base/bind.h" 5 #include "base/bind.h"
6 #include "base/command_line.h" 6 #include "base/command_line.h"
7 #include "base/compiler_specific.h" 7 #include "base/compiler_specific.h"
8 #include "base/memory/weak_ptr.h" 8 #include "base/memory/weak_ptr.h"
9 #include "base/message_loop.h" 9 #include "base/message_loop.h"
10 #include "base/synchronization/waitable_event.h"
10 #include "chrome/browser/extensions/app_notify_channel_setup.h" 11 #include "chrome/browser/extensions/app_notify_channel_setup.h"
11 #include "chrome/browser/extensions/app_notify_channel_ui.h" 12 #include "chrome/browser/extensions/app_notify_channel_ui.h"
12 #include "chrome/browser/signin/token_service_factory.h" 13 #include "chrome/browser/signin/token_service_factory.h"
13 #include "chrome/browser/signin/token_service_unittest.h" 14 #include "chrome/browser/signin/token_service_unittest.h"
14 #include "chrome/common/chrome_switches.h" 15 #include "chrome/common/chrome_switches.h"
15 #include "chrome/common/net/gaia/gaia_urls.h" 16 #include "chrome/common/net/gaia/gaia_urls.h"
16 #include "chrome/common/pref_names.h" 17 #include "chrome/common/pref_names.h"
17 #include "chrome/test/base/testing_pref_service.h" 18 #include "chrome/test/base/testing_pref_service.h"
18 #include "chrome/test/base/testing_profile.h" 19 #include "chrome/test/base/testing_profile.h"
19 #include "content/test/test_browser_thread.h" 20 #include "content/test/test_browser_thread.h"
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after
165 scoped_ptr<bool> setup_result_; 166 scoped_ptr<bool> setup_result_;
166 167
167 DISALLOW_COPY_AND_ASSIGN(TestUI); 168 DISALLOW_COPY_AND_ASSIGN(TestUI);
168 }; 169 };
169 170
170 } // namespace 171 } // namespace
171 172
172 class AppNotifyChannelSetupTest : public testing::Test { 173 class AppNotifyChannelSetupTest : public testing::Test {
173 public: 174 public:
174 AppNotifyChannelSetupTest() : ui_thread_(BrowserThread::UI, &message_loop_), 175 AppNotifyChannelSetupTest() : ui_thread_(BrowserThread::UI, &message_loop_),
176 db_thread_(BrowserThread::DB),
175 ui_(new TestUI()) { 177 ui_(new TestUI()) {
176 } 178 }
177 179
178 virtual ~AppNotifyChannelSetupTest() {} 180 virtual ~AppNotifyChannelSetupTest() {}
179 181
180 virtual void SetLoggedInUser(const std::string username) { 182 virtual void SetLoggedInUser(const std::string username) {
181 TestingPrefService* prefs = profile_.GetTestingPrefService(); 183 TestingPrefService* prefs = profile_.GetTestingPrefService();
182 prefs->SetUserPref(prefs::kGoogleServicesUsername, 184 prefs->SetUserPref(prefs::kGoogleServicesUsername,
183 new StringValue(username)); 185 new StringValue(username));
184 } 186 }
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
226 } 228 }
227 229
228 virtual void RunServerTest(AppNotifyChannelSetup* setup, 230 virtual void RunServerTest(AppNotifyChannelSetup* setup,
229 const std::string& expected_code, 231 const std::string& expected_code,
230 const std::string& expected_error) { 232 const std::string& expected_error) {
231 setup->Start(); 233 setup->Start();
232 message_loop_.Run(); 234 message_loop_.Run();
233 delegate_.ExpectWasCalled(expected_code, expected_error); 235 delegate_.ExpectWasCalled(expected_code, expected_error);
234 } 236 }
235 237
238 virtual void SetUp() OVERRIDE {
239 db_thread_.Start();
240 }
241
242 virtual void TearDown() OVERRIDE {
243 // Schedule another task on the DB thread to notify us that it's safe to
244 // carry on with the test.
245 base::WaitableEvent done(false, false);
246 BrowserThread::PostTask(BrowserThread::DB, FROM_HERE,
247 base::Bind(&base::WaitableEvent::Signal, base::Unretained(&done)));
248 done.Wait();
249 db_thread_.Stop();
250 }
251
236 protected: 252 protected:
237 MessageLoop message_loop_; 253 MessageLoop message_loop_;
238 content::TestBrowserThread ui_thread_; 254 content::TestBrowserThread ui_thread_;
255 content::TestBrowserThread db_thread_;
239 TestProfile profile_; 256 TestProfile profile_;
240 TestDelegate delegate_; 257 TestDelegate delegate_;
241 scoped_ptr<TestUI> ui_; 258 scoped_ptr<TestUI> ui_;
242 FakeURLFetcherFactory factory_; 259 FakeURLFetcherFactory factory_;
243 }; 260 };
244 261
245 TEST_F(AppNotifyChannelSetupTest, LoginFailure) { 262 TEST_F(AppNotifyChannelSetupTest, LoginFailure) {
246 SetupLogin(true, false); 263 SetupLogin(true, false);
247 264
248 scoped_refptr<AppNotifyChannelSetup> setup = CreateInstance(); 265 scoped_refptr<AppNotifyChannelSetup> setup = CreateInstance();
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
292 SetupLogin(false, true); 309 SetupLogin(false, true);
293 SetupFetchAccessToken(false); 310 SetupFetchAccessToken(false);
294 SetupLogin(true, true); 311 SetupLogin(true, true);
295 SetupFetchAccessToken(true); 312 SetupFetchAccessToken(true);
296 SetupRecordGrant(true); 313 SetupRecordGrant(true);
297 SetupGetChannelId(true); 314 SetupGetChannelId(true);
298 315
299 scoped_refptr<AppNotifyChannelSetup> setup = CreateInstance(); 316 scoped_refptr<AppNotifyChannelSetup> setup = CreateInstance();
300 RunServerTest(setup, "dummy_do_not_use", ""); 317 RunServerTest(setup, "dummy_do_not_use", "");
301 } 318 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698