diff options
author | shinyak@google.com <shinyak@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-08-31 09:04:28 +0000 |
---|---|---|
committer | shinyak@google.com <shinyak@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-08-31 09:04:28 +0000 |
commit | 90fbfe18d457ceb0657bf55ca7e6c53e7f37887c (patch) | |
tree | cc19e410426c47a27c83951526967991d169aa23 /content/browser | |
parent | 52a4afa3c977ddcfcdcd5ddace575e4cefdc431a (diff) | |
download | chromium_src-90fbfe18d457ceb0657bf55ca7e6c53e7f37887c.zip chromium_src-90fbfe18d457ceb0657bf55ca7e6c53e7f37887c.tar.gz chromium_src-90fbfe18d457ceb0657bf55ca7e6c53e7f37887c.tar.bz2 |
New windows opened in javascript with target = "_blank" should
have an empty name.
BUG=88129
TEST=InProcessRenderViewBrowserTest::*
Review URL: http://codereview.chromium.org/7497058
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98946 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/browser')
-rw-r--r-- | content/browser/renderer_host/render_view_host_browsertest.cc | 39 |
1 files changed, 37 insertions, 2 deletions
diff --git a/content/browser/renderer_host/render_view_host_browsertest.cc b/content/browser/renderer_host/render_view_host_browsertest.cc index fa2c9e6..89e30ef 100644 --- a/content/browser/renderer_host/render_view_host_browsertest.cc +++ b/content/browser/renderer_host/render_view_host_browsertest.cc @@ -50,7 +50,9 @@ class ExecuteNotificationObserver : public NotificationObserver { class RenderViewHostTest : public InProcessBrowserTest { public: - RenderViewHostTest() : last_execute_id_(0) {} + RenderViewHostTest() : last_execute_id_(0) { + EnableDOMAutomation(); + } void ExecuteJavascriptAndGetValue(const char* script, ExecuteNotificationObserver* out_result) { @@ -71,6 +73,17 @@ class RenderViewHostTest : public InProcessBrowserTest { last_execute_id_ = execute_id; } + protected: + bool GetCreatedWindowName(const GURL& url, + const wchar_t* function, + std::string* window_name) { + ui_test_utils::NavigateToURL(browser(), url); + + return ui_test_utils::ExecuteJavaScriptAndExtractString( + browser()->GetSelectedTabContents()->render_view_host(), + L"", function, window_name); + } + private: int last_execute_id_; }; @@ -235,7 +248,7 @@ class RenderViewHostTestTabContentsObserver : public TabContentsObserver { IN_PROC_BROWSER_TEST_F(RenderViewHostTest, FrameNavigateSocketAddress) { ASSERT_TRUE(test_server()->Start()); RenderViewHostTestTabContentsObserver observer( - browser()->GetSelectedTabContents()); + browser()->GetSelectedTabContents()); GURL test_url = test_server()->GetURL("files/simple.html"); ui_test_utils::NavigateToURL(browser(), test_url); @@ -244,3 +257,25 @@ IN_PROC_BROWSER_TEST_F(RenderViewHostTest, FrameNavigateSocketAddress) { observer.observed_socket_address().ToString()); EXPECT_EQ(1, observer.navigation_count()); } + +// Regression test for http://crbug.com/88129 +IN_PROC_BROWSER_TEST_F(RenderViewHostTest, WindowOpen1) { + ASSERT_TRUE(test_server()->Start()); + + GURL url(test_server()->GetURL("files/window.open.blank.html")); + std::string window_name; + ASSERT_TRUE(GetCreatedWindowName(url, L"openWindow1();", &window_name)); + + EXPECT_EQ(window_name, "blank") << "Actual Window Name: " << window_name; +} + +// Regression test for http://crbug.com/88129 +IN_PROC_BROWSER_TEST_F(RenderViewHostTest, WindowOpen2) { + ASSERT_TRUE(test_server()->Start()); + + GURL url(test_server()->GetURL("files/window.open.blank.html")); + std::string window_name; + ASSERT_TRUE(GetCreatedWindowName(url, L"openWindow2();", &window_name)); + + EXPECT_EQ(window_name, "") << "Actual Window Name: " << window_name; +} |