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 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
155 void DispatchFetchEvent(int fetch_event_id, | 155 void DispatchFetchEvent(int fetch_event_id, |
156 const ServiceWorkerFetchRequest& request, | 156 const ServiceWorkerFetchRequest& request, |
157 mojom::FetchEventPreloadHandlePtr preload_handle, | 157 mojom::FetchEventPreloadHandlePtr preload_handle, |
158 const DispatchFetchEventCallback& callback) override { | 158 const DispatchFetchEventCallback& callback) override { |
159 if (!helper_) | 159 if (!helper_) |
160 return; | 160 return; |
161 helper_->OnFetchEventStub(thread_id_, fetch_event_id, request, | 161 helper_->OnFetchEventStub(thread_id_, fetch_event_id, request, |
162 std::move(preload_handle), callback); | 162 std::move(preload_handle), callback); |
163 } | 163 } |
164 | 164 |
| 165 void DispatchPushEvent(const PushEventPayload& payload, |
| 166 const DispatchPushEventCallback& callback) override { |
| 167 if (!helper_) |
| 168 return; |
| 169 helper_->OnPushEventStub(payload, callback); |
| 170 } |
| 171 |
165 void DispatchSyncEvent( | 172 void DispatchSyncEvent( |
166 const std::string& tag, | 173 const std::string& tag, |
167 blink::mojom::BackgroundSyncEventLastChance last_chance, | 174 blink::mojom::BackgroundSyncEventLastChance last_chance, |
168 const DispatchSyncEventCallback& callback) override { | 175 const DispatchSyncEventCallback& callback) override { |
169 NOTIMPLEMENTED(); | 176 NOTIMPLEMENTED(); |
170 } | 177 } |
171 | 178 |
172 void DispatchPaymentRequestEvent( | 179 void DispatchPaymentRequestEvent( |
173 payments::mojom::PaymentAppRequestDataPtr data, | 180 payments::mojom::PaymentAppRequestDataPtr data, |
174 const DispatchPaymentRequestEventCallback& callback) override { | 181 const DispatchPaymentRequestEventCallback& callback) override { |
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
313 } | 320 } |
314 | 321 |
315 bool EmbeddedWorkerTestHelper::OnMessageToWorker(int thread_id, | 322 bool EmbeddedWorkerTestHelper::OnMessageToWorker(int thread_id, |
316 int embedded_worker_id, | 323 int embedded_worker_id, |
317 const IPC::Message& message) { | 324 const IPC::Message& message) { |
318 bool handled = true; | 325 bool handled = true; |
319 current_embedded_worker_id_ = embedded_worker_id; | 326 current_embedded_worker_id_ = embedded_worker_id; |
320 IPC_BEGIN_MESSAGE_MAP(EmbeddedWorkerTestHelper, message) | 327 IPC_BEGIN_MESSAGE_MAP(EmbeddedWorkerTestHelper, message) |
321 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_ActivateEvent, OnActivateEventStub) | 328 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_ActivateEvent, OnActivateEventStub) |
322 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_InstallEvent, OnInstallEventStub) | 329 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_InstallEvent, OnInstallEventStub) |
323 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_PushEvent, OnPushEventStub) | |
324 IPC_MESSAGE_UNHANDLED(handled = false) | 330 IPC_MESSAGE_UNHANDLED(handled = false) |
325 IPC_END_MESSAGE_MAP() | 331 IPC_END_MESSAGE_MAP() |
326 // Record all messages directed to inner script context. | 332 // Record all messages directed to inner script context. |
327 inner_sink_.OnMessageReceived(message); | 333 inner_sink_.OnMessageReceived(message); |
328 return handled; | 334 return handled; |
329 } | 335 } |
330 | 336 |
331 void EmbeddedWorkerTestHelper::OnActivateEvent(int embedded_worker_id, | 337 void EmbeddedWorkerTestHelper::OnActivateEvent(int embedded_worker_id, |
332 int request_id) { | 338 int request_id) { |
333 SimulateSend(new ServiceWorkerHostMsg_ActivateEventFinished( | 339 SimulateSend(new ServiceWorkerHostMsg_ActivateEventFinished( |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
367 base::MakeUnique<ServiceWorkerHeaderMap>(), std::string(), 0, GURL(), | 373 base::MakeUnique<ServiceWorkerHeaderMap>(), std::string(), 0, GURL(), |
368 blink::WebServiceWorkerResponseErrorUnknown, base::Time(), | 374 blink::WebServiceWorkerResponseErrorUnknown, base::Time(), |
369 false /* is_in_cache_storage */, | 375 false /* is_in_cache_storage */, |
370 std::string() /* cache_storage_cache_name */, | 376 std::string() /* cache_storage_cache_name */, |
371 base::MakeUnique< | 377 base::MakeUnique< |
372 ServiceWorkerHeaderList>() /* cors_exposed_header_names */), | 378 ServiceWorkerHeaderList>() /* cors_exposed_header_names */), |
373 base::Time::Now())); | 379 base::Time::Now())); |
374 callback.Run(SERVICE_WORKER_OK, base::Time::Now()); | 380 callback.Run(SERVICE_WORKER_OK, base::Time::Now()); |
375 } | 381 } |
376 | 382 |
377 void EmbeddedWorkerTestHelper::OnPushEvent(int embedded_worker_id, | 383 void EmbeddedWorkerTestHelper::OnPushEvent( |
378 int request_id, | 384 const PushEventPayload& payload, |
379 const PushEventPayload& payload) { | 385 const mojom::ServiceWorkerEventDispatcher::DispatchPushEventCallback& |
380 SimulateSend(new ServiceWorkerHostMsg_PushEventFinished( | 386 callback) { |
381 embedded_worker_id, request_id, | 387 callback.Run(SERVICE_WORKER_OK, base::Time::Now()); |
382 blink::WebServiceWorkerEventResultCompleted, base::Time::Now())); | |
383 } | 388 } |
384 | 389 |
385 void EmbeddedWorkerTestHelper::SimulateWorkerReadyForInspection( | 390 void EmbeddedWorkerTestHelper::SimulateWorkerReadyForInspection( |
386 int embedded_worker_id) { | 391 int embedded_worker_id) { |
387 EmbeddedWorkerInstance* worker = registry()->GetWorker(embedded_worker_id); | 392 EmbeddedWorkerInstance* worker = registry()->GetWorker(embedded_worker_id); |
388 ASSERT_TRUE(worker); | 393 ASSERT_TRUE(worker); |
389 registry()->OnWorkerReadyForInspection(worker->process_id(), | 394 registry()->OnWorkerReadyForInspection(worker->process_id(), |
390 embedded_worker_id); | 395 embedded_worker_id); |
391 } | 396 } |
392 | 397 |
(...skipping 132 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
525 mojom::FetchEventPreloadHandlePtr preload_handle, | 530 mojom::FetchEventPreloadHandlePtr preload_handle, |
526 const FetchCallback& callback) { | 531 const FetchCallback& callback) { |
527 base::ThreadTaskRunnerHandle::Get()->PostTask( | 532 base::ThreadTaskRunnerHandle::Get()->PostTask( |
528 FROM_HERE, | 533 FROM_HERE, |
529 base::Bind(&EmbeddedWorkerTestHelper::OnFetchEvent, AsWeakPtr(), | 534 base::Bind(&EmbeddedWorkerTestHelper::OnFetchEvent, AsWeakPtr(), |
530 thread_id_embedded_worker_id_map_[thread_id], fetch_event_id, | 535 thread_id_embedded_worker_id_map_[thread_id], fetch_event_id, |
531 request, base::Passed(&preload_handle), callback)); | 536 request, base::Passed(&preload_handle), callback)); |
532 } | 537 } |
533 | 538 |
534 void EmbeddedWorkerTestHelper::OnPushEventStub( | 539 void EmbeddedWorkerTestHelper::OnPushEventStub( |
535 int request_id, | 540 const PushEventPayload& payload, |
536 const PushEventPayload& payload) { | 541 const mojom::ServiceWorkerEventDispatcher::DispatchPushEventCallback& |
| 542 callback) { |
537 base::ThreadTaskRunnerHandle::Get()->PostTask( | 543 base::ThreadTaskRunnerHandle::Get()->PostTask( |
538 FROM_HERE, base::Bind(&EmbeddedWorkerTestHelper::OnPushEvent, AsWeakPtr(), | 544 FROM_HERE, base::Bind(&EmbeddedWorkerTestHelper::OnPushEvent, AsWeakPtr(), |
539 current_embedded_worker_id_, request_id, payload)); | 545 payload, callback)); |
540 } | 546 } |
541 | 547 |
542 EmbeddedWorkerRegistry* EmbeddedWorkerTestHelper::registry() { | 548 EmbeddedWorkerRegistry* EmbeddedWorkerTestHelper::registry() { |
543 DCHECK(context()); | 549 DCHECK(context()); |
544 return context()->embedded_worker_registry(); | 550 return context()->embedded_worker_registry(); |
545 } | 551 } |
546 | 552 |
547 MessagePortMessageFilter* | 553 MessagePortMessageFilter* |
548 EmbeddedWorkerTestHelper::NewMessagePortMessageFilter() { | 554 EmbeddedWorkerTestHelper::NewMessagePortMessageFilter() { |
549 scoped_refptr<MessagePortMessageFilter> filter( | 555 scoped_refptr<MessagePortMessageFilter> filter( |
(...skipping 18 matching lines...) Expand all Loading... |
568 service_manager::InterfaceProviderSpec()); | 574 service_manager::InterfaceProviderSpec()); |
569 | 575 |
570 std::unique_ptr<service_manager::InterfaceProvider> remote_interfaces( | 576 std::unique_ptr<service_manager::InterfaceProvider> remote_interfaces( |
571 new service_manager::InterfaceProvider); | 577 new service_manager::InterfaceProvider); |
572 remote_interfaces->Bind(std::move(interfaces)); | 578 remote_interfaces->Bind(std::move(interfaces)); |
573 rph->SetRemoteInterfaces(std::move(remote_interfaces)); | 579 rph->SetRemoteInterfaces(std::move(remote_interfaces)); |
574 return registry; | 580 return registry; |
575 } | 581 } |
576 | 582 |
577 } // namespace content | 583 } // namespace content |
OLD | NEW |