Index: chrome/browser/password_manager/password_manager_browsertest.cc |
diff --git a/chrome/browser/password_manager/password_manager_browsertest.cc b/chrome/browser/password_manager/password_manager_browsertest.cc |
index 3952d9c9ec106a73aeb1a28af30aadbcdefe5316..ff035f75c99e0270aee792c54a07af6cc730657f 100644 |
--- a/chrome/browser/password_manager/password_manager_browsertest.cc |
+++ b/chrome/browser/password_manager/password_manager_browsertest.cc |
@@ -176,6 +176,27 @@ IN_PROC_BROWSER_TEST_F(PasswordManagerBrowserTest, |
EXPECT_TRUE(observer.infobar_shown()); |
} |
+IN_PROC_BROWSER_TEST_F(PasswordManagerBrowserTest, |
+ PromptForDynamicForm) { |
+ ASSERT_TRUE(test_server()->Start()); |
+ |
+ GURL url = test_server()->GetURL("files/password/dynamic_password_form.html"); |
+ ui_test_utils::NavigateToURL(browser(), url); |
Garrett Casto
2013/09/13 18:30:05
Use NavigateToFile() for this or else the test is
guohui
2013/09/13 20:07:57
Done.
|
+ |
+ // Fill the dynamic password form and submit. |
+ NavigationObserver observer(WebContents()); |
+ std::string fill_and_submit = |
+ "document.getElementById('create_form_button').click();" |
+ "window.setTimeout(function() {" |
Garrett Casto
2013/09/13 18:30:05
Out of curiosity, why do you need to use a setTime
guohui
2013/09/13 20:07:57
yes, because dynamic_form is inserted in click han
|
+ " document.dynamic_form.username.value = 'temp';" |
+ " document.dynamic_form.password.value = 'random';" |
+ " document.dynamic_form.submit();" |
+ "}, 0)"; |
+ ASSERT_TRUE(content::ExecuteScript(RenderViewHost(), fill_and_submit)); |
+ observer.Wait(); |
+ EXPECT_TRUE(observer.infobar_shown()); |
+} |
+ |
IN_PROC_BROWSER_TEST_F(PasswordManagerBrowserTest, NoPromptForNavigation) { |
NavigateToFile("/password/password_form.html"); |