Chromium Code Reviews| Index: chrome/renderer/autofill/password_autofill_agent_browsertest.cc |
| diff --git a/chrome/renderer/autofill/password_autofill_agent_browsertest.cc b/chrome/renderer/autofill/password_autofill_agent_browsertest.cc |
| index 66529cad25293b47249dabde58cd088f8422040b..7e3daf0952dba574f4782d7ccd01448b9058395b 100644 |
| --- a/chrome/renderer/autofill/password_autofill_agent_browsertest.cc |
| +++ b/chrome/renderer/autofill/password_autofill_agent_browsertest.cc |
| @@ -95,6 +95,12 @@ const char kEmptyFormHTML[] = |
| "<head> <style> form {display: inline;} </style> </head>" |
| "<body> <form> </form> </body>"; |
| +const char kFormWithoutPasswordsHTML[] = |
| + "<FORM>" |
| + " <INPUT type='text' id='random_field'/>" |
| + " <INPUT type='text' id='username'/>" |
| + "</FORM>"; |
| + |
| const char kNonVisibleFormHTML[] = |
| "<head> <style> form {visibility: hidden;} </style> </head>" |
| "<body>" |
| @@ -858,52 +864,80 @@ TEST_F(PasswordAutofillAgentTest, IsWebElementVisibleTest) { |
| } |
| TEST_F(PasswordAutofillAgentTest, SendPasswordFormsTest) { |
|
vabr (Chromium)
2017/04/13 06:44:18
I wonder if we should split this test so that each
kolos1
2017/04/13 08:35:48
Splitted.
|
| - fake_driver_.reset_password_forms_rendered(); |
| + fake_driver_.reset_password_forms_calls(); |
| LoadHTML(kVisibleFormWithNoUsernameHTML); |
| base::RunLoop().RunUntilIdle(); |
| + EXPECT_TRUE(fake_driver_.called_password_forms_parsed()); |
| + ASSERT_TRUE(static_cast<bool>(fake_driver_.password_forms_parsed())); |
| + EXPECT_FALSE(fake_driver_.password_forms_parsed()->empty()); |
| EXPECT_TRUE(fake_driver_.called_password_forms_rendered()); |
| ASSERT_TRUE(static_cast<bool>(fake_driver_.password_forms_rendered())); |
| EXPECT_FALSE(fake_driver_.password_forms_rendered()->empty()); |
| - fake_driver_.reset_password_forms_rendered(); |
| + fake_driver_.reset_password_forms_calls(); |
| LoadHTML(kEmptyFormHTML); |
| base::RunLoop().RunUntilIdle(); |
| + EXPECT_FALSE(fake_driver_.called_password_forms_parsed()); |
| EXPECT_TRUE(fake_driver_.called_password_forms_rendered()); |
| ASSERT_TRUE(static_cast<bool>(fake_driver_.password_forms_rendered())); |
| EXPECT_TRUE(fake_driver_.password_forms_rendered()->empty()); |
| - fake_driver_.reset_password_forms_rendered(); |
| + fake_driver_.reset_password_forms_calls(); |
| + LoadHTML(kFormWithoutPasswordsHTML); |
| + base::RunLoop().RunUntilIdle(); |
| + EXPECT_FALSE(fake_driver_.called_password_forms_parsed()); |
| + EXPECT_TRUE(fake_driver_.called_password_forms_rendered()); |
| + ASSERT_TRUE(static_cast<bool>(fake_driver_.password_forms_rendered())); |
| + EXPECT_TRUE(fake_driver_.password_forms_rendered()->empty()); |
| + |
| + fake_driver_.reset_password_forms_calls(); |
| LoadHTML(kNonDisplayedFormHTML); |
| base::RunLoop().RunUntilIdle(); |
| + EXPECT_TRUE(fake_driver_.called_password_forms_parsed()); |
| + ASSERT_TRUE(static_cast<bool>(fake_driver_.password_forms_parsed())); |
|
vabr (Chromium)
2017/04/13 06:44:18
Just out of curiosity -- why is the explicit cast
kolos1
2017/04/13 08:35:48
Removed casts.
|
| + EXPECT_FALSE(fake_driver_.password_forms_parsed()->empty()); |
| EXPECT_TRUE(fake_driver_.called_password_forms_rendered()); |
| ASSERT_TRUE(static_cast<bool>(fake_driver_.password_forms_rendered())); |
| EXPECT_TRUE(fake_driver_.password_forms_rendered()->empty()); |
| - fake_driver_.reset_password_forms_rendered(); |
| + fake_driver_.reset_password_forms_calls(); |
| LoadHTML(kNonVisibleFormHTML); |
| base::RunLoop().RunUntilIdle(); |
| + EXPECT_TRUE(fake_driver_.called_password_forms_parsed()); |
| + ASSERT_TRUE(static_cast<bool>(fake_driver_.password_forms_parsed())); |
| + EXPECT_FALSE(fake_driver_.password_forms_parsed()->empty()); |
| EXPECT_TRUE(fake_driver_.called_password_forms_rendered()); |
| ASSERT_TRUE(static_cast<bool>(fake_driver_.password_forms_rendered())); |
| EXPECT_TRUE(fake_driver_.password_forms_rendered()->empty()); |
| + |
| + fake_driver_.reset_password_forms_calls(); |
| + LoadHTML(kPasswordChangeFormHTML); |
| + base::RunLoop().RunUntilIdle(); |
| + EXPECT_TRUE(fake_driver_.called_password_forms_parsed()); |
| + ASSERT_TRUE(static_cast<bool>(fake_driver_.password_forms_parsed())); |
| + EXPECT_FALSE(fake_driver_.password_forms_parsed()->empty()); |
| + EXPECT_TRUE(fake_driver_.called_password_forms_rendered()); |
| + ASSERT_TRUE(static_cast<bool>(fake_driver_.password_forms_rendered())); |
| + EXPECT_FALSE(fake_driver_.password_forms_rendered()->empty()); |
| } |
| TEST_F(PasswordAutofillAgentTest, SendPasswordFormsTest_Redirection) { |
| - fake_driver_.reset_password_forms_rendered(); |
| + fake_driver_.reset_password_forms_calls(); |
| LoadHTML(kEmptyWebpage); |
| base::RunLoop().RunUntilIdle(); |
| EXPECT_FALSE(fake_driver_.called_password_forms_rendered()); |
| - fake_driver_.reset_password_forms_rendered(); |
| + fake_driver_.reset_password_forms_calls(); |
| LoadHTML(kRedirectionWebpage); |
| base::RunLoop().RunUntilIdle(); |
| EXPECT_FALSE(fake_driver_.called_password_forms_rendered()); |
| - fake_driver_.reset_password_forms_rendered(); |
| + fake_driver_.reset_password_forms_calls(); |
| LoadHTML(kSimpleWebpage); |
| base::RunLoop().RunUntilIdle(); |
| EXPECT_TRUE(fake_driver_.called_password_forms_rendered()); |
| - fake_driver_.reset_password_forms_rendered(); |
| + fake_driver_.reset_password_forms_calls(); |
| LoadHTML(kWebpageWithDynamicContent); |
| base::RunLoop().RunUntilIdle(); |
| EXPECT_TRUE(fake_driver_.called_password_forms_rendered()); |