• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 #include "content/public/test/test_content_client_initializer.h"
6 
7 #include "content/browser/notification_service_impl.h"
8 #include "content/public/common/content_client.h"
9 #include "content/public/test/mock_render_process_host.h"
10 #include "content/test/test_content_browser_client.h"
11 #include "content/test/test_content_client.h"
12 #include "content/test/test_render_view_host_factory.h"
13 
14 namespace content {
15 
TestContentClientInitializer()16 TestContentClientInitializer::TestContentClientInitializer() {
17   notification_service_.reset(new NotificationServiceImpl());
18 
19   content_client_.reset(new TestContentClient);
20   SetContentClient(content_client_.get());
21 
22   content_browser_client_.reset(new TestContentBrowserClient());
23   content::SetBrowserClientForTesting(content_browser_client_.get());
24 }
25 
~TestContentClientInitializer()26 TestContentClientInitializer::~TestContentClientInitializer() {
27   test_render_view_host_factory_.reset();
28   rph_factory_.reset();
29   notification_service_.reset();
30 
31   SetContentClient(NULL);
32   content_client_.reset();
33 
34   content_browser_client_.reset();
35 }
36 
CreateTestRenderViewHosts()37 void TestContentClientInitializer::CreateTestRenderViewHosts() {
38 #if !defined(OS_IOS)
39   rph_factory_.reset(new MockRenderProcessHostFactory());
40   test_render_view_host_factory_.reset(
41       new TestRenderViewHostFactory(rph_factory_.get()));
42 #endif  // OS_IOS
43 }
44 
45 }  // namespace content
46