| Index: chrome/renderer/autofill/password_generation_agent_browsertest.cc
|
| diff --git a/chrome/renderer/autofill/password_generation_agent_browsertest.cc b/chrome/renderer/autofill/password_generation_agent_browsertest.cc
|
| index 7da0adfe1dbb9479d116792b9d458b5970e771c2..59873dc2fbf9cd355750109d69a43d0474a32ace 100644
|
| --- a/chrome/renderer/autofill/password_generation_agent_browsertest.cc
|
| +++ b/chrome/renderer/autofill/password_generation_agent_browsertest.cc
|
| @@ -250,18 +250,6 @@ const char kNewPasswordAutocompleteAttributeFormHTML[] =
|
| " <INPUT type = 'submit' value = 'LOGIN' />"
|
| "</FORM>";
|
|
|
| -const char ChangeDetectionScript[] =
|
| - "<script>"
|
| - " firstOnChangeCalled = false;"
|
| - " secondOnChangeCalled = false;"
|
| - " document.getElementById('first_password').onchange = function() {"
|
| - " firstOnChangeCalled = true;"
|
| - " };"
|
| - " document.getElementById('second_password').onchange = function() {"
|
| - " secondOnChangeCalled = true;"
|
| - " };"
|
| - "</script>";
|
| -
|
| const char kPasswordChangeFormHTML[] =
|
| "<FORM name = 'ChangeWithUsernameForm' action = 'http://www.bidule.com'> "
|
| " <INPUT type = 'text' id = 'username'/> "
|
| @@ -316,9 +304,15 @@ TEST_F(PasswordGenerationAgentTest, DetectionTest) {
|
| }
|
|
|
| TEST_F(PasswordGenerationAgentTest, FillTest) {
|
| + // Add event listeners for password fields.
|
| + std::vector<base::string16> variables_to_check;
|
| + std::string events_registration_script =
|
| + CreateScriptToRegisterListeners("first_password", &variables_to_check) +
|
| + CreateScriptToRegisterListeners("second_password", &variables_to_check);
|
| +
|
| // Make sure that we are enabled before loading HTML.
|
| - std::string html = std::string(kAccountCreationFormHTML) +
|
| - ChangeDetectionScript;
|
| + std::string html =
|
| + std::string(kAccountCreationFormHTML) + events_registration_script;
|
| LoadHTMLWithUserGesture(html.c_str());
|
| SetNotBlacklistedMessage(password_generation_, html.c_str());
|
| SetAccountCreationFormsDetectedMessage(password_generation_,
|
| @@ -346,19 +340,12 @@ TEST_F(PasswordGenerationAgentTest, FillTest) {
|
| EXPECT_TRUE(first_password_element.isAutofilled());
|
| EXPECT_TRUE(second_password_element.isAutofilled());
|
|
|
| - // Make sure onchange events are called.
|
| - int first_onchange_called = -1;
|
| - int second_onchange_called = -1;
|
| - ASSERT_TRUE(
|
| - ExecuteJavaScriptAndReturnIntValue(
|
| - base::ASCIIToUTF16("firstOnChangeCalled ? 1 : 0"),
|
| - &first_onchange_called));
|
| - EXPECT_EQ(1, first_onchange_called);
|
| - ASSERT_TRUE(
|
| - ExecuteJavaScriptAndReturnIntValue(
|
| - base::ASCIIToUTF16("secondOnChangeCalled ? 1 : 0"),
|
| - &second_onchange_called));
|
| - EXPECT_EQ(1, second_onchange_called);
|
| + // Make sure all events are called.
|
| + for (const base::string16& variable : variables_to_check) {
|
| + int value;
|
| + EXPECT_TRUE(ExecuteJavaScriptAndReturnIntValue(variable, &value));
|
| + EXPECT_EQ(1, value) << variable;
|
| + }
|
|
|
| // Focus moved to the next input field.
|
| // TODO(zysxqn): Change this back to the address element once Bug 90224
|
|
|