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

Side by Side Diff: chrome/renderer/autofill/password_autofill_agent_browsertest.cc

Issue 1767343004: Replace base::Tuple in //chrome with std::tuple (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: s/typedef/using/ Created 4 years, 9 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 (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 <tuple>
6
5 #include "base/macros.h" 7 #include "base/macros.h"
6 #include "base/strings/string_util.h" 8 #include "base/strings/string_util.h"
7 #include "base/strings/utf_string_conversions.h" 9 #include "base/strings/utf_string_conversions.h"
8 #include "chrome/renderer/autofill/password_generation_test_utils.h" 10 #include "chrome/renderer/autofill/password_generation_test_utils.h"
9 #include "chrome/test/base/chrome_render_view_test.h" 11 #include "chrome/test/base/chrome_render_view_test.h"
10 #include "components/autofill/content/common/autofill_messages.h" 12 #include "components/autofill/content/common/autofill_messages.h"
11 #include "components/autofill/content/renderer/autofill_agent.h" 13 #include "components/autofill/content/renderer/autofill_agent.h"
12 #include "components/autofill/content/renderer/form_autofill_util.h" 14 #include "components/autofill/content/renderer/form_autofill_util.h"
13 #include "components/autofill/content/renderer/password_autofill_agent.h" 15 #include "components/autofill/content/renderer/password_autofill_agent.h"
14 #include "components/autofill/content/renderer/test_password_autofill_agent.h" 16 #include "components/autofill/content/renderer/test_password_autofill_agent.h"
(...skipping 418 matching lines...) Expand 10 before | Expand all | Expand 10 after
433 435
434 // Checks the message sent to PasswordAutofillManager to build the suggestion 436 // Checks the message sent to PasswordAutofillManager to build the suggestion
435 // list. |username| is the expected username field value, and |show_all| is 437 // list. |username| is the expected username field value, and |show_all| is
436 // the expected flag for the PasswordAutofillManager, whether to show all 438 // the expected flag for the PasswordAutofillManager, whether to show all
437 // suggestions, or only those starting with |username|. 439 // suggestions, or only those starting with |username|.
438 void CheckSuggestions(const std::string& username, bool show_all) { 440 void CheckSuggestions(const std::string& username, bool show_all) {
439 const IPC::Message* message = 441 const IPC::Message* message =
440 render_thread_->sink().GetFirstMessageMatching( 442 render_thread_->sink().GetFirstMessageMatching(
441 AutofillHostMsg_ShowPasswordSuggestions::ID); 443 AutofillHostMsg_ShowPasswordSuggestions::ID);
442 ASSERT_TRUE(message); 444 ASSERT_TRUE(message);
443 base::Tuple<int, base::i18n::TextDirection, base::string16, int, gfx::RectF> 445 std::tuple<int, base::i18n::TextDirection, base::string16, int, gfx::RectF>
444 args; 446 args;
445 AutofillHostMsg_ShowPasswordSuggestions::Read(message, &args); 447 AutofillHostMsg_ShowPasswordSuggestions::Read(message, &args);
446 EXPECT_EQ(kPasswordFillFormDataId, base::get<0>(args)); 448 EXPECT_EQ(kPasswordFillFormDataId, std::get<0>(args));
447 EXPECT_EQ(ASCIIToUTF16(username), base::get<2>(args)); 449 EXPECT_EQ(ASCIIToUTF16(username), std::get<2>(args));
448 EXPECT_EQ(show_all, 450 EXPECT_EQ(show_all,
449 static_cast<bool>(base::get<3>(args) & autofill::SHOW_ALL)); 451 static_cast<bool>(std::get<3>(args) & autofill::SHOW_ALL));
450 452
451 render_thread_->sink().ClearMessages(); 453 render_thread_->sink().ClearMessages();
452 } 454 }
453 455
454 void ExpectFormSubmittedWithUsernameAndPasswords( 456 void ExpectFormSubmittedWithUsernameAndPasswords(
455 const std::string& username_value, 457 const std::string& username_value,
456 const std::string& password_value, 458 const std::string& password_value,
457 const std::string& new_password_value) { 459 const std::string& new_password_value) {
458 const IPC::Message* message = 460 const IPC::Message* message =
459 render_thread_->sink().GetFirstMessageMatching( 461 render_thread_->sink().GetFirstMessageMatching(
460 AutofillHostMsg_PasswordFormSubmitted::ID); 462 AutofillHostMsg_PasswordFormSubmitted::ID);
461 ASSERT_TRUE(message); 463 ASSERT_TRUE(message);
462 base::Tuple<autofill::PasswordForm> args; 464 std::tuple<autofill::PasswordForm> args;
463 AutofillHostMsg_PasswordFormSubmitted::Read(message, &args); 465 AutofillHostMsg_PasswordFormSubmitted::Read(message, &args);
464 EXPECT_EQ(ASCIIToUTF16(username_value), base::get<0>(args).username_value); 466 EXPECT_EQ(ASCIIToUTF16(username_value), std::get<0>(args).username_value);
465 EXPECT_EQ(ASCIIToUTF16(password_value), base::get<0>(args).password_value); 467 EXPECT_EQ(ASCIIToUTF16(password_value), std::get<0>(args).password_value);
466 EXPECT_EQ(ASCIIToUTF16(new_password_value), 468 EXPECT_EQ(ASCIIToUTF16(new_password_value),
467 base::get<0>(args).new_password_value); 469 std::get<0>(args).new_password_value);
468 } 470 }
469 471
470 void ExpectInPageNavigationWithUsernameAndPasswords( 472 void ExpectInPageNavigationWithUsernameAndPasswords(
471 const std::string& username_value, 473 const std::string& username_value,
472 const std::string& password_value, 474 const std::string& password_value,
473 const std::string& new_password_value) { 475 const std::string& new_password_value) {
474 const IPC::Message* message = 476 const IPC::Message* message =
475 render_thread_->sink().GetFirstMessageMatching( 477 render_thread_->sink().GetFirstMessageMatching(
476 AutofillHostMsg_InPageNavigation::ID); 478 AutofillHostMsg_InPageNavigation::ID);
477 ASSERT_TRUE(message); 479 ASSERT_TRUE(message);
478 base::Tuple<autofill::PasswordForm> args; 480 std::tuple<autofill::PasswordForm> args;
479 AutofillHostMsg_InPageNavigation::Read(message, &args); 481 AutofillHostMsg_InPageNavigation::Read(message, &args);
480 EXPECT_EQ(ASCIIToUTF16(username_value), base::get<0>(args).username_value); 482 EXPECT_EQ(ASCIIToUTF16(username_value), std::get<0>(args).username_value);
481 EXPECT_EQ(ASCIIToUTF16(password_value), base::get<0>(args).password_value); 483 EXPECT_EQ(ASCIIToUTF16(password_value), std::get<0>(args).password_value);
482 EXPECT_EQ(ASCIIToUTF16(new_password_value), 484 EXPECT_EQ(ASCIIToUTF16(new_password_value),
483 base::get<0>(args).new_password_value); 485 std::get<0>(args).new_password_value);
484 } 486 }
485 487
486 base::string16 username1_; 488 base::string16 username1_;
487 base::string16 username2_; 489 base::string16 username2_;
488 base::string16 username3_; 490 base::string16 username3_;
489 base::string16 password1_; 491 base::string16 password1_;
490 base::string16 password2_; 492 base::string16 password2_;
491 base::string16 password3_; 493 base::string16 password3_;
492 base::string16 alternate_username3_; 494 base::string16 alternate_username3_;
493 PasswordFormFillData fill_data_; 495 PasswordFormFillData fill_data_;
(...skipping 14 matching lines...) Expand all
508 * returns false. May be we should mock URL loading to cirmcuvent this? 510 * returns false. May be we should mock URL loading to cirmcuvent this?
509 TODO(jcivelli): find a way to make the security origin not deny access to the 511 TODO(jcivelli): find a way to make the security origin not deny access to the
510 password manager and then reenable this code. 512 password manager and then reenable this code.
511 513
512 // The form has been loaded, we should have sent the browser a message about 514 // The form has been loaded, we should have sent the browser a message about
513 // the form. 515 // the form.
514 const IPC::Message* msg = render_thread_.sink().GetFirstMessageMatching( 516 const IPC::Message* msg = render_thread_.sink().GetFirstMessageMatching(
515 AutofillHostMsg_PasswordFormsParsed::ID); 517 AutofillHostMsg_PasswordFormsParsed::ID);
516 ASSERT_TRUE(msg != NULL); 518 ASSERT_TRUE(msg != NULL);
517 519
518 base::Tuple1<std::vector<PasswordForm> > forms; 520 std::tuple<std::vector<PasswordForm> > forms;
519 AutofillHostMsg_PasswordFormsParsed::Read(msg, &forms); 521 AutofillHostMsg_PasswordFormsParsed::Read(msg, &forms);
520 ASSERT_EQ(1U, forms.a.size()); 522 ASSERT_EQ(1U, forms.a.size());
521 PasswordForm password_form = forms.a[0]; 523 PasswordForm password_form = forms.a[0];
522 EXPECT_EQ(PasswordForm::SCHEME_HTML, password_form.scheme); 524 EXPECT_EQ(PasswordForm::SCHEME_HTML, password_form.scheme);
523 EXPECT_EQ(ASCIIToUTF16(kUsernameName), password_form.username_element); 525 EXPECT_EQ(ASCIIToUTF16(kUsernameName), password_form.username_element);
524 EXPECT_EQ(ASCIIToUTF16(kPasswordName), password_form.password_element); 526 EXPECT_EQ(ASCIIToUTF16(kPasswordName), password_form.password_element);
525 */ 527 */
526 528
527 // Simulate the browser sending back the login info, it triggers the 529 // Simulate the browser sending back the login info, it triggers the
528 // autocomplete. 530 // autocomplete.
(...skipping 244 matching lines...) Expand 10 before | Expand all | Expand 10 after
773 ASSERT_EQ(1u, forms3.size()); 775 ASSERT_EQ(1u, forms3.size());
774 EXPECT_FALSE(form_util::IsWebNodeVisible(forms3[0])); 776 EXPECT_FALSE(form_util::IsWebNodeVisible(forms3[0]));
775 } 777 }
776 778
777 TEST_F(PasswordAutofillAgentTest, SendPasswordFormsTest) { 779 TEST_F(PasswordAutofillAgentTest, SendPasswordFormsTest) {
778 render_thread_->sink().ClearMessages(); 780 render_thread_->sink().ClearMessages();
779 LoadHTML(kVisibleFormWithNoUsernameHTML); 781 LoadHTML(kVisibleFormWithNoUsernameHTML);
780 const IPC::Message* message = render_thread_->sink() 782 const IPC::Message* message = render_thread_->sink()
781 .GetFirstMessageMatching(AutofillHostMsg_PasswordFormsRendered::ID); 783 .GetFirstMessageMatching(AutofillHostMsg_PasswordFormsRendered::ID);
782 EXPECT_TRUE(message); 784 EXPECT_TRUE(message);
783 base::Tuple<std::vector<autofill::PasswordForm>, bool> param; 785 std::tuple<std::vector<autofill::PasswordForm>, bool> param;
784 AutofillHostMsg_PasswordFormsRendered::Read(message, &param); 786 AutofillHostMsg_PasswordFormsRendered::Read(message, &param);
785 EXPECT_TRUE(base::get<0>(param).size()); 787 EXPECT_TRUE(std::get<0>(param).size());
786 788
787 render_thread_->sink().ClearMessages(); 789 render_thread_->sink().ClearMessages();
788 LoadHTML(kEmptyFormHTML); 790 LoadHTML(kEmptyFormHTML);
789 message = render_thread_->sink().GetFirstMessageMatching( 791 message = render_thread_->sink().GetFirstMessageMatching(
790 AutofillHostMsg_PasswordFormsRendered::ID); 792 AutofillHostMsg_PasswordFormsRendered::ID);
791 EXPECT_TRUE(message); 793 EXPECT_TRUE(message);
792 AutofillHostMsg_PasswordFormsRendered::Read(message, &param); 794 AutofillHostMsg_PasswordFormsRendered::Read(message, &param);
793 EXPECT_FALSE(base::get<0>(param).size()); 795 EXPECT_FALSE(std::get<0>(param).size());
794 796
795 render_thread_->sink().ClearMessages(); 797 render_thread_->sink().ClearMessages();
796 LoadHTML(kNonVisibleFormHTML); 798 LoadHTML(kNonVisibleFormHTML);
797 message = render_thread_->sink().GetFirstMessageMatching( 799 message = render_thread_->sink().GetFirstMessageMatching(
798 AutofillHostMsg_PasswordFormsRendered::ID); 800 AutofillHostMsg_PasswordFormsRendered::ID);
799 EXPECT_TRUE(message); 801 EXPECT_TRUE(message);
800 AutofillHostMsg_PasswordFormsRendered::Read(message, &param); 802 AutofillHostMsg_PasswordFormsRendered::Read(message, &param);
801 EXPECT_FALSE(base::get<0>(param).size()); 803 EXPECT_FALSE(std::get<0>(param).size());
802 } 804 }
803 805
804 TEST_F(PasswordAutofillAgentTest, SendPasswordFormsTest_Redirection) { 806 TEST_F(PasswordAutofillAgentTest, SendPasswordFormsTest_Redirection) {
805 render_thread_->sink().ClearMessages(); 807 render_thread_->sink().ClearMessages();
806 LoadHTML(kEmptyWebpage); 808 LoadHTML(kEmptyWebpage);
807 EXPECT_FALSE(render_thread_->sink().GetFirstMessageMatching( 809 EXPECT_FALSE(render_thread_->sink().GetFirstMessageMatching(
808 AutofillHostMsg_PasswordFormsRendered::ID)); 810 AutofillHostMsg_PasswordFormsRendered::ID));
809 811
810 render_thread_->sink().ClearMessages(); 812 render_thread_->sink().ClearMessages();
811 LoadHTML(kRedirectionWebpage); 813 LoadHTML(kRedirectionWebpage);
(...skipping 1507 matching lines...) Expand 10 before | Expand all | Expand 10 after
2319 2321
2320 static_cast<content::RenderFrameObserver*>(password_autofill_agent_) 2322 static_cast<content::RenderFrameObserver*>(password_autofill_agent_)
2321 ->WillSendSubmitEvent(username_element_.form()); 2323 ->WillSendSubmitEvent(username_element_.form());
2322 static_cast<content::RenderFrameObserver*>(password_autofill_agent_) 2324 static_cast<content::RenderFrameObserver*>(password_autofill_agent_)
2323 ->WillSubmitForm(username_element_.form()); 2325 ->WillSubmitForm(username_element_.form());
2324 2326
2325 ExpectFormSubmittedWithUsernameAndPasswords("Alice", "mypassword", ""); 2327 ExpectFormSubmittedWithUsernameAndPasswords("Alice", "mypassword", "");
2326 } 2328 }
2327 2329
2328 } // namespace autofill 2330 } // namespace autofill
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698