Commit 9804193a authored by jam@chromium.org's avatar jam@chromium.org

Make TestTabContents::TestDidNavigate not take a...

Make TestTabContents::TestDidNavigate not take a ViewHostMsg_FrameNavigate_Params, since that's an internal content IPC struct.

BUG=98716
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=113006
Review URL: http://codereview.chromium.org/8801003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@113050 0039d316-1c4b-4281-b951-d872f2087c98
parent 3a3a0faa
......@@ -8,7 +8,6 @@
#include "chrome/test/base/chrome_render_view_host_test_harness.h"
#include "content/browser/tab_contents/navigation_entry.h"
#include "content/browser/tab_contents/test_tab_contents.h"
#include "content/common/view_messages.h"
#include "content/test/test_browser_thread.h"
using content::BrowserThread;
......@@ -75,10 +74,9 @@ class OfflineLoadPageTest : public ChromeRenderViewHostTestHarness {
}
void Navigate(const char* url, int page_id) {
ViewHostMsg_FrameNavigate_Params params;
InitNavigateParams(
&params, page_id, GURL(url), content::PAGE_TRANSITION_TYPED);
contents()->TestDidNavigate(contents()->render_view_host(), params);
contents()->TestDidNavigate(
contents()->render_view_host(), page_id, GURL(url),
content::PAGE_TRANSITION_TYPED);
}
void ShowInterstitial(const char* url) {
......
......@@ -22,12 +22,13 @@
#include "chrome/test/base/testing_profile.h"
#include "content/browser/tab_contents/tab_contents.h"
#include "content/browser/tab_contents/test_tab_contents.h"
#include "content/common/view_messages.h"
#include "content/public/common/page_transition_types.h"
#include "content/public/common/referrer.h"
#include "content/test/test_browser_thread.h"
#include "googleurl/src/gurl.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebReferrerPolicy.h"
using ::testing::Return;
using ::testing::StrictMock;
......@@ -97,17 +98,14 @@ class BrowserFeatureExtractorTest : public ChromeRenderViewHostTestHarness {
type, std::string());
static int page_id = 0;
ViewHostMsg_FrameNavigate_Params params;
InitNavigateParams(&params, ++page_id, url, type);
params.referrer =
content::Referrer(referrer, WebKit::WebReferrerPolicyDefault);
RenderViewHost* rvh = contents()->pending_rvh();
if (!rvh) {
rvh = contents()->render_view_host();
}
contents()->ProceedWithCrossSiteNavigation();
contents()->TestDidNavigate(rvh, params);
contents()->TestDidNavigateWithReferrer(
rvh, ++page_id, url,
content::Referrer(referrer, WebKit::WebReferrerPolicyDefault), type);
}
bool ExtractFeatures(ClientPhishingRequest* request) {
......
......@@ -11,7 +11,6 @@
#include "chrome/test/base/chrome_render_view_host_test_harness.h"
#include "content/browser/tab_contents/navigation_entry.h"
#include "content/browser/tab_contents/test_tab_contents.h"
#include "content/common/view_messages.h"
#include "content/test/test_browser_thread.h"
using content::BrowserThread;
......@@ -110,10 +109,9 @@ class SafeBrowsingBlockingPageTest : public ChromeRenderViewHostTestHarness,
}
void Navigate(const char* url, int page_id) {
ViewHostMsg_FrameNavigate_Params params;
InitNavigateParams(
&params, page_id, GURL(url), content::PAGE_TRANSITION_TYPED);
contents()->TestDidNavigate(contents()->render_view_host(), params);
contents()->TestDidNavigate(
contents()->render_view_host(), page_id, GURL(url),
content::PAGE_TRANSITION_TYPED);
}
void GoBackCrossSite() {
......@@ -122,10 +120,9 @@ class SafeBrowsingBlockingPageTest : public ChromeRenderViewHostTestHarness,
contents()->controller().GoBack();
// The navigation should commit in the pending RVH.
ViewHostMsg_FrameNavigate_Params params;
InitNavigateParams(&params, entry->page_id(), GURL(entry->url()),
content::PAGE_TRANSITION_TYPED);
contents()->TestDidNavigate(contents()->pending_rvh(), params);
contents()->TestDidNavigate(
contents()->pending_rvh(), entry->page_id(), GURL(entry->url()),
content::PAGE_TRANSITION_TYPED);
}
void ShowInterstitial(bool is_subresource, const char* url) {
......
......@@ -218,10 +218,7 @@ TEST_F(DevToolsManagerTest, ReattachOnCancelPendingNavigation) {
const GURL url("http://www.google.com");
controller().LoadURL(
url, content::Referrer(), content::PAGE_TRANSITION_TYPED, std::string());
ViewHostMsg_FrameNavigate_Params params1;
InitNavigateParams(&params1, 1, url, content::PAGE_TRANSITION_TYPED);
TestRenderViewHost* orig_rvh = rvh();
contents()->TestDidNavigate(orig_rvh, params1);
contents()->TestDidNavigate(rvh(), 1, url, content::PAGE_TRANSITION_TYPED);
EXPECT_FALSE(contents()->cross_navigation_pending());
TestDevToolsClientHost client_host;
......@@ -241,7 +238,7 @@ TEST_F(DevToolsManagerTest, ReattachOnCancelPendingNavigation) {
// Interrupt pending navigation and navigate back to the original site.
controller().LoadURL(
url, content::Referrer(), content::PAGE_TRANSITION_TYPED, std::string());
contents()->TestDidNavigate(orig_rvh, params1);
contents()->TestDidNavigate(rvh(), 1, url, content::PAGE_TRANSITION_TYPED);
EXPECT_FALSE(contents()->cross_navigation_pending());
EXPECT_EQ(&client_host, devtools_manager->GetDevToolsClientHostFor(
DevToolsAgentHostRegistry::GetDevToolsAgentHost(rvh())));
......
......@@ -597,7 +597,7 @@ TEST_F(RenderViewHostManagerTest, PageDoesBackAndReload) {
params.was_within_same_page = false;
params.is_post = false;
params.content_state = webkit_glue::CreateHistoryStateForURL(GURL(kUrl2));
contents()->TestDidNavigate(evil_rvh, params);
contents()->DidNavigate(evil_rvh, params);
// That should have cancelled the pending RVH, and the evil RVH should be the
// current one.
......
......@@ -11,7 +11,10 @@
#include "content/browser/renderer_host/render_view_host.h"
#include "content/browser/renderer_host/test_render_view_host.h"
#include "content/browser/site_instance.h"
#include "content/common/view_messages.h"
#include "content/public/common/page_transition_types.h"
#include "webkit/glue/password_form.h"
#include "webkit/glue/webkit_glue.h"
TestTabContents::TestTabContents(content::BrowserContext* browser_context,
SiteInstance* instance)
......@@ -32,6 +35,43 @@ TestRenderViewHost* TestTabContents::pending_rvh() const {
render_manager_.pending_render_view_host_);
}
void TestTabContents::TestDidNavigate(RenderViewHost* render_view_host,
int page_id,
const GURL& url,
content::PageTransition transition) {
TestDidNavigateWithReferrer(render_view_host,
page_id,
url,
content::Referrer(),
transition);
}
void TestTabContents::TestDidNavigateWithReferrer(
RenderViewHost* render_view_host,
int page_id,
const GURL& url,
const content::Referrer& referrer,
content::PageTransition transition) {
ViewHostMsg_FrameNavigate_Params params;
params.page_id = page_id;
params.url = url;
params.referrer = referrer;
params.transition = transition;
params.redirects = std::vector<GURL>();
params.should_update_history = false;
params.searchable_form_url = GURL();
params.searchable_form_encoding = std::string();
params.password_form = webkit_glue::PasswordForm();
params.security_info = std::string();
params.gesture = NavigationGestureUser;
params.was_within_same_page = false;
params.is_post = false;
params.content_state = webkit_glue::CreateHistoryStateForURL(GURL(url));
DidNavigate(render_view_host, params);
}
bool TestTabContents::CreateRenderViewForRenderManager(
RenderViewHost* render_view_host) {
// This will go to a TestRenderViewHost.
......
......@@ -7,6 +7,7 @@
#pragma once
#include "content/browser/tab_contents/tab_contents.h"
#include "content/public/common/page_transition_types.h"
#include "webkit/glue/webpreferences.h"
class TestRenderViewHost;
......@@ -30,11 +31,15 @@ class TestTabContents : public TabContents {
// alternatives without using command-line switches.
bool ShouldTransitionCrossSite() { return transition_cross_site; }
// Promote DidNavigate to public.
void TestDidNavigate(RenderViewHost* render_view_host,
const ViewHostMsg_FrameNavigate_Params& params) {
DidNavigate(render_view_host, params);
}
int page_id,
const GURL& url,
content::PageTransition transition);
void TestDidNavigateWithReferrer(RenderViewHost* render_view_host,
int page_id,
const GURL& url,
const content::Referrer& referrer,
content::PageTransition transition);
// Promote GetWebkitPrefs to public.
WebPreferences TestGetWebkitPrefs() {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment