Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(38)

Side by Side Diff: content/shell/renderer/layout_test/layout_test_render_process_observer.cc

Issue 1821413003: Remove logic for lazy initialization of WebKit. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix test Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2014 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/shell/renderer/layout_test/layout_test_render_process_observer .h" 5 #include "content/shell/renderer/layout_test/layout_test_render_process_observer .h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "components/test_runner/event_sender.h" 8 #include "components/test_runner/event_sender.h"
9 #include "components/test_runner/test_interfaces.h" 9 #include "components/test_runner/test_interfaces.h"
10 #include "components/test_runner/web_test_interfaces.h" 10 #include "components/test_runner/web_test_interfaces.h"
(...skipping 25 matching lines...) Expand all
36 return g_instance; 36 return g_instance;
37 } 37 }
38 38
39 LayoutTestRenderProcessObserver::LayoutTestRenderProcessObserver() 39 LayoutTestRenderProcessObserver::LayoutTestRenderProcessObserver()
40 : main_test_runner_(NULL), 40 : main_test_runner_(NULL),
41 test_delegate_(NULL) { 41 test_delegate_(NULL) {
42 CHECK(!g_instance); 42 CHECK(!g_instance);
43 g_instance = this; 43 g_instance = this;
44 RenderThread::Get()->AddObserver(this); 44 RenderThread::Get()->AddObserver(this);
45 EnableRendererLayoutTestMode(); 45 EnableRendererLayoutTestMode();
46 }
47 46
48 LayoutTestRenderProcessObserver::~LayoutTestRenderProcessObserver() {
49 CHECK(g_instance == this);
50 g_instance = NULL;
51 }
52
53 void LayoutTestRenderProcessObserver::SetTestDelegate(
54 test_runner::WebTestDelegate* delegate) {
55 test_interfaces_->SetDelegate(delegate);
56 test_delegate_ = delegate;
57 }
58
59 void LayoutTestRenderProcessObserver::SetMainWindow(RenderView* view) {
60 BlinkTestRunner* test_runner = BlinkTestRunner::Get(view);
61 test_interfaces_->SetWebView(view->GetWebView(), test_runner->proxy());
62 main_test_runner_ = test_runner;
63 }
64
65 void LayoutTestRenderProcessObserver::WebKitInitialized() {
66 // We always expose GC to layout tests. 47 // We always expose GC to layout tests.
67 std::string flags("--expose-gc"); 48 std::string flags("--expose-gc");
68 v8::V8::SetFlagsFromString(flags.c_str(), static_cast<int>(flags.size())); 49 v8::V8::SetFlagsFromString(flags.c_str(), static_cast<int>(flags.size()));
69 50
70 if (!base::CommandLine::ForCurrentProcess()->HasSwitch( 51 if (!base::CommandLine::ForCurrentProcess()->HasSwitch(
71 switches::kStableReleaseMode)) { 52 switches::kStableReleaseMode)) {
72 WebRuntimeFeatures::enableTestOnlyFeatures(true); 53 WebRuntimeFeatures::enableTestOnlyFeatures(true);
73 } 54 }
74 55
75 test_interfaces_.reset(new test_runner::WebTestInterfaces); 56 test_interfaces_.reset(new test_runner::WebTestInterfaces);
76 test_interfaces_->ResetAll(); 57 test_interfaces_->ResetAll();
77 test_interfaces_->SetSendWheelGestures(UseGestureBasedWheelScrolling()); 58 test_interfaces_->SetSendWheelGestures(UseGestureBasedWheelScrolling());
78 if (base::CommandLine::ForCurrentProcess()->HasSwitch( 59 if (base::CommandLine::ForCurrentProcess()->HasSwitch(
79 switches::kEnableFontAntialiasing)) { 60 switches::kEnableFontAntialiasing)) {
80 blink::setFontAntialiasingEnabledForTest(true); 61 blink::setFontAntialiasingEnabledForTest(true);
81 } 62 }
82 if (base::CommandLine::ForCurrentProcess()->HasSwitch( 63 if (base::CommandLine::ForCurrentProcess()->HasSwitch(
83 switches::kAlwaysUseComplexText)) { 64 switches::kAlwaysUseComplexText)) {
84 blink::setAlwaysUseComplexTextForTest(true); 65 blink::setAlwaysUseComplexTextForTest(true);
85 } 66 }
86 } 67 }
87 68
69 LayoutTestRenderProcessObserver::~LayoutTestRenderProcessObserver() {
70 CHECK(g_instance == this);
71 g_instance = NULL;
72 }
73
74 void LayoutTestRenderProcessObserver::SetTestDelegate(
75 test_runner::WebTestDelegate* delegate) {
76 test_interfaces_->SetDelegate(delegate);
77 test_delegate_ = delegate;
78 }
79
80 void LayoutTestRenderProcessObserver::SetMainWindow(RenderView* view) {
81 BlinkTestRunner* test_runner = BlinkTestRunner::Get(view);
82 test_interfaces_->SetWebView(view->GetWebView(), test_runner->proxy());
83 main_test_runner_ = test_runner;
84 }
85
88 void LayoutTestRenderProcessObserver::OnRenderProcessShutdown() { 86 void LayoutTestRenderProcessObserver::OnRenderProcessShutdown() {
89 test_interfaces_.reset(); 87 test_interfaces_.reset();
90 } 88 }
91 89
92 bool LayoutTestRenderProcessObserver::OnControlMessageReceived( 90 bool LayoutTestRenderProcessObserver::OnControlMessageReceived(
93 const IPC::Message& message) { 91 const IPC::Message& message) {
94 bool handled = true; 92 bool handled = true;
95 IPC_BEGIN_MESSAGE_MAP(LayoutTestRenderProcessObserver, message) 93 IPC_BEGIN_MESSAGE_MAP(LayoutTestRenderProcessObserver, message)
96 IPC_MESSAGE_HANDLER(ShellViewMsg_SetWebKitSourceDir, OnSetWebKitSourceDir) 94 IPC_MESSAGE_HANDLER(ShellViewMsg_SetWebKitSourceDir, OnSetWebKitSourceDir)
97 IPC_MESSAGE_UNHANDLED(handled = false) 95 IPC_MESSAGE_UNHANDLED(handled = false)
98 IPC_END_MESSAGE_MAP() 96 IPC_END_MESSAGE_MAP()
99 97
100 return handled; 98 return handled;
101 } 99 }
102 100
103 void LayoutTestRenderProcessObserver::OnSetWebKitSourceDir( 101 void LayoutTestRenderProcessObserver::OnSetWebKitSourceDir(
104 const base::FilePath& webkit_source_dir) { 102 const base::FilePath& webkit_source_dir) {
105 webkit_source_dir_ = webkit_source_dir; 103 webkit_source_dir_ = webkit_source_dir;
106 } 104 }
107 105
108 } // namespace content 106 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698