OLD | NEW |
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 <stddef.h> | 5 #include <stddef.h> |
6 | 6 |
7 #include "base/macros.h" | 7 #include "base/macros.h" |
8 #include "base/strings/string16.h" | 8 #include "base/strings/string16.h" |
9 #include "base/strings/string_util.h" | 9 #include "base/strings/string_util.h" |
10 #include "base/strings/stringprintf.h" | 10 #include "base/strings/stringprintf.h" |
(...skipping 687 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
698 EXPECT_EQ(base::UTF8ToUTF16("username"), | 698 EXPECT_EQ(base::UTF8ToUTF16("username"), |
699 password_form->username_element); | 699 password_form->username_element); |
700 EXPECT_EQ(base::UTF8ToUTF16("William"), | 700 EXPECT_EQ(base::UTF8ToUTF16("William"), |
701 password_form->username_value); | 701 password_form->username_value); |
702 EXPECT_EQ(base::UTF8ToUTF16("password"), | 702 EXPECT_EQ(base::UTF8ToUTF16("password"), |
703 password_form->password_element); | 703 password_form->password_element); |
704 EXPECT_EQ(base::UTF8ToUTF16("secret"), | 704 EXPECT_EQ(base::UTF8ToUTF16("secret"), |
705 password_form->password_value); | 705 password_form->password_value); |
706 } | 706 } |
707 | 707 |
| 708 TEST_F(MAYBE_PasswordFormConversionUtilsTest, |
| 709 VisiblePasswordAndInvisibleUsername) { |
| 710 PasswordFormBuilder builder(kTestFormActionURL); |
| 711 |
| 712 builder.AddNonDisplayedTextField("username", "William"); |
| 713 builder.AddPasswordField("password", "secret", NULL); |
| 714 builder.AddSubmitButton("submit"); |
| 715 std::string html = builder.ProduceHTML(); |
| 716 |
| 717 scoped_ptr<PasswordForm> password_form; |
| 718 ASSERT_NO_FATAL_FAILURE( |
| 719 LoadHTMLAndConvertForm(html, &password_form, nullptr)); |
| 720 ASSERT_TRUE(password_form); |
| 721 EXPECT_EQ(base::UTF8ToUTF16("username"), password_form->username_element); |
| 722 EXPECT_EQ(base::UTF8ToUTF16("William"), password_form->username_value); |
| 723 EXPECT_EQ(base::UTF8ToUTF16("password"), password_form->password_element); |
| 724 EXPECT_EQ(base::UTF8ToUTF16("secret"), password_form->password_value); |
| 725 } |
| 726 |
| 727 TEST_F(MAYBE_PasswordFormConversionUtilsTest, |
| 728 InvisiblePassword_LatestUsernameIsVisible) { |
| 729 PasswordFormBuilder builder(kTestFormActionURL); |
| 730 |
| 731 builder.AddNonDisplayedTextField("search", "query"); |
| 732 builder.AddTextField("username", "William", NULL); |
| 733 builder.AddNonDisplayedPasswordField("password", "secret"); |
| 734 builder.AddSubmitButton("submit"); |
| 735 std::string html = builder.ProduceHTML(); |
| 736 |
| 737 scoped_ptr<PasswordForm> password_form; |
| 738 ASSERT_NO_FATAL_FAILURE( |
| 739 LoadHTMLAndConvertForm(html, &password_form, nullptr)); |
| 740 ASSERT_TRUE(password_form); |
| 741 EXPECT_EQ(base::UTF8ToUTF16("username"), password_form->username_element); |
| 742 EXPECT_EQ(base::UTF8ToUTF16("William"), password_form->username_value); |
| 743 EXPECT_EQ(base::UTF8ToUTF16("password"), password_form->password_element); |
| 744 EXPECT_EQ(base::UTF8ToUTF16("secret"), password_form->password_value); |
| 745 } |
| 746 |
| 747 TEST_F(MAYBE_PasswordFormConversionUtilsTest, |
| 748 InvisiblePassword_LatestUsernameIsInvisible) { |
| 749 PasswordFormBuilder builder(kTestFormActionURL); |
| 750 |
| 751 builder.AddTextField("search", "query", NULL); |
| 752 builder.AddNonDisplayedTextField("username", "William"); |
| 753 builder.AddNonDisplayedPasswordField("password", "secret"); |
| 754 builder.AddSubmitButton("submit"); |
| 755 std::string html = builder.ProduceHTML(); |
| 756 |
| 757 scoped_ptr<PasswordForm> password_form; |
| 758 ASSERT_NO_FATAL_FAILURE( |
| 759 LoadHTMLAndConvertForm(html, &password_form, nullptr)); |
| 760 ASSERT_TRUE(password_form); |
| 761 EXPECT_EQ(base::UTF8ToUTF16("username"), password_form->username_element); |
| 762 EXPECT_EQ(base::UTF8ToUTF16("William"), password_form->username_value); |
| 763 EXPECT_EQ(base::UTF8ToUTF16("password"), password_form->password_element); |
| 764 EXPECT_EQ(base::UTF8ToUTF16("secret"), password_form->password_value); |
| 765 } |
| 766 |
708 TEST_F(MAYBE_PasswordFormConversionUtilsTest, InvalidFormDueToBadActionURL) { | 767 TEST_F(MAYBE_PasswordFormConversionUtilsTest, InvalidFormDueToBadActionURL) { |
709 PasswordFormBuilder builder("invalid_target"); | 768 PasswordFormBuilder builder("invalid_target"); |
710 builder.AddTextField("username", "JohnSmith", NULL); | 769 builder.AddTextField("username", "JohnSmith", NULL); |
711 builder.AddSubmitButton("submit"); | 770 builder.AddSubmitButton("submit"); |
712 builder.AddPasswordField("password", "secret", NULL); | 771 builder.AddPasswordField("password", "secret", NULL); |
713 std::string html = builder.ProduceHTML(); | 772 std::string html = builder.ProduceHTML(); |
714 | 773 |
715 scoped_ptr<PasswordForm> password_form; | 774 scoped_ptr<PasswordForm> password_form; |
716 ASSERT_NO_FATAL_FAILURE( | 775 ASSERT_NO_FATAL_FAILURE( |
717 LoadHTMLAndConvertForm(html, &password_form, nullptr)); | 776 LoadHTMLAndConvertForm(html, &password_form, nullptr)); |
(...skipping 405 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1123 EXPECT_EQ(base::UTF8ToUTF16(test_cases[i].expected_username_element), | 1182 EXPECT_EQ(base::UTF8ToUTF16(test_cases[i].expected_username_element), |
1124 password_form->username_element); | 1183 password_form->username_element); |
1125 EXPECT_EQ(base::UTF8ToUTF16(test_cases[i].expected_password_element), | 1184 EXPECT_EQ(base::UTF8ToUTF16(test_cases[i].expected_password_element), |
1126 password_form->password_element); | 1185 password_form->password_element); |
1127 EXPECT_EQ(base::UTF8ToUTF16(test_cases[i].expected_new_password_element), | 1186 EXPECT_EQ(base::UTF8ToUTF16(test_cases[i].expected_new_password_element), |
1128 password_form->new_password_element); | 1187 password_form->new_password_element); |
1129 } | 1188 } |
1130 } | 1189 } |
1131 | 1190 |
1132 } // namespace autofill | 1191 } // namespace autofill |
OLD | NEW |