- add sources.
[platform/framework/web/crosswalk.git] / src / content / public / test / test_content_client_initializer.cc
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
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
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
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