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 12class GURL; 13class NotificationDetails; 14class NotificationSource; 15class Profile; 16class TabContentsWrapper; 17 18namespace browser { 19struct 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. 25class 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