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

Unified Diff: chrome/browser/renderer_host/test/render_view_host_browsertest.cc

Issue 6488010: Propagate the remote socket address to URLRequest and to ViewHostMsg_FrameNavigate. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Address eroman's comments Created 9 years, 10 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: chrome/browser/renderer_host/test/render_view_host_browsertest.cc
diff --git a/chrome/browser/renderer_host/test/render_view_host_browsertest.cc b/chrome/browser/renderer_host/test/render_view_host_browsertest.cc
index 6e37723c68e10a476ad23a94f8720aeb111a499e..3081786f614f04530a33b74653b788a02c8e6821 100644
--- a/chrome/browser/renderer_host/test/render_view_host_browsertest.cc
+++ b/chrome/browser/renderer_host/test/render_view_host_browsertest.cc
@@ -9,10 +9,13 @@
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/renderer_host/render_view_host.h"
#include "chrome/browser/tab_contents/tab_contents.h"
+#include "chrome/browser/tab_contents/tab_contents_observer.h"
#include "chrome/browser/tab_contents/tab_specific_content_settings.h"
#include "chrome/browser/ui/browser.h"
+#include "chrome/common/render_messages_params.h"
#include "chrome/test/in_process_browser_test.h"
#include "chrome/test/ui_test_utils.h"
+#include "net/base/host_port_pair.h"
#include "net/test/test_server.h"
typedef std::pair<int, Value*> ExecuteDetailType;
@@ -223,3 +226,43 @@ IN_PROC_BROWSER_TEST_F(RenderViewHostTest, RedirectLoopCookies) {
EXPECT_TRUE(tab_contents->GetTabSpecificContentSettings()->IsContentBlocked(
CONTENT_SETTINGS_TYPE_COOKIES));
}
+
+class RenderViewHostTestTabContentsObserver : public TabContentsObserver {
+ public:
+ explicit RenderViewHostTestTabContentsObserver(TabContents* tab_contents)
+ : TabContentsObserver(tab_contents),
+ navigation_count_(0) {}
+ virtual ~RenderViewHostTestTabContentsObserver() {}
+
+ virtual void DidNavigateMainFramePostCommit(
+ const NavigationController::LoadCommittedDetails& details,
+ const ViewHostMsg_FrameNavigate_Params& params) {
+ observed_socket_address_ = params.socket_address;
+ ++navigation_count_;
+ }
+
+ const net::HostPortPair& observed_socket_address() const {
+ return observed_socket_address_;
+ }
+
+ int navigation_count() const { return navigation_count_; }
+
+ private:
+ net::HostPortPair observed_socket_address_;
+ int navigation_count_;
+
+ DISALLOW_COPY_AND_ASSIGN(RenderViewHostTestTabContentsObserver);
+};
+
+IN_PROC_BROWSER_TEST_F(RenderViewHostTest, FrameNavigateSocketAddress) {
+ ASSERT_TRUE(test_server()->Start());
+ RenderViewHostTestTabContentsObserver observer(
+ browser()->GetSelectedTabContents());
+
+ GURL test_url = test_server()->GetURL("files/simple.html");
+ ui_test_utils::NavigateToURL(browser(), test_url);
+
+ EXPECT_EQ(test_server()->host_port_pair().ToString(),
+ observer.observed_socket_address().ToString());
+ EXPECT_EQ(1, observer.navigation_count());
+}

Powered by Google App Engine
This is Rietveld 408576698