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. 4 5 #ifndef CONTENT_TEST_CONTENT_BROWSER_TEST_H_ 6 #define CONTENT_TEST_CONTENT_BROWSER_TEST_H_ 7 8 #include "base/memory/scoped_ptr.h" 9 #include "content/public/test/browser_test.h" 10 #include "content/public/test/browser_test_base.h" 11 12 class GURL; 13 14 namespace content { 15 class ContentRendererClient; 16 class Shell; 17 class ShellMainDelegate; 18 19 class ContentBrowserTest : public BrowserTestBase { 20 protected: 21 ContentBrowserTest(); 22 virtual ~ContentBrowserTest(); 23 24 // testing::Test: 25 virtual void SetUp() OVERRIDE; 26 virtual void TearDown() OVERRIDE; 27 28 // BrowserTestBase: 29 virtual void RunTestOnMainThreadLoop() OVERRIDE; 30 31 protected: 32 // Creates a new window and loads about:blank. 33 Shell* CreateBrowser(); 34 35 // Creates an off-the-record window and loads about:blank. 36 Shell* CreateOffTheRecordBrowser(); 37 38 // Returns the window for the test. 39 Shell* shell() const { return shell_; } 40 41 private: 42 scoped_ptr<ShellMainDelegate> shell_main_delegate_; 43 44 Shell* shell_; 45 46 bool setup_called_; 47 48 // ContentRendererClient when running in single-process mode. 49 scoped_ptr<ContentRendererClient> single_process_renderer_client_; 50 }; 51 52 } // namespace content 53 54 #endif // CONTENT_TEST_CONTENT_BROWSER_TEST_H_ 55