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

Side by Side Diff: chrome/browser/ui/passwords/manage_passwords_state_unittest.cc

Issue 2900693002: [Password Manager] Convert |pending_login_managers_| to an array of scoped_refptr (Closed)
Patch Set: Rebase Created 3 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
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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/ui/passwords/manage_passwords_state.h" 5 #include "chrome/browser/ui/passwords/manage_passwords_state.h"
6 6
7 #include <iterator> 7 #include <iterator>
8 #include <utility> 8 #include <utility>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
79 autofill::PasswordForm& test_local_federated_form() { 79 autofill::PasswordForm& test_local_federated_form() {
80 return test_local_federated_form_; 80 return test_local_federated_form_;
81 } 81 }
82 std::vector<const autofill::PasswordForm*>& test_stored_forms() { 82 std::vector<const autofill::PasswordForm*>& test_stored_forms() {
83 return test_stored_forms_; 83 return test_stored_forms_;
84 } 84 }
85 ManagePasswordsState& passwords_data() { return passwords_data_; } 85 ManagePasswordsState& passwords_data() { return passwords_data_; }
86 86
87 // Returns a PasswordFormManager containing |test_stored_forms_| as the best 87 // Returns a PasswordFormManager containing |test_stored_forms_| as the best
88 // matches. 88 // matches.
89 std::unique_ptr<password_manager::PasswordFormManager> CreateFormManager(); 89 scoped_refptr<password_manager::PasswordFormManager> CreateFormManager();
90 90
91 // Returns a PasswordFormManager containing test_local_federated_form() as a 91 // Returns a PasswordFormManager containing test_local_federated_form() as a
92 // stored federated credential. 92 // stored federated credential.
93 std::unique_ptr<password_manager::PasswordFormManager> 93 scoped_refptr<password_manager::PasswordFormManager>
94 CreateFormManagerWithFederation(); 94 CreateFormManagerWithFederation();
95 95
96 // Pushes irrelevant updates to |passwords_data_| and checks that they don't 96 // Pushes irrelevant updates to |passwords_data_| and checks that they don't
97 // affect the state. 97 // affect the state.
98 void TestNoisyUpdates(); 98 void TestNoisyUpdates();
99 99
100 // Pushes both relevant and irrelevant updates to |passwords_data_|. 100 // Pushes both relevant and irrelevant updates to |passwords_data_|.
101 void TestAllUpdates(); 101 void TestAllUpdates();
102 102
103 // Pushes a blacklisted form and checks that it doesn't affect the state. 103 // Pushes a blacklisted form and checks that it doesn't affect the state.
104 void TestBlacklistedUpdates(); 104 void TestBlacklistedUpdates();
105 105
106 MOCK_METHOD1(CredentialCallback, void(const autofill::PasswordForm*)); 106 MOCK_METHOD1(CredentialCallback, void(const autofill::PasswordForm*));
107 107
108 private: 108 private:
109 // Implements both CreateFormManager and CreateFormManagerWithFederation. 109 // Implements both CreateFormManager and CreateFormManagerWithFederation.
110 std::unique_ptr<password_manager::PasswordFormManager> 110 scoped_refptr<password_manager::PasswordFormManager>
111 CreateFormManagerInternal(bool include_federated); 111 CreateFormManagerInternal(bool include_federated);
112 112
113 password_manager::StubPasswordManagerClient stub_client_; 113 password_manager::StubPasswordManagerClient stub_client_;
114 password_manager::StubPasswordManagerDriver driver_; 114 password_manager::StubPasswordManagerDriver driver_;
115 password_manager::PasswordManager password_manager_; 115 password_manager::PasswordManager password_manager_;
116 password_manager::FakeFormFetcher fetcher_; 116 password_manager::FakeFormFetcher fetcher_;
117 117
118 ManagePasswordsState passwords_data_; 118 ManagePasswordsState passwords_data_;
119 autofill::PasswordForm test_local_form_; 119 autofill::PasswordForm test_local_form_;
120 autofill::PasswordForm test_psl_form_; 120 autofill::PasswordForm test_psl_form_;
121 autofill::PasswordForm test_submitted_form_; 121 autofill::PasswordForm test_submitted_form_;
122 autofill::PasswordForm test_local_federated_form_; 122 autofill::PasswordForm test_local_federated_form_;
123 std::vector<const autofill::PasswordForm*> test_stored_forms_; 123 std::vector<const autofill::PasswordForm*> test_stored_forms_;
124 }; 124 };
125 125
126 std::unique_ptr<password_manager::PasswordFormManager> 126 scoped_refptr<password_manager::PasswordFormManager>
127 ManagePasswordsStateTest::CreateFormManager() { 127 ManagePasswordsStateTest::CreateFormManager() {
128 return CreateFormManagerInternal(false); 128 return CreateFormManagerInternal(false);
129 } 129 }
130 130
131 std::unique_ptr<password_manager::PasswordFormManager> 131 scoped_refptr<password_manager::PasswordFormManager>
132 ManagePasswordsStateTest::CreateFormManagerWithFederation() { 132 ManagePasswordsStateTest::CreateFormManagerWithFederation() {
133 return CreateFormManagerInternal(true); 133 return CreateFormManagerInternal(true);
134 } 134 }
135 135
136 std::unique_ptr<password_manager::PasswordFormManager> 136 scoped_refptr<password_manager::PasswordFormManager>
137 ManagePasswordsStateTest::CreateFormManagerInternal(bool include_federated) { 137 ManagePasswordsStateTest::CreateFormManagerInternal(bool include_federated) {
138 std::unique_ptr<password_manager::PasswordFormManager> test_form_manager( 138 scoped_refptr<password_manager::PasswordFormManager> test_form_manager(
139 new password_manager::PasswordFormManager( 139 new password_manager::PasswordFormManager(
140 &password_manager_, &stub_client_, driver_.AsWeakPtr(), 140 &password_manager_, &stub_client_, driver_.AsWeakPtr(),
141 test_local_form(), 141 test_local_form(),
142 base::WrapUnique(new password_manager::StubFormSaver), &fetcher_)); 142 base::WrapUnique(new password_manager::StubFormSaver), &fetcher_));
143 fetcher_.SetNonFederated(test_stored_forms_, 0u); 143 fetcher_.SetNonFederated(test_stored_forms_, 0u);
144 if (include_federated) { 144 if (include_federated) {
145 fetcher_.set_federated({&test_local_federated_form()}); 145 fetcher_.set_federated({&test_local_federated_form()});
146 } 146 }
147 EXPECT_EQ(include_federated ? 1u : 0u, 147 EXPECT_EQ(include_federated ? 1u : 0u,
148 test_form_manager->form_fetcher()->GetFederatedMatches().size()); 148 test_form_manager->form_fetcher()->GetFederatedMatches().size());
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after
264 EXPECT_EQ(password_manager::ui::INACTIVE_STATE, passwords_data().state()); 264 EXPECT_EQ(password_manager::ui::INACTIVE_STATE, passwords_data().state());
265 EXPECT_EQ(GURL::EmptyGURL(), passwords_data().origin()); 265 EXPECT_EQ(GURL::EmptyGURL(), passwords_data().origin());
266 EXPECT_FALSE(passwords_data().form_manager()); 266 EXPECT_FALSE(passwords_data().form_manager());
267 267
268 TestNoisyUpdates(); 268 TestNoisyUpdates();
269 } 269 }
270 270
271 TEST_F(ManagePasswordsStateTest, PasswordSubmitted) { 271 TEST_F(ManagePasswordsStateTest, PasswordSubmitted) {
272 test_stored_forms().push_back(&test_local_form()); 272 test_stored_forms().push_back(&test_local_form());
273 test_stored_forms().push_back(&test_psl_form()); 273 test_stored_forms().push_back(&test_psl_form());
274 std::unique_ptr<password_manager::PasswordFormManager> test_form_manager( 274 scoped_refptr<password_manager::PasswordFormManager> test_form_manager(
275 CreateFormManager()); 275 CreateFormManager());
276 test_form_manager->ProvisionallySave( 276 test_form_manager->ProvisionallySave(
277 test_submitted_form(), 277 test_submitted_form(),
278 password_manager::PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES); 278 password_manager::PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES);
279 passwords_data().OnPendingPassword(std::move(test_form_manager)); 279 passwords_data().OnPendingPassword(std::move(test_form_manager));
280 280
281 EXPECT_THAT(passwords_data().GetCurrentForms(), 281 EXPECT_THAT(passwords_data().GetCurrentForms(),
282 ElementsAre(Pointee(test_local_form()))); 282 ElementsAre(Pointee(test_local_form())));
283 EXPECT_EQ(password_manager::ui::PENDING_PASSWORD_STATE, 283 EXPECT_EQ(password_manager::ui::PENDING_PASSWORD_STATE,
284 passwords_data().state()); 284 passwords_data().state());
285 EXPECT_EQ(test_submitted_form().origin, passwords_data().origin()); 285 EXPECT_EQ(test_submitted_form().origin, passwords_data().origin());
286 ASSERT_TRUE(passwords_data().form_manager()); 286 ASSERT_TRUE(passwords_data().form_manager());
287 EXPECT_EQ(test_submitted_form(), 287 EXPECT_EQ(test_submitted_form(),
288 passwords_data().form_manager()->pending_credentials()); 288 passwords_data().form_manager()->pending_credentials());
289 TestAllUpdates(); 289 TestAllUpdates();
290 } 290 }
291 291
292 TEST_F(ManagePasswordsStateTest, PasswordSaved) { 292 TEST_F(ManagePasswordsStateTest, PasswordSaved) {
293 test_stored_forms().push_back(&test_local_form()); 293 test_stored_forms().push_back(&test_local_form());
294 std::unique_ptr<password_manager::PasswordFormManager> test_form_manager( 294 scoped_refptr<password_manager::PasswordFormManager> test_form_manager(
295 CreateFormManager()); 295 CreateFormManager());
296 test_form_manager->ProvisionallySave( 296 test_form_manager->ProvisionallySave(
297 test_submitted_form(), 297 test_submitted_form(),
298 password_manager::PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES); 298 password_manager::PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES);
299 passwords_data().OnPendingPassword(std::move(test_form_manager)); 299 passwords_data().OnPendingPassword(std::move(test_form_manager));
300 EXPECT_EQ(password_manager::ui::PENDING_PASSWORD_STATE, 300 EXPECT_EQ(password_manager::ui::PENDING_PASSWORD_STATE,
301 passwords_data().state()); 301 passwords_data().state());
302 302
303 passwords_data().TransitionToState(password_manager::ui::MANAGE_STATE); 303 passwords_data().TransitionToState(password_manager::ui::MANAGE_STATE);
304 EXPECT_THAT(passwords_data().GetCurrentForms(), 304 EXPECT_THAT(passwords_data().GetCurrentForms(),
305 ElementsAre(Pointee(test_local_form()))); 305 ElementsAre(Pointee(test_local_form())));
306 EXPECT_EQ(password_manager::ui::MANAGE_STATE, 306 EXPECT_EQ(password_manager::ui::MANAGE_STATE,
307 passwords_data().state()); 307 passwords_data().state());
308 EXPECT_EQ(test_submitted_form().origin, passwords_data().origin()); 308 EXPECT_EQ(test_submitted_form().origin, passwords_data().origin());
309 TestAllUpdates(); 309 TestAllUpdates();
310 } 310 }
311 311
312 TEST_F(ManagePasswordsStateTest, PasswordSubmittedFederationsPresent) { 312 TEST_F(ManagePasswordsStateTest, PasswordSubmittedFederationsPresent) {
313 std::unique_ptr<password_manager::PasswordFormManager> test_form_manager( 313 scoped_refptr<password_manager::PasswordFormManager> test_form_manager(
314 CreateFormManagerWithFederation()); 314 CreateFormManagerWithFederation());
315 test_form_manager->ProvisionallySave( 315 test_form_manager->ProvisionallySave(
316 test_submitted_form(), 316 test_submitted_form(),
317 password_manager::PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES); 317 password_manager::PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES);
318 passwords_data().OnPendingPassword(std::move(test_form_manager)); 318 passwords_data().OnPendingPassword(std::move(test_form_manager));
319 319
320 EXPECT_THAT(passwords_data().GetCurrentForms(), 320 EXPECT_THAT(passwords_data().GetCurrentForms(),
321 ElementsAre(Pointee(test_local_federated_form()))); 321 ElementsAre(Pointee(test_local_federated_form())));
322 } 322 }
323 323
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
359 passwords_data().TransitionToState(password_manager::ui::MANAGE_STATE); 359 passwords_data().TransitionToState(password_manager::ui::MANAGE_STATE);
360 EXPECT_THAT(passwords_data().GetCurrentForms(), 360 EXPECT_THAT(passwords_data().GetCurrentForms(),
361 ElementsAre(Pointee(test_local_form()))); 361 ElementsAre(Pointee(test_local_form())));
362 EXPECT_EQ(password_manager::ui::MANAGE_STATE, passwords_data().state()); 362 EXPECT_EQ(password_manager::ui::MANAGE_STATE, passwords_data().state());
363 EXPECT_EQ(test_local_form().origin, passwords_data().origin()); 363 EXPECT_EQ(test_local_form().origin, passwords_data().origin());
364 TestAllUpdates(); 364 TestAllUpdates();
365 } 365 }
366 366
367 TEST_F(ManagePasswordsStateTest, AutomaticPasswordSave) { 367 TEST_F(ManagePasswordsStateTest, AutomaticPasswordSave) {
368 test_stored_forms().push_back(&test_psl_form()); 368 test_stored_forms().push_back(&test_psl_form());
369 std::unique_ptr<password_manager::PasswordFormManager> test_form_manager( 369 scoped_refptr<password_manager::PasswordFormManager> test_form_manager(
370 CreateFormManager()); 370 CreateFormManager());
371 test_form_manager->ProvisionallySave( 371 test_form_manager->ProvisionallySave(
372 test_submitted_form(), 372 test_submitted_form(),
373 password_manager::PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES); 373 password_manager::PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES);
374 374
375 passwords_data().OnAutomaticPasswordSave(std::move(test_form_manager)); 375 passwords_data().OnAutomaticPasswordSave(std::move(test_form_manager));
376 EXPECT_EQ(password_manager::ui::CONFIRMATION_STATE, passwords_data().state()); 376 EXPECT_EQ(password_manager::ui::CONFIRMATION_STATE, passwords_data().state());
377 EXPECT_EQ(test_submitted_form().origin, passwords_data().origin()); 377 EXPECT_EQ(test_submitted_form().origin, passwords_data().origin());
378 ASSERT_TRUE(passwords_data().form_manager()); 378 ASSERT_TRUE(passwords_data().form_manager());
379 EXPECT_EQ(test_submitted_form(), 379 EXPECT_EQ(test_submitted_form(),
380 passwords_data().form_manager()->pending_credentials()); 380 passwords_data().form_manager()->pending_credentials());
381 TestAllUpdates(); 381 TestAllUpdates();
382 382
383 passwords_data().TransitionToState(password_manager::ui::MANAGE_STATE); 383 passwords_data().TransitionToState(password_manager::ui::MANAGE_STATE);
384 EXPECT_THAT(passwords_data().GetCurrentForms(), 384 EXPECT_THAT(passwords_data().GetCurrentForms(),
385 ElementsAre(Pointee(test_submitted_form()))); 385 ElementsAre(Pointee(test_submitted_form())));
386 EXPECT_EQ(password_manager::ui::MANAGE_STATE, passwords_data().state()); 386 EXPECT_EQ(password_manager::ui::MANAGE_STATE, passwords_data().state());
387 EXPECT_EQ(test_submitted_form().origin, passwords_data().origin()); 387 EXPECT_EQ(test_submitted_form().origin, passwords_data().origin());
388 TestAllUpdates(); 388 TestAllUpdates();
389 } 389 }
390 390
391 TEST_F(ManagePasswordsStateTest, AutomaticPasswordSaveWithFederations) { 391 TEST_F(ManagePasswordsStateTest, AutomaticPasswordSaveWithFederations) {
392 std::unique_ptr<password_manager::PasswordFormManager> test_form_manager( 392 scoped_refptr<password_manager::PasswordFormManager> test_form_manager(
393 CreateFormManagerWithFederation()); 393 CreateFormManagerWithFederation());
394 test_form_manager->ProvisionallySave( 394 test_form_manager->ProvisionallySave(
395 test_submitted_form(), 395 test_submitted_form(),
396 password_manager::PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES); 396 password_manager::PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES);
397 397
398 passwords_data().OnAutomaticPasswordSave(std::move(test_form_manager)); 398 passwords_data().OnAutomaticPasswordSave(std::move(test_form_manager));
399 EXPECT_THAT(passwords_data().GetCurrentForms(), 399 EXPECT_THAT(passwords_data().GetCurrentForms(),
400 UnorderedElementsAre(Pointee(test_submitted_form()), 400 UnorderedElementsAre(Pointee(test_submitted_form()),
401 Pointee(test_local_federated_form()))); 401 Pointee(test_local_federated_form())));
402 } 402 }
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
455 passwords_data().OnPasswordAutofilled( 455 passwords_data().OnPasswordAutofilled(
456 password_form_map, GURL("https://example.com/"), nullptr); 456 password_form_map, GURL("https://example.com/"), nullptr);
457 457
458 EXPECT_THAT(passwords_data().GetCurrentForms(), IsEmpty()); 458 EXPECT_THAT(passwords_data().GetCurrentForms(), IsEmpty());
459 EXPECT_EQ(password_manager::ui::INACTIVE_STATE, passwords_data().state()); 459 EXPECT_EQ(password_manager::ui::INACTIVE_STATE, passwords_data().state());
460 EXPECT_EQ(GURL::EmptyGURL(), passwords_data().origin()); 460 EXPECT_EQ(GURL::EmptyGURL(), passwords_data().origin());
461 EXPECT_FALSE(passwords_data().form_manager()); 461 EXPECT_FALSE(passwords_data().form_manager());
462 } 462 }
463 463
464 TEST_F(ManagePasswordsStateTest, OnInactive) { 464 TEST_F(ManagePasswordsStateTest, OnInactive) {
465 std::unique_ptr<password_manager::PasswordFormManager> test_form_manager( 465 scoped_refptr<password_manager::PasswordFormManager> test_form_manager(
466 CreateFormManager()); 466 CreateFormManager());
467 test_form_manager->ProvisionallySave( 467 test_form_manager->ProvisionallySave(
468 test_submitted_form(), 468 test_submitted_form(),
469 password_manager::PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES); 469 password_manager::PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES);
470 passwords_data().OnPendingPassword(std::move(test_form_manager)); 470 passwords_data().OnPendingPassword(std::move(test_form_manager));
471 EXPECT_EQ(password_manager::ui::PENDING_PASSWORD_STATE, 471 EXPECT_EQ(password_manager::ui::PENDING_PASSWORD_STATE,
472 passwords_data().state()); 472 passwords_data().state());
473 passwords_data().OnInactive(); 473 passwords_data().OnInactive();
474 EXPECT_THAT(passwords_data().GetCurrentForms(), IsEmpty()); 474 EXPECT_THAT(passwords_data().GetCurrentForms(), IsEmpty());
475 EXPECT_EQ(password_manager::ui::INACTIVE_STATE, passwords_data().state()); 475 EXPECT_EQ(password_manager::ui::INACTIVE_STATE, passwords_data().state());
476 EXPECT_EQ(GURL::EmptyGURL(), passwords_data().origin()); 476 EXPECT_EQ(GURL::EmptyGURL(), passwords_data().origin());
477 EXPECT_FALSE(passwords_data().form_manager()); 477 EXPECT_FALSE(passwords_data().form_manager());
478 TestNoisyUpdates(); 478 TestNoisyUpdates();
479 } 479 }
480 480
481 TEST_F(ManagePasswordsStateTest, PendingPasswordAddBlacklisted) { 481 TEST_F(ManagePasswordsStateTest, PendingPasswordAddBlacklisted) {
482 std::unique_ptr<password_manager::PasswordFormManager> test_form_manager( 482 scoped_refptr<password_manager::PasswordFormManager> test_form_manager(
483 CreateFormManager()); 483 CreateFormManager());
484 test_form_manager->ProvisionallySave( 484 test_form_manager->ProvisionallySave(
485 test_submitted_form(), 485 test_submitted_form(),
486 password_manager::PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES); 486 password_manager::PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES);
487 passwords_data().OnPendingPassword(std::move(test_form_manager)); 487 passwords_data().OnPendingPassword(std::move(test_form_manager));
488 EXPECT_EQ(password_manager::ui::PENDING_PASSWORD_STATE, 488 EXPECT_EQ(password_manager::ui::PENDING_PASSWORD_STATE,
489 passwords_data().state()); 489 passwords_data().state());
490 490
491 TestBlacklistedUpdates(); 491 TestBlacklistedUpdates();
492 } 492 }
(...skipping 15 matching lines...) Expand all
508 std::vector<std::unique_ptr<autofill::PasswordForm>> local_credentials; 508 std::vector<std::unique_ptr<autofill::PasswordForm>> local_credentials;
509 local_credentials.emplace_back(new autofill::PasswordForm(test_local_form())); 509 local_credentials.emplace_back(new autofill::PasswordForm(test_local_form()));
510 passwords_data().OnAutoSignin(std::move(local_credentials), 510 passwords_data().OnAutoSignin(std::move(local_credentials),
511 test_local_form().origin); 511 test_local_form().origin);
512 EXPECT_EQ(password_manager::ui::AUTO_SIGNIN_STATE, passwords_data().state()); 512 EXPECT_EQ(password_manager::ui::AUTO_SIGNIN_STATE, passwords_data().state());
513 513
514 TestBlacklistedUpdates(); 514 TestBlacklistedUpdates();
515 } 515 }
516 516
517 TEST_F(ManagePasswordsStateTest, AutomaticPasswordSaveAddBlacklisted) { 517 TEST_F(ManagePasswordsStateTest, AutomaticPasswordSaveAddBlacklisted) {
518 std::unique_ptr<password_manager::PasswordFormManager> test_form_manager( 518 scoped_refptr<password_manager::PasswordFormManager> test_form_manager(
519 CreateFormManager()); 519 CreateFormManager());
520 test_form_manager->ProvisionallySave( 520 test_form_manager->ProvisionallySave(
521 test_submitted_form(), 521 test_submitted_form(),
522 password_manager::PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES); 522 password_manager::PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES);
523 passwords_data().OnAutomaticPasswordSave(std::move(test_form_manager)); 523 passwords_data().OnAutomaticPasswordSave(std::move(test_form_manager));
524 EXPECT_EQ(password_manager::ui::CONFIRMATION_STATE, passwords_data().state()); 524 EXPECT_EQ(password_manager::ui::CONFIRMATION_STATE, passwords_data().state());
525 525
526 TestBlacklistedUpdates(); 526 TestBlacklistedUpdates();
527 } 527 }
528 528
529 TEST_F(ManagePasswordsStateTest, BackgroundAutofilledAddBlacklisted) { 529 TEST_F(ManagePasswordsStateTest, BackgroundAutofilledAddBlacklisted) {
530 std::map<base::string16, const autofill::PasswordForm*> password_form_map; 530 std::map<base::string16, const autofill::PasswordForm*> password_form_map;
531 password_form_map.insert( 531 password_form_map.insert(
532 std::make_pair(test_local_form().username_value, &test_local_form())); 532 std::make_pair(test_local_form().username_value, &test_local_form()));
533 passwords_data().OnPasswordAutofilled( 533 passwords_data().OnPasswordAutofilled(
534 password_form_map, password_form_map.begin()->second->origin, nullptr); 534 password_form_map, password_form_map.begin()->second->origin, nullptr);
535 EXPECT_EQ(password_manager::ui::MANAGE_STATE, passwords_data().state()); 535 EXPECT_EQ(password_manager::ui::MANAGE_STATE, passwords_data().state());
536 536
537 TestBlacklistedUpdates(); 537 TestBlacklistedUpdates();
538 } 538 }
539 539
540 TEST_F(ManagePasswordsStateTest, PasswordUpdateAddBlacklisted) { 540 TEST_F(ManagePasswordsStateTest, PasswordUpdateAddBlacklisted) {
541 std::unique_ptr<password_manager::PasswordFormManager> test_form_manager( 541 scoped_refptr<password_manager::PasswordFormManager> test_form_manager(
542 CreateFormManager()); 542 CreateFormManager());
543 test_form_manager->ProvisionallySave( 543 test_form_manager->ProvisionallySave(
544 test_submitted_form(), 544 test_submitted_form(),
545 password_manager::PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES); 545 password_manager::PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES);
546 passwords_data().OnUpdatePassword(std::move(test_form_manager)); 546 passwords_data().OnUpdatePassword(std::move(test_form_manager));
547 EXPECT_EQ(password_manager::ui::PENDING_PASSWORD_UPDATE_STATE, 547 EXPECT_EQ(password_manager::ui::PENDING_PASSWORD_UPDATE_STATE,
548 passwords_data().state()); 548 passwords_data().state());
549 549
550 TestBlacklistedUpdates(); 550 TestBlacklistedUpdates();
551 } 551 }
552 552
553 TEST_F(ManagePasswordsStateTest, PasswordUpdateSubmitted) { 553 TEST_F(ManagePasswordsStateTest, PasswordUpdateSubmitted) {
554 test_stored_forms().push_back(&test_local_form()); 554 test_stored_forms().push_back(&test_local_form());
555 test_stored_forms().push_back(&test_psl_form()); 555 test_stored_forms().push_back(&test_psl_form());
556 std::unique_ptr<password_manager::PasswordFormManager> test_form_manager( 556 scoped_refptr<password_manager::PasswordFormManager> test_form_manager(
557 CreateFormManager()); 557 CreateFormManager());
558 test_form_manager->ProvisionallySave( 558 test_form_manager->ProvisionallySave(
559 test_submitted_form(), 559 test_submitted_form(),
560 password_manager::PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES); 560 password_manager::PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES);
561 passwords_data().OnUpdatePassword(std::move(test_form_manager)); 561 passwords_data().OnUpdatePassword(std::move(test_form_manager));
562 562
563 EXPECT_THAT(passwords_data().GetCurrentForms(), 563 EXPECT_THAT(passwords_data().GetCurrentForms(),
564 ElementsAre(Pointee(test_local_form()))); 564 ElementsAre(Pointee(test_local_form())));
565 EXPECT_EQ(password_manager::ui::PENDING_PASSWORD_UPDATE_STATE, 565 EXPECT_EQ(password_manager::ui::PENDING_PASSWORD_UPDATE_STATE,
566 passwords_data().state()); 566 passwords_data().state());
567 EXPECT_EQ(test_submitted_form().origin, passwords_data().origin()); 567 EXPECT_EQ(test_submitted_form().origin, passwords_data().origin());
568 ASSERT_TRUE(passwords_data().form_manager()); 568 ASSERT_TRUE(passwords_data().form_manager());
569 EXPECT_EQ(test_submitted_form(), 569 EXPECT_EQ(test_submitted_form(),
570 passwords_data().form_manager()->pending_credentials()); 570 passwords_data().form_manager()->pending_credentials());
571 TestAllUpdates(); 571 TestAllUpdates();
572 } 572 }
573 573
574 TEST_F(ManagePasswordsStateTest, AndroidPasswordUpdateSubmitted) { 574 TEST_F(ManagePasswordsStateTest, AndroidPasswordUpdateSubmitted) {
575 autofill::PasswordForm android_form; 575 autofill::PasswordForm android_form;
576 android_form.signon_realm = "android://dHJhc2g=@com.example.android/"; 576 android_form.signon_realm = "android://dHJhc2g=@com.example.android/";
577 android_form.origin = GURL(android_form.signon_realm); 577 android_form.origin = GURL(android_form.signon_realm);
578 android_form.username_value = test_submitted_form().username_value; 578 android_form.username_value = test_submitted_form().username_value;
579 android_form.password_value = base::ASCIIToUTF16("old pass"); 579 android_form.password_value = base::ASCIIToUTF16("old pass");
580 test_stored_forms().push_back(&android_form); 580 test_stored_forms().push_back(&android_form);
581 std::unique_ptr<password_manager::PasswordFormManager> test_form_manager( 581 scoped_refptr<password_manager::PasswordFormManager> test_form_manager(
582 CreateFormManager()); 582 CreateFormManager());
583 test_form_manager->ProvisionallySave( 583 test_form_manager->ProvisionallySave(
584 test_submitted_form(), 584 test_submitted_form(),
585 password_manager::PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES); 585 password_manager::PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES);
586 passwords_data().OnUpdatePassword(std::move(test_form_manager)); 586 passwords_data().OnUpdatePassword(std::move(test_form_manager));
587 587
588 EXPECT_THAT(passwords_data().GetCurrentForms(), 588 EXPECT_THAT(passwords_data().GetCurrentForms(),
589 ElementsAre(Pointee(android_form))); 589 ElementsAre(Pointee(android_form)));
590 EXPECT_EQ(password_manager::ui::PENDING_PASSWORD_UPDATE_STATE, 590 EXPECT_EQ(password_manager::ui::PENDING_PASSWORD_UPDATE_STATE,
591 passwords_data().state()); 591 passwords_data().state());
592 EXPECT_EQ(test_submitted_form().origin, passwords_data().origin()); 592 EXPECT_EQ(test_submitted_form().origin, passwords_data().origin());
593 ASSERT_TRUE(passwords_data().form_manager()); 593 ASSERT_TRUE(passwords_data().form_manager());
594 android_form.password_value = test_submitted_form().password_value; 594 android_form.password_value = test_submitted_form().password_value;
595 EXPECT_EQ(android_form, 595 EXPECT_EQ(android_form,
596 passwords_data().form_manager()->pending_credentials()); 596 passwords_data().form_manager()->pending_credentials());
597 TestAllUpdates(); 597 TestAllUpdates();
598 } 598 }
599 599
600 TEST_F(ManagePasswordsStateTest, PasswordUpdateSubmittedWithFederations) { 600 TEST_F(ManagePasswordsStateTest, PasswordUpdateSubmittedWithFederations) {
601 test_stored_forms().push_back(&test_local_form()); 601 test_stored_forms().push_back(&test_local_form());
602 std::unique_ptr<password_manager::PasswordFormManager> test_form_manager( 602 scoped_refptr<password_manager::PasswordFormManager> test_form_manager(
603 CreateFormManagerWithFederation()); 603 CreateFormManagerWithFederation());
604 test_form_manager->ProvisionallySave( 604 test_form_manager->ProvisionallySave(
605 test_submitted_form(), 605 test_submitted_form(),
606 password_manager::PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES); 606 password_manager::PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES);
607 passwords_data().OnUpdatePassword(std::move(test_form_manager)); 607 passwords_data().OnUpdatePassword(std::move(test_form_manager));
608 608
609 EXPECT_THAT(passwords_data().GetCurrentForms(), 609 EXPECT_THAT(passwords_data().GetCurrentForms(),
610 UnorderedElementsAre(Pointee(test_local_form()), 610 UnorderedElementsAre(Pointee(test_local_form()),
611 Pointee(test_local_federated_form()))); 611 Pointee(test_local_federated_form())));
612 } 612 }
(...skipping 22 matching lines...) Expand all
635 passwords_data().OnRequestCredentials( 635 passwords_data().OnRequestCredentials(
636 std::vector<std::unique_ptr<autofill::PasswordForm>>(), 636 std::vector<std::unique_ptr<autofill::PasswordForm>>(),
637 test_local_form().origin); 637 test_local_form().origin);
638 passwords_data().set_credentials_callback(base::Bind( 638 passwords_data().set_credentials_callback(base::Bind(
639 &ManagePasswordsStateTest::CredentialCallback, base::Unretained(this))); 639 &ManagePasswordsStateTest::CredentialCallback, base::Unretained(this)));
640 EXPECT_CALL(*this, CredentialCallback(&test_local_federated_form())); 640 EXPECT_CALL(*this, CredentialCallback(&test_local_federated_form()));
641 passwords_data().ChooseCredential(&test_local_federated_form()); 641 passwords_data().ChooseCredential(&test_local_federated_form());
642 } 642 }
643 643
644 } // namespace 644 } // namespace
OLDNEW
« no previous file with comments | « chrome/browser/ui/passwords/manage_passwords_state.cc ('k') | chrome/browser/ui/passwords/manage_passwords_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698