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

Unified Diff: chrome/browser/ui/search/instant_page_unittest.cc

Issue 2144733004: Merge InstantPage into InstantTab. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix test. Created 4 years, 5 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
« no previous file with comments | « chrome/browser/ui/search/instant_page.cc ('k') | chrome/browser/ui/search/instant_tab.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/ui/search/instant_page_unittest.cc
diff --git a/chrome/browser/ui/search/instant_page_unittest.cc b/chrome/browser/ui/search/instant_page_unittest.cc
deleted file mode 100644
index c028d778bdfbccfa9ff7fa8a867257a637b27ee7..0000000000000000000000000000000000000000
--- a/chrome/browser/ui/search/instant_page_unittest.cc
+++ /dev/null
@@ -1,157 +0,0 @@
-// Copyright 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "chrome/browser/ui/search/instant_page.h"
-
-#include <stdint.h>
-
-#include <memory>
-
-#include "base/command_line.h"
-#include "chrome/browser/ui/search/search_tab_helper.h"
-#include "chrome/common/chrome_switches.h"
-#include "chrome/common/render_messages.h"
-#include "chrome/common/url_constants.h"
-#include "chrome/test/base/chrome_render_view_host_test_harness.h"
-#include "content/public/browser/navigation_controller.h"
-#include "content/public/browser/navigation_entry.h"
-#include "content/public/browser/web_contents.h"
-#include "content/public/test/mock_render_process_host.h"
-#include "ipc/ipc_test_sink.h"
-#include "testing/gmock/include/gmock/gmock.h"
-#include "testing/gtest/include/gtest/gtest.h"
-#include "url/gurl.h"
-
-class Profile;
-
-namespace {
-
-class FakePageDelegate : public InstantPage::Delegate {
- public:
- virtual ~FakePageDelegate() {
- }
-
- MOCK_METHOD2(InstantSupportDetermined,
- void(const content::WebContents* contents,
- bool supports_instant));
- MOCK_METHOD1(InstantPageRenderProcessGone,
- void(const content::WebContents* contents));
- MOCK_METHOD2(InstantPageAboutToNavigateMainFrame,
- void(const content::WebContents* contents,
- const GURL& url));
- MOCK_METHOD5(NavigateToURL,
- void(const content::WebContents* contents,
- const GURL& url,
- ui::PageTransition transition,
- WindowOpenDisposition disposition,
- bool is_search_type));
-};
-
-} // namespace
-
-class InstantPageTest : public ChromeRenderViewHostTestHarness {
- public:
- void SetUp() override;
-
- bool MessageWasSent(uint32_t id) {
- return process()->sink().GetFirstMessageMatching(id) != NULL;
- }
-
- std::unique_ptr<InstantPage> page;
- FakePageDelegate delegate;
-};
-
-void InstantPageTest::SetUp() {
- ChromeRenderViewHostTestHarness::SetUp();
- SearchTabHelper::CreateForWebContents(web_contents());
-}
-
-TEST_F(InstantPageTest, IsLocal) {
- page.reset(new InstantPage(&delegate));
- EXPECT_FALSE(page->supports_instant());
- EXPECT_FALSE(page->IsLocal());
- page->SetContents(web_contents());
- NavigateAndCommit(GURL(chrome::kChromeSearchLocalNtpUrl));
- EXPECT_TRUE(page->IsLocal());
- NavigateAndCommit(GURL("http://example.com"));
- EXPECT_FALSE(page->IsLocal());
-}
-
-TEST_F(InstantPageTest, DetermineIfPageSupportsInstant_Local) {
- page.reset(new InstantPage(&delegate));
- EXPECT_FALSE(page->supports_instant());
- page->SetContents(web_contents());
- NavigateAndCommit(GURL(chrome::kChromeSearchLocalNtpUrl));
- EXPECT_TRUE(page->IsLocal());
- EXPECT_CALL(delegate, InstantSupportDetermined(web_contents(), true))
- .Times(1);
- SearchTabHelper::FromWebContents(web_contents())->
- DetermineIfPageSupportsInstant();
- EXPECT_TRUE(page->supports_instant());
-}
-
-TEST_F(InstantPageTest, DetermineIfPageSupportsInstant_NonLocal) {
- page.reset(new InstantPage(&delegate));
- EXPECT_FALSE(page->supports_instant());
- page->SetContents(web_contents());
- NavigateAndCommit(GURL("chrome-search://foo/bar"));
- EXPECT_FALSE(page->IsLocal());
- process()->sink().ClearMessages();
- SearchTabHelper::FromWebContents(web_contents())->
- DetermineIfPageSupportsInstant();
- const IPC::Message* message = process()->sink().GetFirstMessageMatching(
- ChromeViewMsg_DetermineIfPageSupportsInstant::ID);
- ASSERT_TRUE(message != NULL);
- EXPECT_EQ(web_contents()->GetRoutingID(), message->routing_id());
-}
-
-TEST_F(InstantPageTest, PageURLDoesntBelongToInstantRenderer) {
- page.reset(new InstantPage(&delegate));
- EXPECT_FALSE(page->supports_instant());
- NavigateAndCommit(GURL(chrome::kChromeSearchLocalNtpUrl));
- page->SetContents(web_contents());
-
- // Navigate to a page URL that doesn't belong to Instant renderer.
- // SearchTabHelper::DeterminerIfPageSupportsInstant() should return
- // immediately without dispatching any message to the renderer.
- NavigateAndCommit(GURL("http://www.example.com"));
- EXPECT_FALSE(page->IsLocal());
- process()->sink().ClearMessages();
- EXPECT_CALL(delegate, InstantSupportDetermined(web_contents(), false))
- .Times(1);
-
- SearchTabHelper::FromWebContents(web_contents())->
- DetermineIfPageSupportsInstant();
- const IPC::Message* message = process()->sink().GetFirstMessageMatching(
- ChromeViewMsg_DetermineIfPageSupportsInstant::ID);
- ASSERT_TRUE(message == NULL);
- EXPECT_FALSE(page->supports_instant());
-}
-
-// Test to verify that ChromeViewMsg_DetermineIfPageSupportsInstant message
-// reply handler updates the instant support state in InstantPage.
-TEST_F(InstantPageTest, PageSupportsInstant) {
- page.reset(new InstantPage(&delegate));
- EXPECT_FALSE(page->supports_instant());
- page->SetContents(web_contents());
- NavigateAndCommit(GURL("chrome-search://foo/bar"));
- process()->sink().ClearMessages();
- SearchTabHelper::FromWebContents(web_contents())->
- DetermineIfPageSupportsInstant();
- const IPC::Message* message = process()->sink().GetFirstMessageMatching(
- ChromeViewMsg_DetermineIfPageSupportsInstant::ID);
- ASSERT_TRUE(message != NULL);
- EXPECT_EQ(web_contents()->GetRoutingID(), message->routing_id());
-
- EXPECT_CALL(delegate, InstantSupportDetermined(web_contents(), true))
- .Times(1);
-
- // Assume the page supports instant. Invoke the message reply handler to make
- // sure the InstantPage is notified about the instant support state.
- const content::NavigationEntry* entry =
- web_contents()->GetController().GetLastCommittedEntry();
- EXPECT_TRUE(entry);
- SearchTabHelper::FromWebContents(web_contents())->InstantSupportChanged(true);
- EXPECT_TRUE(page->supports_instant());
-}
« no previous file with comments | « chrome/browser/ui/search/instant_page.cc ('k') | chrome/browser/ui/search/instant_tab.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698