Chromium Code Reviews| Index: components/autofill/content/renderer/password_form_conversion_utils_browsertest.cc |
| diff --git a/components/autofill/content/renderer/password_form_conversion_utils_browsertest.cc b/components/autofill/content/renderer/password_form_conversion_utils_browsertest.cc |
| index d0f55062698ae5f167936e63741a7ef9f0be96d4..83af2232e5147527f6436c9261af05c15ee88b60 100644 |
| --- a/components/autofill/content/renderer/password_form_conversion_utils_browsertest.cc |
| +++ b/components/autofill/content/renderer/password_form_conversion_utils_browsertest.cc |
| @@ -12,11 +12,9 @@ |
| #include "third_party/WebKit/public/web/WebDocument.h" |
| #include "third_party/WebKit/public/web/WebFormElement.h" |
| #include "third_party/WebKit/public/web/WebLocalFrame.h" |
| -#include "third_party/WebKit/public/web/WebPasswordFormData.h" |
| using blink::WebFormElement; |
| using blink::WebFrame; |
| -using blink::WebPasswordFormData; |
| using blink::WebVector; |
| namespace autofill { |
| @@ -48,8 +46,6 @@ TEST_F(PasswordFormConversionUtilsTest, ValidWebFormElementToPasswordForm) { |
| WebVector<WebFormElement> forms; |
| frame->document().forms(forms); |
| ASSERT_EQ(1U, forms.size()); |
| - WebPasswordFormData web_password_form(forms[0]); |
| - ASSERT_TRUE(web_password_form.isValid()); |
| scoped_ptr<PasswordForm> password_form = CreatePasswordForm(forms[0]); |
| ASSERT_NE(static_cast<PasswordForm*>(NULL), password_form.get()); |
| @@ -82,11 +78,81 @@ TEST_F(PasswordFormConversionUtilsTest, InvalidWebFormElementToPasswordForm) { |
| WebVector<WebFormElement> forms; |
| frame->document().forms(forms); |
| ASSERT_EQ(1U, forms.size()); |
| - WebPasswordFormData web_password_form(forms[0]); |
| - ASSERT_FALSE(web_password_form.isValid()); |
| scoped_ptr<PasswordForm> password_form = CreatePasswordForm(forms[0]); |
| EXPECT_EQ(static_cast<PasswordForm*>(NULL), password_form.get()); |
| } |
| +TEST_F(PasswordFormConversionUtilsTest, |
| + WebFormWithMultipleUseNameAndPassWordFieldsToPasswordForm) { |
| + LoadHTML("<FORM name=\"TestForm\" action=\"http://cnn.com\" method=\"post\">" |
| + " <INPUT type=\"text\" name=\"username\" " |
| + " id=\"username\" value=\"John\"/>" |
| + " <INPUT type=\"password\" name=\"password\" id=\"password\" " |
|
Garrett Casto
2014/04/17 18:20:22
Would you mind changing the name and id's of these
|
| + " value=\"encrypted\"/>" |
| + " <INPUT type=\"text\" name=\"username\" " |
| + " id=\"username\" value=\"Smith\"/>" |
| + " <INPUT type=\"password\" name=\"password\" id=\"password\" " |
| + " value=\"secret\"/>" |
| + " <INPUT type=\"text\" name=\"username\" " |
| + " id=\"username\" value=\"JohnSmith\"/>" |
| + " <INPUT type=\"password\" name=\"password\" id=\"password\" " |
| + " value=\"secret\"/>" |
| + " <INPUT type=\"submit\" name=\"submit\" value=\"Submit\"/>" |
| + "</FORM>"); |
| + |
| + WebFrame* frame = GetMainFrame(); |
| + ASSERT_NE(static_cast<WebFrame*>(NULL), frame); |
| + |
| + WebVector<WebFormElement> forms; |
| + frame->document().forms(forms); |
| + ASSERT_EQ(1U, forms.size()); |
| + |
| + scoped_ptr<PasswordForm> password_form = CreatePasswordForm(forms[0]); |
| + ASSERT_NE(static_cast<PasswordForm*>(NULL), password_form.get()); |
| + |
| + EXPECT_EQ("data:", password_form->signon_realm); |
| + EXPECT_EQ(GURL("http://cnn.com"), password_form->action); |
| + EXPECT_EQ(base::UTF8ToUTF16("username"), password_form->username_element); |
| + EXPECT_EQ(base::UTF8ToUTF16("John"), password_form->username_value); |
| + EXPECT_EQ(base::UTF8ToUTF16("password"), password_form->password_element); |
| + EXPECT_EQ(base::UTF8ToUTF16("secret"), password_form->password_value); |
| + EXPECT_EQ(base::UTF8ToUTF16("password"), password_form->old_password_element); |
| + EXPECT_EQ(base::UTF8ToUTF16("encrypted"), password_form->old_password_value); |
| + EXPECT_EQ(base::UTF8ToUTF16("Smith"), |
| + password_form->other_possible_usernames[0]); |
| + EXPECT_EQ(base::UTF8ToUTF16("JohnSmith"), |
| + password_form->other_possible_usernames[1]); |
| + EXPECT_EQ(PasswordForm::SCHEME_HTML, password_form->scheme); |
| + EXPECT_FALSE(password_form->ssl_valid); |
| + EXPECT_FALSE(password_form->preferred); |
| + EXPECT_FALSE(password_form->blacklisted_by_user); |
| + EXPECT_EQ(PasswordForm::TYPE_MANUAL, password_form->type); |
| +} |
| + |
| +TEST_F(PasswordFormConversionUtilsTest, |
| + WebFormwithThreeDifferentPasswordsToPasswordForm) { |
| + LoadHTML("<FORM name=\"TestForm\" action=\"http://cnn.com\" method=\"post\">" |
| + " <INPUT type=\"text\" name=\"username\" " |
| + " id=\"username\" value=\"John\"/>" |
| + " <INPUT type=\"password\" name=\"password\" id=\"password\" " |
| + " value=\"secret\"/>" |
| + " <INPUT type=\"password\" name=\"password\" id=\"password\" " |
| + " value=\"encrypted\"/>" |
| + " <INPUT type=\"password\" name=\"password\" id=\"password\" " |
| + " value=\"key\"/>" |
| + " <INPUT type=\"submit\" name=\"submit\" value=\"Submit\"/>" |
| + "</FORM>"); |
| + |
| + WebFrame* frame = GetMainFrame(); |
| + ASSERT_NE(static_cast<WebFrame*>(NULL), frame); |
| + |
| + WebVector<WebFormElement> forms; |
| + frame->document().forms(forms); |
| + ASSERT_EQ(1U, forms.size()); |
| + |
| + scoped_ptr<PasswordForm> password_form = CreatePasswordForm(forms[0]); |
| + ASSERT_EQ(static_cast<PasswordForm*>(NULL), password_form.get()); |
| +} |
| + |
| } // namespace autofill |