1 // Copyright (c) 2012 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 CHROME_BROWSER_UI_BROWSER_NAVIGATOR_BROWSERTEST_H_
6 #define CHROME_BROWSER_UI_BROWSER_NAVIGATOR_BROWSERTEST_H_
10 #include "chrome/browser/ui/browser.h"
11 #include "chrome/test/base/in_process_browser_test.h"
12 #include "content/public/browser/notification_types.h"
21 struct NavigateParams
;
28 // Browsertest class for testing the browser navigation. It is also a base class
29 // for the |BrowserGuestModeNavigation| which tests navigation while in guest
31 class BrowserNavigatorTest
: public InProcessBrowserTest
,
32 public content::NotificationObserver
{
34 chrome::NavigateParams
MakeNavigateParams() const;
35 chrome::NavigateParams
MakeNavigateParams(Browser
* browser
) const;
37 Browser
* CreateEmptyBrowserForType(Browser::Type type
, Profile
* profile
);
38 Browser
* CreateEmptyBrowserForApp(Profile
* profile
);
40 content::WebContents
* CreateWebContents();
42 void RunSuppressTest(WindowOpenDisposition disposition
);
43 void RunUseNonIncognitoWindowTest(const GURL
& url
);
44 void RunDoNothingIfIncognitoIsForcedTest(const GURL
& url
);
46 // InProcessBrowserTest:
47 void SetUpCommandLine(base::CommandLine
* command_line
) override
;
49 // content::NotificationObserver:
50 void Observe(int type
,
51 const content::NotificationSource
& source
,
52 const content::NotificationDetails
& details
) override
;
54 bool OpenPOSTURLInNewForegroundTabAndGetTitle(const GURL
& url
,
55 const std::string
& post_data
,
56 bool is_browser_initiated
,
57 base::string16
* title
);
59 size_t created_tab_contents_count_
;
62 #endif // CHROME_BROWSER_UI_BROWSER_NAVIGATOR_BROWSERTEST_H_