| 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 |
| (...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 65 : helper_(helper) {} | 65 : helper_(helper) {} |
| 66 | 66 |
| 67 static void Create(const base::WeakPtr<EmbeddedWorkerTestHelper>& helper, | 67 static void Create(const base::WeakPtr<EmbeddedWorkerTestHelper>& helper, |
| 68 mojom::EmbeddedWorkerSetupRequest request) { | 68 mojom::EmbeddedWorkerSetupRequest request) { |
| 69 mojo::MakeStrongBinding(base::MakeUnique<MockEmbeddedWorkerSetup>(helper), | 69 mojo::MakeStrongBinding(base::MakeUnique<MockEmbeddedWorkerSetup>(helper), |
| 70 std::move(request)); | 70 std::move(request)); |
| 71 } | 71 } |
| 72 | 72 |
| 73 void ExchangeInterfaceProviders( | 73 void ExchangeInterfaceProviders( |
| 74 int32_t thread_id, | 74 int32_t thread_id, |
| 75 shell::mojom::InterfaceProviderRequest request, | 75 service_manager::mojom::InterfaceProviderRequest request, |
| 76 shell::mojom::InterfaceProviderPtr remote_interfaces) override { | 76 service_manager::mojom::InterfaceProviderPtr remote_interfaces) override { |
| 77 if (!helper_) | 77 if (!helper_) |
| 78 return; | 78 return; |
| 79 helper_->OnSetupMojoStub(thread_id, std::move(request), | 79 helper_->OnSetupMojoStub(thread_id, std::move(request), |
| 80 std::move(remote_interfaces)); | 80 std::move(remote_interfaces)); |
| 81 } | 81 } |
| 82 | 82 |
| 83 private: | 83 private: |
| 84 base::WeakPtr<EmbeddedWorkerTestHelper> helper_; | 84 base::WeakPtr<EmbeddedWorkerTestHelper> helper_; |
| 85 }; | 85 }; |
| 86 | 86 |
| (...skipping 209 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 296 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_PushEvent, OnPushEventStub) | 296 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_PushEvent, OnPushEventStub) |
| 297 IPC_MESSAGE_UNHANDLED(handled = false) | 297 IPC_MESSAGE_UNHANDLED(handled = false) |
| 298 IPC_END_MESSAGE_MAP() | 298 IPC_END_MESSAGE_MAP() |
| 299 // Record all messages directed to inner script context. | 299 // Record all messages directed to inner script context. |
| 300 inner_sink_.OnMessageReceived(message); | 300 inner_sink_.OnMessageReceived(message); |
| 301 return handled; | 301 return handled; |
| 302 } | 302 } |
| 303 | 303 |
| 304 void EmbeddedWorkerTestHelper::OnSetupMojo( | 304 void EmbeddedWorkerTestHelper::OnSetupMojo( |
| 305 int thread_id, | 305 int thread_id, |
| 306 shell::InterfaceRegistry* interface_registry) { | 306 service_manager::InterfaceRegistry* interface_registry) { |
| 307 interface_registry->AddInterface(base::Bind(&MockFetchEventDispatcher::Create, | 307 interface_registry->AddInterface(base::Bind(&MockFetchEventDispatcher::Create, |
| 308 weak_factory_.GetWeakPtr(), | 308 weak_factory_.GetWeakPtr(), |
| 309 thread_id)); | 309 thread_id)); |
| 310 } | 310 } |
| 311 | 311 |
| 312 void EmbeddedWorkerTestHelper::OnActivateEvent(int embedded_worker_id, | 312 void EmbeddedWorkerTestHelper::OnActivateEvent(int embedded_worker_id, |
| 313 int request_id) { | 313 int request_id) { |
| 314 SimulateSend(new ServiceWorkerHostMsg_ActivateEventFinished( | 314 SimulateSend(new ServiceWorkerHostMsg_ActivateEventFinished( |
| 315 embedded_worker_id, request_id, | 315 embedded_worker_id, request_id, |
| 316 blink::WebServiceWorkerEventResultCompleted, base::Time::Now())); | 316 blink::WebServiceWorkerEventResultCompleted, base::Time::Now())); |
| (...skipping 192 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 509 void EmbeddedWorkerTestHelper::OnPushEventStub( | 509 void EmbeddedWorkerTestHelper::OnPushEventStub( |
| 510 int request_id, | 510 int request_id, |
| 511 const PushEventPayload& payload) { | 511 const PushEventPayload& payload) { |
| 512 base::ThreadTaskRunnerHandle::Get()->PostTask( | 512 base::ThreadTaskRunnerHandle::Get()->PostTask( |
| 513 FROM_HERE, base::Bind(&EmbeddedWorkerTestHelper::OnPushEvent, AsWeakPtr(), | 513 FROM_HERE, base::Bind(&EmbeddedWorkerTestHelper::OnPushEvent, AsWeakPtr(), |
| 514 current_embedded_worker_id_, request_id, payload)); | 514 current_embedded_worker_id_, request_id, payload)); |
| 515 } | 515 } |
| 516 | 516 |
| 517 void EmbeddedWorkerTestHelper::OnSetupMojoStub( | 517 void EmbeddedWorkerTestHelper::OnSetupMojoStub( |
| 518 int thread_id, | 518 int thread_id, |
| 519 shell::mojom::InterfaceProviderRequest request, | 519 service_manager::mojom::InterfaceProviderRequest request, |
| 520 shell::mojom::InterfaceProviderPtr remote_interfaces) { | 520 service_manager::mojom::InterfaceProviderPtr remote_interfaces) { |
| 521 std::unique_ptr<shell::InterfaceRegistry> local( | 521 std::unique_ptr<service_manager::InterfaceRegistry> local( |
| 522 new shell::InterfaceRegistry); | 522 new service_manager::InterfaceRegistry); |
| 523 local->Bind(std::move(request)); | 523 local->Bind(std::move(request)); |
| 524 | 524 |
| 525 std::unique_ptr<shell::InterfaceProvider> remote( | 525 std::unique_ptr<service_manager::InterfaceProvider> remote( |
| 526 new shell::InterfaceProvider); | 526 new service_manager::InterfaceProvider); |
| 527 remote->Bind(std::move(remote_interfaces)); | 527 remote->Bind(std::move(remote_interfaces)); |
| 528 | 528 |
| 529 OnSetupMojo(thread_id, local.get()); | 529 OnSetupMojo(thread_id, local.get()); |
| 530 InterfaceRegistryAndProvider pair(std::move(local), std::move(remote)); | 530 InterfaceRegistryAndProvider pair(std::move(local), std::move(remote)); |
| 531 thread_id_service_registry_map_[thread_id] = std::move(pair); | 531 thread_id_service_registry_map_[thread_id] = std::move(pair); |
| 532 } | 532 } |
| 533 | 533 |
| 534 EmbeddedWorkerRegistry* EmbeddedWorkerTestHelper::registry() { | 534 EmbeddedWorkerRegistry* EmbeddedWorkerTestHelper::registry() { |
| 535 DCHECK(context()); | 535 DCHECK(context()); |
| 536 return context()->embedded_worker_registry(); | 536 return context()->embedded_worker_registry(); |
| 537 } | 537 } |
| 538 | 538 |
| 539 MessagePortMessageFilter* | 539 MessagePortMessageFilter* |
| 540 EmbeddedWorkerTestHelper::NewMessagePortMessageFilter() { | 540 EmbeddedWorkerTestHelper::NewMessagePortMessageFilter() { |
| 541 scoped_refptr<MessagePortMessageFilter> filter( | 541 scoped_refptr<MessagePortMessageFilter> filter( |
| 542 new MockMessagePortMessageFilter); | 542 new MockMessagePortMessageFilter); |
| 543 message_port_message_filters_.push_back(filter); | 543 message_port_message_filters_.push_back(filter); |
| 544 return filter.get(); | 544 return filter.get(); |
| 545 } | 545 } |
| 546 | 546 |
| 547 std::unique_ptr<shell::InterfaceRegistry> | 547 std::unique_ptr<service_manager::InterfaceRegistry> |
| 548 EmbeddedWorkerTestHelper::CreateInterfaceRegistry(MockRenderProcessHost* rph) { | 548 EmbeddedWorkerTestHelper::CreateInterfaceRegistry(MockRenderProcessHost* rph) { |
| 549 std::unique_ptr<shell::InterfaceRegistry> registry( | 549 std::unique_ptr<service_manager::InterfaceRegistry> registry( |
| 550 new shell::InterfaceRegistry); | 550 new service_manager::InterfaceRegistry); |
| 551 registry->AddInterface( | 551 registry->AddInterface( |
| 552 base::Bind(&MockEmbeddedWorkerSetup::Create, AsWeakPtr())); | 552 base::Bind(&MockEmbeddedWorkerSetup::Create, AsWeakPtr())); |
| 553 registry->AddInterface( | 553 registry->AddInterface( |
| 554 base::Bind(&MockEmbeddedWorkerInstanceClient::Bind, AsWeakPtr())); | 554 base::Bind(&MockEmbeddedWorkerInstanceClient::Bind, AsWeakPtr())); |
| 555 | 555 |
| 556 shell::mojom::InterfaceProviderPtr interfaces; | 556 service_manager::mojom::InterfaceProviderPtr interfaces; |
| 557 registry->Bind(mojo::GetProxy(&interfaces)); | 557 registry->Bind(mojo::GetProxy(&interfaces)); |
| 558 | 558 |
| 559 std::unique_ptr<shell::InterfaceProvider> remote_interfaces( | 559 std::unique_ptr<service_manager::InterfaceProvider> remote_interfaces( |
| 560 new shell::InterfaceProvider); | 560 new service_manager::InterfaceProvider); |
| 561 remote_interfaces->Bind(std::move(interfaces)); | 561 remote_interfaces->Bind(std::move(interfaces)); |
| 562 rph->SetRemoteInterfaces(std::move(remote_interfaces)); | 562 rph->SetRemoteInterfaces(std::move(remote_interfaces)); |
| 563 return registry; | 563 return registry; |
| 564 } | 564 } |
| 565 | 565 |
| 566 } // namespace content | 566 } // namespace content |
| OLD | NEW |