| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 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/browser/service_worker/embedded_worker_test_helper.h" | 5 #include "content/browser/service_worker/embedded_worker_test_helper.h" |
| 6 | 6 |
| 7 #include <map> | 7 #include <map> |
| 8 #include <string> | 8 #include <string> |
| 9 #include <utility> | 9 #include <utility> |
| 10 | 10 |
| 11 #include "base/atomic_sequence_num.h" | 11 #include "base/atomic_sequence_num.h" |
| 12 #include "base/bind.h" | 12 #include "base/bind.h" |
| 13 #include "base/memory/scoped_vector.h" | 13 #include "base/memory/scoped_vector.h" |
| 14 #include "base/threading/thread_task_runner_handle.h" | 14 #include "base/threading/thread_task_runner_handle.h" |
| 15 #include "content/browser/message_port_message_filter.h" | 15 #include "content/browser/message_port_message_filter.h" |
| 16 #include "content/browser/service_worker/embedded_worker_instance.h" | 16 #include "content/browser/service_worker/embedded_worker_instance.h" |
| 17 #include "content/browser/service_worker/embedded_worker_registry.h" | 17 #include "content/browser/service_worker/embedded_worker_registry.h" |
| 18 #include "content/browser/service_worker/embedded_worker_status.h" | 18 #include "content/browser/service_worker/embedded_worker_status.h" |
| 19 #include "content/browser/service_worker/service_worker_context_core.h" | 19 #include "content/browser/service_worker/service_worker_context_core.h" |
| 20 #include "content/browser/service_worker/service_worker_context_wrapper.h" | 20 #include "content/browser/service_worker/service_worker_context_wrapper.h" |
| 21 #include "content/common/service_worker/embedded_worker_messages.h" | 21 #include "content/common/service_worker/embedded_worker_messages.h" |
| 22 #include "content/common/service_worker/embedded_worker_setup.mojom.h" | 22 #include "content/common/service_worker/embedded_worker_setup.mojom.h" |
| 23 #include "content/common/service_worker/service_worker_messages.h" | 23 #include "content/common/service_worker/service_worker_messages.h" |
| 24 #include "content/public/common/push_event_payload.h" | 24 #include "content/public/common/push_event_payload.h" |
| 25 #include "content/public/test/mock_render_process_host.h" | 25 #include "content/public/test/mock_render_process_host.h" |
| 26 #include "content/public/test/test_browser_context.h" | 26 #include "content/public/test/test_browser_context.h" |
| 27 #include "mojo/public/cpp/bindings/interface_request.h" | 27 #include "mojo/public/cpp/bindings/interface_request.h" |
| 28 #include "mojo/public/cpp/bindings/strong_binding.h" | 28 #include "mojo/public/cpp/bindings/strong_binding.h" |
| 29 #include "services/shell/public/cpp/interface_provider.h" |
| 30 #include "services/shell/public/cpp/interface_registry.h" |
| 29 #include "testing/gtest/include/gtest/gtest.h" | 31 #include "testing/gtest/include/gtest/gtest.h" |
| 30 | 32 |
| 31 namespace content { | 33 namespace content { |
| 32 | 34 |
| 33 namespace { | 35 namespace { |
| 34 | 36 |
| 35 class MockMessagePortMessageFilter : public MessagePortMessageFilter { | 37 class MockMessagePortMessageFilter : public MessagePortMessageFilter { |
| 36 public: | 38 public: |
| 37 MockMessagePortMessageFilter() | 39 MockMessagePortMessageFilter() |
| 38 : MessagePortMessageFilter( | 40 : MessagePortMessageFilter( |
| (...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 92 std::unique_ptr<MockServiceWorkerDatabaseTaskManager> database_task_manager( | 94 std::unique_ptr<MockServiceWorkerDatabaseTaskManager> database_task_manager( |
| 93 new MockServiceWorkerDatabaseTaskManager( | 95 new MockServiceWorkerDatabaseTaskManager( |
| 94 base::ThreadTaskRunnerHandle::Get())); | 96 base::ThreadTaskRunnerHandle::Get())); |
| 95 wrapper_->InitInternal(user_data_directory, std::move(database_task_manager), | 97 wrapper_->InitInternal(user_data_directory, std::move(database_task_manager), |
| 96 base::ThreadTaskRunnerHandle::Get(), nullptr, nullptr); | 98 base::ThreadTaskRunnerHandle::Get(), nullptr, nullptr); |
| 97 wrapper_->process_manager()->SetProcessIdForTest(mock_render_process_id()); | 99 wrapper_->process_manager()->SetProcessIdForTest(mock_render_process_id()); |
| 98 wrapper_->process_manager()->SetNewProcessIdForTest(new_render_process_id()); | 100 wrapper_->process_manager()->SetNewProcessIdForTest(new_render_process_id()); |
| 99 registry()->AddChildProcessSender(mock_render_process_id_, this, | 101 registry()->AddChildProcessSender(mock_render_process_id_, this, |
| 100 NewMessagePortMessageFilter()); | 102 NewMessagePortMessageFilter()); |
| 101 | 103 |
| 102 // Setup process level mojo service registry pair. | 104 // Setup process level interface registry. |
| 103 std::unique_ptr<ServiceRegistryImpl> host_service_registry( | 105 render_process_interface_registry_.reset( |
| 104 new ServiceRegistryImpl); | 106 new shell::InterfaceRegistry(nullptr)); |
| 105 render_process_service_registry_.ServiceRegistry::AddService( | 107 render_process_interface_registry_->AddInterface( |
| 106 base::Bind(&MockEmbeddedWorkerSetup::Create, weak_factory_.GetWeakPtr())); | 108 base::Bind(&MockEmbeddedWorkerSetup::Create, weak_factory_.GetWeakPtr())); |
| 107 shell::mojom::InterfaceProviderPtr services; | 109 shell::mojom::InterfaceProviderPtr interfaces; |
| 108 render_process_service_registry_.Bind( | 110 render_process_interface_registry_->Bind(mojo::GetProxy(&interfaces)); |
| 109 host_service_registry->TakeRemoteRequest()); | 111 |
| 110 render_process_host_->SetServiceRegistry(std::move(host_service_registry)); | 112 std::unique_ptr<shell::InterfaceProvider> host_remote_interfaces( |
| 113 new shell::InterfaceProvider); |
| 114 host_remote_interfaces->Bind(std::move(interfaces)); |
| 115 std::unique_ptr<shell::InterfaceRegistry> host_registry( |
| 116 new shell::InterfaceRegistry(nullptr)); |
| 117 render_process_host_->SetInterfaceRegistry(std::move(host_registry)); |
| 118 render_process_host_->SetRemoteInterfaces(std::move(host_remote_interfaces)); |
| 111 } | 119 } |
| 112 | 120 |
| 113 EmbeddedWorkerTestHelper::~EmbeddedWorkerTestHelper() { | 121 EmbeddedWorkerTestHelper::~EmbeddedWorkerTestHelper() { |
| 114 if (wrapper_.get()) | 122 if (wrapper_.get()) |
| 115 wrapper_->Shutdown(); | 123 wrapper_->Shutdown(); |
| 116 } | 124 } |
| 117 | 125 |
| 118 void EmbeddedWorkerTestHelper::SimulateAddProcessToPattern( | 126 void EmbeddedWorkerTestHelper::SimulateAddProcessToPattern(const GURL& pattern, |
| 119 const GURL& pattern, | 127 int process_id) { |
| 120 int process_id) { | |
| 121 registry()->AddChildProcessSender(process_id, this, | 128 registry()->AddChildProcessSender(process_id, this, |
| 122 NewMessagePortMessageFilter()); | 129 NewMessagePortMessageFilter()); |
| 123 wrapper_->process_manager()->AddProcessReferenceToPattern( | 130 wrapper_->process_manager()->AddProcessReferenceToPattern(pattern, |
| 124 pattern, process_id); | 131 process_id); |
| 125 } | 132 } |
| 126 | 133 |
| 127 bool EmbeddedWorkerTestHelper::Send(IPC::Message* message) { | 134 bool EmbeddedWorkerTestHelper::Send(IPC::Message* message) { |
| 128 OnMessageReceived(*message); | 135 OnMessageReceived(*message); |
| 129 delete message; | 136 delete message; |
| 130 return true; | 137 return true; |
| 131 } | 138 } |
| 132 | 139 |
| 133 bool EmbeddedWorkerTestHelper::OnMessageReceived(const IPC::Message& message) { | 140 bool EmbeddedWorkerTestHelper::OnMessageReceived(const IPC::Message& message) { |
| 134 bool handled = true; | 141 bool handled = true; |
| (...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 176 SimulateWorkerThreadStarted(GetNextThreadId(), embedded_worker_id); | 183 SimulateWorkerThreadStarted(GetNextThreadId(), embedded_worker_id); |
| 177 SimulateWorkerScriptEvaluated(embedded_worker_id, true /* success */); | 184 SimulateWorkerScriptEvaluated(embedded_worker_id, true /* success */); |
| 178 SimulateWorkerStarted(embedded_worker_id); | 185 SimulateWorkerStarted(embedded_worker_id); |
| 179 } | 186 } |
| 180 | 187 |
| 181 void EmbeddedWorkerTestHelper::OnStopWorker(int embedded_worker_id) { | 188 void EmbeddedWorkerTestHelper::OnStopWorker(int embedded_worker_id) { |
| 182 // By default just notify the sender that the worker is stopped. | 189 // By default just notify the sender that the worker is stopped. |
| 183 SimulateWorkerStopped(embedded_worker_id); | 190 SimulateWorkerStopped(embedded_worker_id); |
| 184 } | 191 } |
| 185 | 192 |
| 186 bool EmbeddedWorkerTestHelper::OnMessageToWorker( | 193 bool EmbeddedWorkerTestHelper::OnMessageToWorker(int thread_id, |
| 187 int thread_id, | 194 int embedded_worker_id, |
| 188 int embedded_worker_id, | 195 const IPC::Message& message) { |
| 189 const IPC::Message& message) { | |
| 190 bool handled = true; | 196 bool handled = true; |
| 191 current_embedded_worker_id_ = embedded_worker_id; | 197 current_embedded_worker_id_ = embedded_worker_id; |
| 192 IPC_BEGIN_MESSAGE_MAP(EmbeddedWorkerTestHelper, message) | 198 IPC_BEGIN_MESSAGE_MAP(EmbeddedWorkerTestHelper, message) |
| 193 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_ActivateEvent, OnActivateEventStub) | 199 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_ActivateEvent, OnActivateEventStub) |
| 194 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_ExtendableMessageEvent, | 200 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_ExtendableMessageEvent, |
| 195 OnExtendableMessageEventStub) | 201 OnExtendableMessageEventStub) |
| 196 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_InstallEvent, OnInstallEventStub) | 202 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_InstallEvent, OnInstallEventStub) |
| 197 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_FetchEvent, OnFetchEventStub) | 203 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_FetchEvent, OnFetchEventStub) |
| 198 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_PushEvent, OnPushEventStub) | 204 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_PushEvent, OnPushEventStub) |
| 199 IPC_MESSAGE_UNHANDLED(handled = false) | 205 IPC_MESSAGE_UNHANDLED(handled = false) |
| 200 IPC_END_MESSAGE_MAP() | 206 IPC_END_MESSAGE_MAP() |
| 201 // Record all messages directed to inner script context. | 207 // Record all messages directed to inner script context. |
| 202 inner_sink_.OnMessageReceived(message); | 208 inner_sink_.OnMessageReceived(message); |
| 203 return handled; | 209 return handled; |
| 204 } | 210 } |
| 205 | 211 |
| 206 void EmbeddedWorkerTestHelper::OnSetupMojo(ServiceRegistry* service_registry) {} | 212 void EmbeddedWorkerTestHelper::OnSetupMojo(ServiceRegistry* service_registry) {} |
| 207 | 213 |
| 208 void EmbeddedWorkerTestHelper::OnActivateEvent(int embedded_worker_id, | 214 void EmbeddedWorkerTestHelper::OnActivateEvent(int embedded_worker_id, |
| 209 int request_id) { | 215 int request_id) { |
| 210 SimulateSend( | 216 SimulateSend(new ServiceWorkerHostMsg_ActivateEventFinished( |
| 211 new ServiceWorkerHostMsg_ActivateEventFinished( | 217 embedded_worker_id, request_id, |
| 212 embedded_worker_id, request_id, | 218 blink::WebServiceWorkerEventResultCompleted)); |
| 213 blink::WebServiceWorkerEventResultCompleted)); | |
| 214 } | 219 } |
| 215 | 220 |
| 216 void EmbeddedWorkerTestHelper::OnExtendableMessageEvent(int embedded_worker_id, | 221 void EmbeddedWorkerTestHelper::OnExtendableMessageEvent(int embedded_worker_id, |
| 217 int request_id) { | 222 int request_id) { |
| 218 SimulateSend(new ServiceWorkerHostMsg_ExtendableMessageEventFinished( | 223 SimulateSend(new ServiceWorkerHostMsg_ExtendableMessageEventFinished( |
| 219 embedded_worker_id, request_id, | 224 embedded_worker_id, request_id, |
| 220 blink::WebServiceWorkerEventResultCompleted)); | 225 blink::WebServiceWorkerEventResultCompleted)); |
| 221 } | 226 } |
| 222 | 227 |
| 223 void EmbeddedWorkerTestHelper::OnInstallEvent(int embedded_worker_id, | 228 void EmbeddedWorkerTestHelper::OnInstallEvent(int embedded_worker_id, |
| (...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 296 | 301 |
| 297 void EmbeddedWorkerTestHelper::SimulateWorkerScriptEvaluated( | 302 void EmbeddedWorkerTestHelper::SimulateWorkerScriptEvaluated( |
| 298 int embedded_worker_id, | 303 int embedded_worker_id, |
| 299 bool success) { | 304 bool success) { |
| 300 EmbeddedWorkerInstance* worker = registry()->GetWorker(embedded_worker_id); | 305 EmbeddedWorkerInstance* worker = registry()->GetWorker(embedded_worker_id); |
| 301 ASSERT_TRUE(worker != NULL); | 306 ASSERT_TRUE(worker != NULL); |
| 302 registry()->OnWorkerScriptEvaluated(worker->process_id(), embedded_worker_id, | 307 registry()->OnWorkerScriptEvaluated(worker->process_id(), embedded_worker_id, |
| 303 success); | 308 success); |
| 304 } | 309 } |
| 305 | 310 |
| 306 void EmbeddedWorkerTestHelper::SimulateWorkerStarted( | 311 void EmbeddedWorkerTestHelper::SimulateWorkerStarted(int embedded_worker_id) { |
| 307 int embedded_worker_id) { | |
| 308 EmbeddedWorkerInstance* worker = registry()->GetWorker(embedded_worker_id); | 312 EmbeddedWorkerInstance* worker = registry()->GetWorker(embedded_worker_id); |
| 309 ASSERT_TRUE(worker != NULL); | 313 ASSERT_TRUE(worker != NULL); |
| 310 registry()->OnWorkerStarted( | 314 registry()->OnWorkerStarted(worker->process_id(), embedded_worker_id); |
| 311 worker->process_id(), | |
| 312 embedded_worker_id); | |
| 313 } | 315 } |
| 314 | 316 |
| 315 void EmbeddedWorkerTestHelper::SimulateWorkerStopped( | 317 void EmbeddedWorkerTestHelper::SimulateWorkerStopped(int embedded_worker_id) { |
| 316 int embedded_worker_id) { | |
| 317 EmbeddedWorkerInstance* worker = registry()->GetWorker(embedded_worker_id); | 318 EmbeddedWorkerInstance* worker = registry()->GetWorker(embedded_worker_id); |
| 318 if (worker != NULL) | 319 if (worker != NULL) |
| 319 registry()->OnWorkerStopped(worker->process_id(), embedded_worker_id); | 320 registry()->OnWorkerStopped(worker->process_id(), embedded_worker_id); |
| 320 } | 321 } |
| 321 | 322 |
| 322 void EmbeddedWorkerTestHelper::SimulateSend( | 323 void EmbeddedWorkerTestHelper::SimulateSend(IPC::Message* message) { |
| 323 IPC::Message* message) { | |
| 324 registry()->OnMessageReceived(*message, mock_render_process_id_); | 324 registry()->OnMessageReceived(*message, mock_render_process_id_); |
| 325 delete message; | 325 delete message; |
| 326 } | 326 } |
| 327 | 327 |
| 328 void EmbeddedWorkerTestHelper::OnStartWorkerStub( | 328 void EmbeddedWorkerTestHelper::OnStartWorkerStub( |
| 329 const EmbeddedWorkerMsg_StartWorker_Params& params) { | 329 const EmbeddedWorkerMsg_StartWorker_Params& params) { |
| 330 EmbeddedWorkerInstance* worker = | 330 EmbeddedWorkerInstance* worker = |
| 331 registry()->GetWorker(params.embedded_worker_id); | 331 registry()->GetWorker(params.embedded_worker_id); |
| 332 ASSERT_TRUE(worker != NULL); | 332 ASSERT_TRUE(worker != NULL); |
| 333 EXPECT_EQ(EmbeddedWorkerStatus::STARTING, worker->status()); | 333 EXPECT_EQ(EmbeddedWorkerStatus::STARTING, worker->status()); |
| (...skipping 11 matching lines...) Expand all Loading... |
| 345 ASSERT_TRUE(worker); | 345 ASSERT_TRUE(worker); |
| 346 base::ThreadTaskRunnerHandle::Get()->PostTask( | 346 base::ThreadTaskRunnerHandle::Get()->PostTask( |
| 347 FROM_HERE, base::Bind(&EmbeddedWorkerTestHelper::OnResumeAfterDownload, | 347 FROM_HERE, base::Bind(&EmbeddedWorkerTestHelper::OnResumeAfterDownload, |
| 348 weak_factory_.GetWeakPtr(), embedded_worker_id)); | 348 weak_factory_.GetWeakPtr(), embedded_worker_id)); |
| 349 } | 349 } |
| 350 | 350 |
| 351 void EmbeddedWorkerTestHelper::OnStopWorkerStub(int embedded_worker_id) { | 351 void EmbeddedWorkerTestHelper::OnStopWorkerStub(int embedded_worker_id) { |
| 352 EmbeddedWorkerInstance* worker = registry()->GetWorker(embedded_worker_id); | 352 EmbeddedWorkerInstance* worker = registry()->GetWorker(embedded_worker_id); |
| 353 ASSERT_TRUE(worker != NULL); | 353 ASSERT_TRUE(worker != NULL); |
| 354 base::ThreadTaskRunnerHandle::Get()->PostTask( | 354 base::ThreadTaskRunnerHandle::Get()->PostTask( |
| 355 FROM_HERE, | 355 FROM_HERE, base::Bind(&EmbeddedWorkerTestHelper::OnStopWorker, |
| 356 base::Bind(&EmbeddedWorkerTestHelper::OnStopWorker, | 356 weak_factory_.GetWeakPtr(), embedded_worker_id)); |
| 357 weak_factory_.GetWeakPtr(), | |
| 358 embedded_worker_id)); | |
| 359 } | 357 } |
| 360 | 358 |
| 361 void EmbeddedWorkerTestHelper::OnMessageToWorkerStub( | 359 void EmbeddedWorkerTestHelper::OnMessageToWorkerStub( |
| 362 int thread_id, | 360 int thread_id, |
| 363 int embedded_worker_id, | 361 int embedded_worker_id, |
| 364 const IPC::Message& message) { | 362 const IPC::Message& message) { |
| 365 EmbeddedWorkerInstance* worker = registry()->GetWorker(embedded_worker_id); | 363 EmbeddedWorkerInstance* worker = registry()->GetWorker(embedded_worker_id); |
| 366 ASSERT_TRUE(worker != NULL); | 364 ASSERT_TRUE(worker != NULL); |
| 367 EXPECT_EQ(worker->thread_id(), thread_id); | 365 EXPECT_EQ(worker->thread_id(), thread_id); |
| 368 base::ThreadTaskRunnerHandle::Get()->PostTask( | 366 base::ThreadTaskRunnerHandle::Get()->PostTask( |
| 369 FROM_HERE, | 367 FROM_HERE, |
| 370 base::Bind( | 368 base::Bind( |
| 371 base::IgnoreResult(&EmbeddedWorkerTestHelper::OnMessageToWorker), | 369 base::IgnoreResult(&EmbeddedWorkerTestHelper::OnMessageToWorker), |
| 372 weak_factory_.GetWeakPtr(), | 370 weak_factory_.GetWeakPtr(), thread_id, embedded_worker_id, message)); |
| 373 thread_id, | |
| 374 embedded_worker_id, | |
| 375 message)); | |
| 376 } | 371 } |
| 377 | 372 |
| 378 void EmbeddedWorkerTestHelper::OnActivateEventStub(int request_id) { | 373 void EmbeddedWorkerTestHelper::OnActivateEventStub(int request_id) { |
| 379 base::ThreadTaskRunnerHandle::Get()->PostTask( | 374 base::ThreadTaskRunnerHandle::Get()->PostTask( |
| 380 FROM_HERE, base::Bind(&EmbeddedWorkerTestHelper::OnActivateEvent, | 375 FROM_HERE, base::Bind(&EmbeddedWorkerTestHelper::OnActivateEvent, |
| 381 weak_factory_.GetWeakPtr(), | 376 weak_factory_.GetWeakPtr(), |
| 382 current_embedded_worker_id_, request_id)); | 377 current_embedded_worker_id_, request_id)); |
| 383 } | 378 } |
| 384 | 379 |
| 385 void EmbeddedWorkerTestHelper::OnExtendableMessageEventStub( | 380 void EmbeddedWorkerTestHelper::OnExtendableMessageEventStub( |
| 386 int request_id, | 381 int request_id, |
| 387 const ServiceWorkerMsg_ExtendableMessageEvent_Params& params) { | 382 const ServiceWorkerMsg_ExtendableMessageEvent_Params& params) { |
| 388 base::ThreadTaskRunnerHandle::Get()->PostTask( | 383 base::ThreadTaskRunnerHandle::Get()->PostTask( |
| 389 FROM_HERE, base::Bind(&EmbeddedWorkerTestHelper::OnExtendableMessageEvent, | 384 FROM_HERE, base::Bind(&EmbeddedWorkerTestHelper::OnExtendableMessageEvent, |
| 390 weak_factory_.GetWeakPtr(), | 385 weak_factory_.GetWeakPtr(), |
| 391 current_embedded_worker_id_, request_id)); | 386 current_embedded_worker_id_, request_id)); |
| 392 } | 387 } |
| 393 | 388 |
| 394 void EmbeddedWorkerTestHelper::OnInstallEventStub(int request_id) { | 389 void EmbeddedWorkerTestHelper::OnInstallEventStub(int request_id) { |
| 395 base::ThreadTaskRunnerHandle::Get()->PostTask( | 390 base::ThreadTaskRunnerHandle::Get()->PostTask( |
| 396 FROM_HERE, | 391 FROM_HERE, base::Bind(&EmbeddedWorkerTestHelper::OnInstallEvent, |
| 397 base::Bind(&EmbeddedWorkerTestHelper::OnInstallEvent, | 392 weak_factory_.GetWeakPtr(), |
| 398 weak_factory_.GetWeakPtr(), | 393 current_embedded_worker_id_, request_id)); |
| 399 current_embedded_worker_id_, | |
| 400 request_id)); | |
| 401 } | 394 } |
| 402 | 395 |
| 403 void EmbeddedWorkerTestHelper::OnFetchEventStub( | 396 void EmbeddedWorkerTestHelper::OnFetchEventStub( |
| 404 int request_id, | 397 int request_id, |
| 405 const ServiceWorkerFetchRequest& request) { | 398 const ServiceWorkerFetchRequest& request) { |
| 406 base::ThreadTaskRunnerHandle::Get()->PostTask( | 399 base::ThreadTaskRunnerHandle::Get()->PostTask( |
| 407 FROM_HERE, | 400 FROM_HERE, base::Bind(&EmbeddedWorkerTestHelper::OnFetchEvent, |
| 408 base::Bind(&EmbeddedWorkerTestHelper::OnFetchEvent, | 401 weak_factory_.GetWeakPtr(), |
| 409 weak_factory_.GetWeakPtr(), | 402 current_embedded_worker_id_, request_id, request)); |
| 410 current_embedded_worker_id_, | |
| 411 request_id, | |
| 412 request)); | |
| 413 } | 403 } |
| 414 | 404 |
| 415 void EmbeddedWorkerTestHelper::OnPushEventStub( | 405 void EmbeddedWorkerTestHelper::OnPushEventStub( |
| 416 int request_id, | 406 int request_id, |
| 417 const PushEventPayload& payload) { | 407 const PushEventPayload& payload) { |
| 418 base::ThreadTaskRunnerHandle::Get()->PostTask( | 408 base::ThreadTaskRunnerHandle::Get()->PostTask( |
| 419 FROM_HERE, base::Bind(&EmbeddedWorkerTestHelper::OnPushEvent, | 409 FROM_HERE, base::Bind(&EmbeddedWorkerTestHelper::OnPushEvent, |
| 420 weak_factory_.GetWeakPtr(), | 410 weak_factory_.GetWeakPtr(), |
| 421 current_embedded_worker_id_, request_id, payload)); | 411 current_embedded_worker_id_, request_id, payload)); |
| 422 } | 412 } |
| (...skipping 20 matching lines...) Expand all Loading... |
| 443 | 433 |
| 444 MessagePortMessageFilter* | 434 MessagePortMessageFilter* |
| 445 EmbeddedWorkerTestHelper::NewMessagePortMessageFilter() { | 435 EmbeddedWorkerTestHelper::NewMessagePortMessageFilter() { |
| 446 scoped_refptr<MessagePortMessageFilter> filter( | 436 scoped_refptr<MessagePortMessageFilter> filter( |
| 447 new MockMessagePortMessageFilter); | 437 new MockMessagePortMessageFilter); |
| 448 message_port_message_filters_.push_back(filter); | 438 message_port_message_filters_.push_back(filter); |
| 449 return filter.get(); | 439 return filter.get(); |
| 450 } | 440 } |
| 451 | 441 |
| 452 } // namespace content | 442 } // namespace content |
| OLD | NEW |