1 // Copyright (c) 2011 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. 4 5 #ifndef CHROME_BROWSER_UI_BROWSER_NAVIGATOR_BROWSERTEST_H_ 6 #define CHROME_BROWSER_UI_BROWSER_NAVIGATOR_BROWSERTEST_H_ 7 8 #include "chrome/browser/ui/browser.h" 9 #include "chrome/test/in_process_browser_test.h" 10 #include "content/common/notification_type.h" 11 12 class GURL; 13 class NotificationDetails; 14 class NotificationSource; 15 class Profile; 16 class TabContentsWrapper; 17 18 namespace browser { 19 struct NavigateParams; 20 } 21 22 // Browsertest class for testing the browser navigation. It is also a base class 23 // for the |BrowserGuestModeNavigation| which tests navigation while in guest 24 // mode. 25 class BrowserNavigatorTest : public InProcessBrowserTest, 26 public NotificationObserver { 27 protected: 28 GURL GetGoogleURL() const; 29 30 browser::NavigateParams MakeNavigateParams() const; 31 browser::NavigateParams MakeNavigateParams(Browser* browser) const; 32 33 Browser* CreateEmptyBrowserForType(Browser::Type type, Profile* profile); 34 35 TabContentsWrapper* CreateTabContents(); 36 37 void RunSuppressTest(WindowOpenDisposition disposition); 38 39 // NotificationObserver: 40 virtual void Observe(NotificationType type, const NotificationSource& source, 41 const NotificationDetails& details); 42 43 size_t created_tab_contents_count_; 44 }; 45 46 #endif // CHROME_BROWSER_UI_BROWSER_NAVIGATOR_BROWSERTEST_H_ 47