| OLD | NEW |
| 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_content_renderer_client
.h" | 5 #include "content/shell/renderer/layout_test/layout_test_content_renderer_client
.h" |
| 6 | 6 |
| 7 #include "base/callback.h" | 7 #include "base/callback.h" |
| 8 #include "base/command_line.h" | 8 #include "base/command_line.h" |
| 9 #include "base/debug/debugger.h" | 9 #include "base/debug/debugger.h" |
| 10 #include "components/test_runner/mock_credential_manager_client.h" | 10 #include "components/test_runner/mock_credential_manager_client.h" |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 46 using blink::WebRTCPeerConnectionHandler; | 46 using blink::WebRTCPeerConnectionHandler; |
| 47 using blink::WebRTCPeerConnectionHandlerClient; | 47 using blink::WebRTCPeerConnectionHandlerClient; |
| 48 using blink::WebThemeEngine; | 48 using blink::WebThemeEngine; |
| 49 | 49 |
| 50 namespace content { | 50 namespace content { |
| 51 | 51 |
| 52 namespace { | 52 namespace { |
| 53 | 53 |
| 54 void WebTestProxyCreated(RenderView* render_view, | 54 void WebTestProxyCreated(RenderView* render_view, |
| 55 test_runner::WebTestProxyBase* proxy) { | 55 test_runner::WebTestProxyBase* proxy) { |
| 56 test_runner::WebTestInterfaces* interfaces = |
| 57 LayoutTestRenderThreadObserver::GetInstance()->test_interfaces(); |
| 58 |
| 56 BlinkTestRunner* test_runner = new BlinkTestRunner(render_view); | 59 BlinkTestRunner* test_runner = new BlinkTestRunner(render_view); |
| 60 // TODO(lukasza): Using the 1st BlinkTestRunner as the main delegate is wrong, |
| 61 // but it is difficult to change because this behavior has been baked for a |
| 62 // long time into test assumptions (i.e. which PrintMessage gets delivered to |
| 63 // the browser depends on this). |
| 64 static bool first_test_runner = true; |
| 65 if (first_test_runner) { |
| 66 first_test_runner = false; |
| 67 interfaces->SetDelegate(test_runner); |
| 68 } |
| 69 |
| 57 proxy->set_delegate(test_runner); | 70 proxy->set_delegate(test_runner); |
| 58 | |
| 59 if (!LayoutTestRenderThreadObserver::GetInstance()->test_delegate()) { | |
| 60 LayoutTestRenderThreadObserver::GetInstance()->SetTestDelegate( | |
| 61 test_runner); | |
| 62 } | |
| 63 proxy->set_view_test_client(LayoutTestRenderThreadObserver::GetInstance() | 71 proxy->set_view_test_client(LayoutTestRenderThreadObserver::GetInstance() |
| 64 ->test_interfaces() | 72 ->test_interfaces() |
| 65 ->CreateWebViewTestClient(proxy)); | 73 ->CreateWebViewTestClient(proxy)); |
| 66 proxy->SetInterfaces( | 74 proxy->SetInterfaces(interfaces); |
| 67 LayoutTestRenderThreadObserver::GetInstance()->test_interfaces()); | |
| 68 } | 75 } |
| 69 | 76 |
| 70 void WebFrameTestProxyCreated(RenderFrame* render_frame, | 77 void WebFrameTestProxyCreated(RenderFrame* render_frame, |
| 71 test_runner::WebFrameTestProxyBase* proxy) { | 78 test_runner::WebFrameTestProxyBase* proxy) { |
| 72 test_runner::WebTestProxyBase* web_test_proxy_base = | 79 test_runner::WebTestProxyBase* web_test_proxy_base = |
| 73 GetWebTestProxyBase(render_frame->GetRenderView()); | 80 GetWebTestProxyBase(render_frame->GetRenderView()); |
| 74 proxy->set_test_client(LayoutTestRenderThreadObserver::GetInstance() | 81 proxy->set_test_client(LayoutTestRenderThreadObserver::GetInstance() |
| 75 ->test_interfaces() | 82 ->test_interfaces() |
| 76 ->CreateWebFrameTestClient(web_test_proxy_base)); | 83 ->CreateWebFrameTestClient(web_test_proxy_base)); |
| 77 } | 84 } |
| (...skipping 28 matching lines...) Expand all Loading... |
| 106 proxy->Reset(); | 113 proxy->Reset(); |
| 107 proxy->SetSendWheelGestures(UseGestureBasedWheelScrolling()); | 114 proxy->SetSendWheelGestures(UseGestureBasedWheelScrolling()); |
| 108 | 115 |
| 109 BlinkTestRunner* test_runner = BlinkTestRunner::Get(render_view); | 116 BlinkTestRunner* test_runner = BlinkTestRunner::Get(render_view); |
| 110 test_runner->Reset(false /* for_new_test */); | 117 test_runner->Reset(false /* for_new_test */); |
| 111 | 118 |
| 112 LayoutTestRenderThreadObserver::GetInstance() | 119 LayoutTestRenderThreadObserver::GetInstance() |
| 113 ->test_interfaces() | 120 ->test_interfaces() |
| 114 ->TestRunner() | 121 ->TestRunner() |
| 115 ->InitializeWebViewWithMocks(render_view->GetWebView()); | 122 ->InitializeWebViewWithMocks(render_view->GetWebView()); |
| 116 | |
| 117 test_runner::WebTestDelegate* delegate = | |
| 118 LayoutTestRenderThreadObserver::GetInstance()->test_delegate(); | |
| 119 if (delegate == static_cast<test_runner::WebTestDelegate*>(test_runner)) { | |
| 120 // TODO(lukasza): Should this instead by done by BlinkTestRunner, | |
| 121 // when it gets notified by the browser that it is the main window? | |
| 122 | |
| 123 // Let test_runner layer know what is the main test window. | |
| 124 LayoutTestRenderThreadObserver::GetInstance() | |
| 125 ->test_interfaces() | |
| 126 ->SetWebView(render_view->GetWebView(), proxy); | |
| 127 } | |
| 128 } | 123 } |
| 129 | 124 |
| 130 WebMediaStreamCenter* | 125 WebMediaStreamCenter* |
| 131 LayoutTestContentRendererClient::OverrideCreateWebMediaStreamCenter( | 126 LayoutTestContentRendererClient::OverrideCreateWebMediaStreamCenter( |
| 132 WebMediaStreamCenterClient* client) { | 127 WebMediaStreamCenterClient* client) { |
| 133 #if defined(ENABLE_WEBRTC) | 128 #if defined(ENABLE_WEBRTC) |
| 134 test_runner::WebTestInterfaces* interfaces = | 129 test_runner::WebTestInterfaces* interfaces = |
| 135 LayoutTestRenderThreadObserver::GetInstance()->test_interfaces(); | 130 LayoutTestRenderThreadObserver::GetInstance()->test_interfaces(); |
| 136 return interfaces->CreateMediaStreamCenter(client); | 131 return interfaces->CreateMediaStreamCenter(client); |
| 137 #else | 132 #else |
| (...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 191 LayoutTestContentRendererClient::CreateMediaStreamRendererFactory() { | 186 LayoutTestContentRendererClient::CreateMediaStreamRendererFactory() { |
| 192 #if defined(ENABLE_WEBRTC) | 187 #if defined(ENABLE_WEBRTC) |
| 193 return std::unique_ptr<MediaStreamRendererFactory>( | 188 return std::unique_ptr<MediaStreamRendererFactory>( |
| 194 new TestMediaStreamRendererFactory()); | 189 new TestMediaStreamRendererFactory()); |
| 195 #else | 190 #else |
| 196 return nullptr; | 191 return nullptr; |
| 197 #endif | 192 #endif |
| 198 } | 193 } |
| 199 | 194 |
| 200 } // namespace content | 195 } // namespace content |
| OLD | NEW |