PlzNavigate: enable browser side navigation support in content_unittests
[chromium-blink-merge.git] / content / test / browser_side_navigation_test_utils.h
bloba2daa6e1bd308b88c5f7ffe6d74de9d30d5eacd9
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CONTENT_TEST_BROWSER_SIDE_NAVIGATION_TEST_UTILS_H_
6 #define CONTENT_TEST_BROWSER_SIDE_NAVIGATION_TEST_UTILS_H_
8 #include "base/macros.h"
9 #include "base/memory/scoped_ptr.h"
11 namespace content {
13 class StreamHandle;
15 // Initializes the browser side navigation test utils. Following this call, all
16 // NavigationURLLoader objects created will be TestNavigationURLLoaders instead
17 // of NavigationURLloaderImpls. This should be called before any call in the UI
18 // thread unit tests that will start a navigation (eg.
19 // TestWebContents::NavigateAndCommit).
20 void BrowserSideNavigationSetUp();
22 // Tears down the browser side navigation test utils.
23 void BrowserSideNavigationTearDown();
25 // Returns an empty stream. Used when faking a navigation commit notification
26 // from the IO thread with a TestNavigationURLLoader.
27 scoped_ptr<StreamHandle> MakeEmptyStream();
29 // If a test needs to run with browser side navigation enabled, call this
30 // function before doing any setup. In particular, for tests inheriting from
31 // RenderViewHostTestHarness, call this function before calling
32 // RenderViewHostTestHarness::SetUp.
33 void EnableBrowserSideNavigation();
35 } // namespace content
37 #endif // CONTENT_TEST_BROWSER_SIDE_NAVIGATION_TEST_UTILS_H_