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

Side by Side Diff: chrome/browser/password_manager/password_store_x_unittest.cc

Issue 14113053: chrome: Use base::MessageLoop. (Part 3) (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase again Created 7 years, 6 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/basictypes.h" 5 #include "base/basictypes.h"
6 #include "base/bind.h" 6 #include "base/bind.h"
7 #include "base/bind_helpers.h" 7 #include "base/bind_helpers.h"
8 #include "base/file_util.h" 8 #include "base/file_util.h"
9 #include "base/files/scoped_temp_dir.h" 9 #include "base/files/scoped_temp_dir.h"
10 #include "base/platform_file.h" 10 #include "base/platform_file.h"
(...skipping 267 matching lines...) Expand 10 before | Expand all | Expand 10 after
278 ASSERT_TRUE(db_thread_.Start()); 278 ASSERT_TRUE(db_thread_.Start());
279 ASSERT_TRUE(temp_dir_.CreateUniqueTempDir()); 279 ASSERT_TRUE(temp_dir_.CreateUniqueTempDir());
280 280
281 profile_.reset(new TestingProfile()); 281 profile_.reset(new TestingProfile());
282 282
283 login_db_.reset(new LoginDatabase()); 283 login_db_.reset(new LoginDatabase());
284 ASSERT_TRUE(login_db_->Init(temp_dir_.path().Append("login_test"))); 284 ASSERT_TRUE(login_db_->Init(temp_dir_.path().Append("login_test")));
285 } 285 }
286 286
287 virtual void TearDown() { 287 virtual void TearDown() {
288 MessageLoop::current()->PostTask(FROM_HERE, MessageLoop::QuitClosure()); 288 base::MessageLoop::current()->PostTask(FROM_HERE,
289 MessageLoop::current()->Run(); 289 base::MessageLoop::QuitClosure());
290 base::MessageLoop::current()->Run();
290 db_thread_.Stop(); 291 db_thread_.Stop();
291 } 292 }
292 293
293 PasswordStoreX::NativeBackend* GetBackend() { 294 PasswordStoreX::NativeBackend* GetBackend() {
294 switch (GetParam()) { 295 switch (GetParam()) {
295 case FAILING_BACKEND: 296 case FAILING_BACKEND:
296 return new FailingBackend(); 297 return new FailingBackend();
297 case WORKING_BACKEND: 298 case WORKING_BACKEND:
298 return new MockBackend(); 299 return new MockBackend();
299 default: 300 default:
300 return NULL; 301 return NULL;
301 } 302 }
302 } 303 }
303 304
304 MessageLoopForUI message_loop_; 305 base::MessageLoopForUI message_loop_;
305 content::TestBrowserThread ui_thread_; 306 content::TestBrowserThread ui_thread_;
306 // PasswordStore, WDS schedule work on this thread. 307 // PasswordStore, WDS schedule work on this thread.
307 content::TestBrowserThread db_thread_; 308 content::TestBrowserThread db_thread_;
308 309
309 scoped_ptr<LoginDatabase> login_db_; 310 scoped_ptr<LoginDatabase> login_db_;
310 scoped_ptr<TestingProfile> profile_; 311 scoped_ptr<TestingProfile> profile_;
311 base::ScopedTempDir temp_dir_; 312 base::ScopedTempDir temp_dir_;
312 }; 313 };
313 314
314 ACTION(STLDeleteElements0) { 315 ACTION(STLDeleteElements0) {
315 STLDeleteContainerPointers(arg0.begin(), arg0.end()); 316 STLDeleteContainerPointers(arg0.begin(), arg0.end());
316 } 317 }
317 318
318 ACTION(QuitUIMessageLoop) { 319 ACTION(QuitUIMessageLoop) {
319 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 320 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
320 MessageLoop::current()->Quit(); 321 base::MessageLoop::current()->Quit();
321 } 322 }
322 323
323 TEST_P(PasswordStoreXTest, Notifications) { 324 TEST_P(PasswordStoreXTest, Notifications) {
324 scoped_refptr<PasswordStoreX> store( 325 scoped_refptr<PasswordStoreX> store(
325 new PasswordStoreX(login_db_.release(), 326 new PasswordStoreX(login_db_.release(),
326 profile_.get(), 327 profile_.get(),
327 GetBackend())); 328 GetBackend()));
328 store->Init(); 329 store->Init();
329 330
330 PasswordFormData form_data = 331 PasswordFormData form_data =
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after
465 ON_CALL(consumer, OnPasswordStoreRequestDone(_, _)) 466 ON_CALL(consumer, OnPasswordStoreRequestDone(_, _))
466 .WillByDefault(QuitUIMessageLoop()); 467 .WillByDefault(QuitUIMessageLoop());
467 468
468 // The autofillable forms should have been migrated to the native backend. 469 // The autofillable forms should have been migrated to the native backend.
469 EXPECT_CALL(consumer, 470 EXPECT_CALL(consumer,
470 OnPasswordStoreRequestDone(_, 471 OnPasswordStoreRequestDone(_,
471 ContainsAllPasswordForms(expected_autofillable))) 472 ContainsAllPasswordForms(expected_autofillable)))
472 .WillOnce(DoAll(WithArg<1>(STLDeleteElements0()), QuitUIMessageLoop())); 473 .WillOnce(DoAll(WithArg<1>(STLDeleteElements0()), QuitUIMessageLoop()));
473 474
474 store->GetAutofillableLogins(&consumer); 475 store->GetAutofillableLogins(&consumer);
475 MessageLoop::current()->Run(); 476 base::MessageLoop::current()->Run();
476 477
477 // The blacklisted forms should have been migrated to the native backend. 478 // The blacklisted forms should have been migrated to the native backend.
478 EXPECT_CALL(consumer, 479 EXPECT_CALL(consumer,
479 OnPasswordStoreRequestDone(_, 480 OnPasswordStoreRequestDone(_,
480 ContainsAllPasswordForms(expected_blacklisted))) 481 ContainsAllPasswordForms(expected_blacklisted)))
481 .WillOnce(DoAll(WithArg<1>(STLDeleteElements0()), QuitUIMessageLoop())); 482 .WillOnce(DoAll(WithArg<1>(STLDeleteElements0()), QuitUIMessageLoop()));
482 483
483 store->GetBlacklistLogins(&consumer); 484 store->GetBlacklistLogins(&consumer);
484 MessageLoop::current()->Run(); 485 base::MessageLoop::current()->Run();
485 486
486 VectorOfForms empty; 487 VectorOfForms empty;
487 MockLoginDatabaseReturn ld_return; 488 MockLoginDatabaseReturn ld_return;
488 489
489 if (GetParam() == WORKING_BACKEND) { 490 if (GetParam() == WORKING_BACKEND) {
490 // No autofillable logins should be left in the login DB. 491 // No autofillable logins should be left in the login DB.
491 EXPECT_CALL(ld_return, 492 EXPECT_CALL(ld_return,
492 OnLoginDatabaseQueryDone(ContainsAllPasswordForms(empty))); 493 OnLoginDatabaseQueryDone(ContainsAllPasswordForms(empty)));
493 } else { 494 } else {
494 // The autofillable logins should still be in the login DB. 495 // The autofillable logins should still be in the login DB.
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
548 549
549 INSTANTIATE_TEST_CASE_P(NoBackend, 550 INSTANTIATE_TEST_CASE_P(NoBackend,
550 PasswordStoreXTest, 551 PasswordStoreXTest,
551 testing::Values(NO_BACKEND)); 552 testing::Values(NO_BACKEND));
552 INSTANTIATE_TEST_CASE_P(FailingBackend, 553 INSTANTIATE_TEST_CASE_P(FailingBackend,
553 PasswordStoreXTest, 554 PasswordStoreXTest,
554 testing::Values(FAILING_BACKEND)); 555 testing::Values(FAILING_BACKEND));
555 INSTANTIATE_TEST_CASE_P(WorkingBackend, 556 INSTANTIATE_TEST_CASE_P(WorkingBackend,
556 PasswordStoreXTest, 557 PasswordStoreXTest,
557 testing::Values(WORKING_BACKEND)); 558 testing::Values(WORKING_BACKEND));
OLDNEW
« no previous file with comments | « chrome/browser/password_manager/password_store_win_unittest.cc ('k') | chrome/browser/plugins/plugin_prefs.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698