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"
17 struct NavigateParams
;
24 // Browsertest class for testing the browser navigation. It is also a base class
25 // for the |BrowserGuestModeNavigation| which tests navigation while in guest
27 class BrowserNavigatorTest
: public InProcessBrowserTest
,
28 public content::NotificationObserver
{
30 chrome::NavigateParams
MakeNavigateParams() const;
31 chrome::NavigateParams
MakeNavigateParams(Browser
* browser
) const;
33 Browser
* CreateEmptyBrowserForType(Browser::Type type
, Profile
* profile
);
34 Browser
* CreateEmptyBrowserForApp(Browser::Type type
, Profile
* profile
);
36 content::WebContents
* CreateWebContents();
38 void RunSuppressTest(WindowOpenDisposition disposition
);
39 void RunUseNonIncognitoWindowTest(const GURL
& url
);
40 void RunDoNothingIfIncognitoIsForcedTest(const GURL
& url
);
42 // content::NotificationObserver:
43 virtual void Observe(int type
,
44 const content::NotificationSource
& source
,
45 const content::NotificationDetails
& details
) OVERRIDE
;
47 bool OpenPOSTURLInNewForegroundTabAndGetTitle(const GURL
& url
,
48 const std::string
& post_data
,
49 bool is_browser_initiated
,
50 base::string16
* title
);
52 size_t created_tab_contents_count_
;
55 #endif // CHROME_BROWSER_UI_BROWSER_NAVIGATOR_BROWSERTEST_H_