Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1263)

Unified Diff: content/browser/android/render_widget_host_connector_browsertest.cc

Issue 2840443002: Add a test for RenderWidgetHostConnector (Closed)
Patch Set: Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/android/render_widget_host_connector_browsertest.cc
diff --git a/content/browser/android/render_widget_host_connector_browsertest.cc b/content/browser/android/render_widget_host_connector_browsertest.cc
index bfa29e40cc2977a9fed87893a926139fc68fed1e..2856c7b999c734c2faa4f7e69477ac6eb1996f39 100644
--- a/content/browser/android/render_widget_host_connector_browsertest.cc
+++ b/content/browser/android/render_widget_host_connector_browsertest.cc
@@ -8,6 +8,7 @@
#include "content/public/browser/interstitial_page_delegate.h"
#include "content/public/test/browser_test_utils.h"
#include "content/public/test/content_browser_test_utils.h"
+#include "content/test/content_browser_test_utils_internal.h"
#include "net/dns/mock_host_resolver.h"
#include "net/test/embedded_test_server/embedded_test_server.h"
#include "url/gurl.h"
@@ -33,6 +34,26 @@ void RenderWidgetHostConnectorTest::SetUpOnMainThread() {
}
IN_PROC_BROWSER_TEST_F(RenderWidgetHostConnectorTest,
+ RenderViewCreatedBeforeConnector) {
+ GURL main_url(embedded_test_server()->GetURL("/page_with_popup.html"));
+ EXPECT_TRUE(NavigateToURL(shell(), main_url));
+
+ // Navigate to the enclosed <iframe>.
+ FrameTreeNode* iframe = web_contents()->GetFrameTree()->root()->child_at(0);
+ GURL frame_url(embedded_test_server()->GetURL("/title1.html"));
+ NavigateFrameToURL(iframe, frame_url);
+
+ // Open a popup from the iframe. This creates a render widget host view
+ // view before the corresponding web contents. Tests if rwhva gets connected.
+ Shell* new_shell = OpenPopup(iframe, GURL(url::kAboutBlankURL), "");
+ EXPECT_TRUE(new_shell);
+
+ auto* rwhva_popup = static_cast<RenderWidgetHostViewAndroid*>(
+ new_shell->web_contents()->GetRenderWidgetHostView());
+ EXPECT_TRUE(connector_in_rwhva(rwhva_popup) != nullptr);
+}
+
+IN_PROC_BROWSER_TEST_F(RenderWidgetHostConnectorTest,
UpdateRWHVAInConnectorAtRenderViewHostSwapping) {
net::EmbeddedTestServer https_server(net::EmbeddedTestServer::TYPE_HTTPS);
https_server.ServeFilesFromSourceDirectory("content/test/data");

Powered by Google App Engine
This is Rietveld 408576698