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

Side by Side Diff: content/browser/service_worker/embedded_worker_test_helper.cc

Issue 2678733002: [ServiceWorker] Mojofy ActivateEvent of Service Worker (Closed)
Patch Set: Address comments #25, #26, #33 Created 3 years, 10 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 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 <memory> 8 #include <memory>
9 #include <string> 9 #include <string>
10 #include <utility> 10 #include <utility>
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after
142 std::move(request)); 142 std::move(request));
143 } 143 }
144 144
145 MockServiceWorkerEventDispatcher( 145 MockServiceWorkerEventDispatcher(
146 const base::WeakPtr<EmbeddedWorkerTestHelper>& helper, 146 const base::WeakPtr<EmbeddedWorkerTestHelper>& helper,
147 int thread_id) 147 int thread_id)
148 : helper_(helper), thread_id_(thread_id) {} 148 : helper_(helper), thread_id_(thread_id) {}
149 149
150 ~MockServiceWorkerEventDispatcher() override {} 150 ~MockServiceWorkerEventDispatcher() override {}
151 151
152 void DispatchActivateEvent(
153 const DispatchActivateEventCallback& callback) override {
154 if (!helper_)
155 return;
156 helper_->OnActivateEventStub(callback);
157 }
158
152 void DispatchFetchEvent(int fetch_event_id, 159 void DispatchFetchEvent(int fetch_event_id,
153 const ServiceWorkerFetchRequest& request, 160 const ServiceWorkerFetchRequest& request,
154 mojom::FetchEventPreloadHandlePtr preload_handle, 161 mojom::FetchEventPreloadHandlePtr preload_handle,
155 const DispatchFetchEventCallback& callback) override { 162 const DispatchFetchEventCallback& callback) override {
156 if (!helper_) 163 if (!helper_)
157 return; 164 return;
158 helper_->OnFetchEventStub(thread_id_, fetch_event_id, request, 165 helper_->OnFetchEventStub(thread_id_, fetch_event_id, request,
159 std::move(preload_handle), callback); 166 std::move(preload_handle), callback);
160 } 167 }
161 168
(...skipping 175 matching lines...) Expand 10 before | Expand all | Expand 10 after
337 // By default just notify the sender that the worker is stopped. 344 // By default just notify the sender that the worker is stopped.
338 callback.Run(); 345 callback.Run();
339 } 346 }
340 347
341 bool EmbeddedWorkerTestHelper::OnMessageToWorker(int thread_id, 348 bool EmbeddedWorkerTestHelper::OnMessageToWorker(int thread_id,
342 int embedded_worker_id, 349 int embedded_worker_id,
343 const IPC::Message& message) { 350 const IPC::Message& message) {
344 bool handled = true; 351 bool handled = true;
345 current_embedded_worker_id_ = embedded_worker_id; 352 current_embedded_worker_id_ = embedded_worker_id;
346 IPC_BEGIN_MESSAGE_MAP(EmbeddedWorkerTestHelper, message) 353 IPC_BEGIN_MESSAGE_MAP(EmbeddedWorkerTestHelper, message)
347 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_ActivateEvent, OnActivateEventStub)
348 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_InstallEvent, OnInstallEventStub) 354 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_InstallEvent, OnInstallEventStub)
349 IPC_MESSAGE_UNHANDLED(handled = false) 355 IPC_MESSAGE_UNHANDLED(handled = false)
350 IPC_END_MESSAGE_MAP() 356 IPC_END_MESSAGE_MAP()
351 // Record all messages directed to inner script context. 357 // Record all messages directed to inner script context.
352 inner_sink_.OnMessageReceived(message); 358 inner_sink_.OnMessageReceived(message);
353 return handled; 359 return handled;
354 } 360 }
355 361
356 void EmbeddedWorkerTestHelper::OnActivateEvent(int embedded_worker_id, 362 void EmbeddedWorkerTestHelper::OnActivateEvent(
357 int request_id) { 363 const mojom::ServiceWorkerEventDispatcher::DispatchActivateEventCallback&
358 SimulateSend(new ServiceWorkerHostMsg_ActivateEventFinished( 364 callback) {
359 embedded_worker_id, request_id, 365 events_ptr()->push_back(Event::Activate);
360 blink::WebServiceWorkerEventResultCompleted, base::Time::Now())); 366 callback.Run(SERVICE_WORKER_OK, base::Time::Now());
361 } 367 }
362 368
363 void EmbeddedWorkerTestHelper::OnExtendableMessageEvent( 369 void EmbeddedWorkerTestHelper::OnExtendableMessageEvent(
364 mojom::ExtendableMessageEventPtr event, 370 mojom::ExtendableMessageEventPtr event,
365 const mojom::ServiceWorkerEventDispatcher:: 371 const mojom::ServiceWorkerEventDispatcher::
366 DispatchExtendableMessageEventCallback& callback) { 372 DispatchExtendableMessageEventCallback& callback) {
367 callback.Run(SERVICE_WORKER_OK, base::Time::Now()); 373 callback.Run(SERVICE_WORKER_OK, base::Time::Now());
368 } 374 }
369 375
370 void EmbeddedWorkerTestHelper::OnInstallEvent(int embedded_worker_id, 376 void EmbeddedWorkerTestHelper::OnInstallEvent(int embedded_worker_id,
(...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after
537 EmbeddedWorkerInstance* worker = registry()->GetWorker(embedded_worker_id); 543 EmbeddedWorkerInstance* worker = registry()->GetWorker(embedded_worker_id);
538 ASSERT_TRUE(worker); 544 ASSERT_TRUE(worker);
539 EXPECT_EQ(worker->thread_id(), thread_id); 545 EXPECT_EQ(worker->thread_id(), thread_id);
540 base::ThreadTaskRunnerHandle::Get()->PostTask( 546 base::ThreadTaskRunnerHandle::Get()->PostTask(
541 FROM_HERE, 547 FROM_HERE,
542 base::Bind( 548 base::Bind(
543 base::IgnoreResult(&EmbeddedWorkerTestHelper::OnMessageToWorker), 549 base::IgnoreResult(&EmbeddedWorkerTestHelper::OnMessageToWorker),
544 AsWeakPtr(), thread_id, embedded_worker_id, message)); 550 AsWeakPtr(), thread_id, embedded_worker_id, message));
545 } 551 }
546 552
547 void EmbeddedWorkerTestHelper::OnActivateEventStub(int request_id) { 553 void EmbeddedWorkerTestHelper::OnActivateEventStub(
554 const mojom::ServiceWorkerEventDispatcher::DispatchActivateEventCallback&
555 callback) {
548 base::ThreadTaskRunnerHandle::Get()->PostTask( 556 base::ThreadTaskRunnerHandle::Get()->PostTask(
549 FROM_HERE, 557 FROM_HERE, base::Bind(&EmbeddedWorkerTestHelper::OnActivateEvent,
550 base::Bind(&EmbeddedWorkerTestHelper::OnActivateEvent, AsWeakPtr(), 558 AsWeakPtr(), callback));
551 current_embedded_worker_id_, request_id));
552 } 559 }
553 560
554 void EmbeddedWorkerTestHelper::OnExtendableMessageEventStub( 561 void EmbeddedWorkerTestHelper::OnExtendableMessageEventStub(
555 mojom::ExtendableMessageEventPtr event, 562 mojom::ExtendableMessageEventPtr event,
556 const mojom::ServiceWorkerEventDispatcher:: 563 const mojom::ServiceWorkerEventDispatcher::
557 DispatchExtendableMessageEventCallback& callback) { 564 DispatchExtendableMessageEventCallback& callback) {
558 base::ThreadTaskRunnerHandle::Get()->PostTask( 565 base::ThreadTaskRunnerHandle::Get()->PostTask(
559 FROM_HERE, base::Bind(&EmbeddedWorkerTestHelper::OnExtendableMessageEvent, 566 FROM_HERE, base::Bind(&EmbeddedWorkerTestHelper::OnExtendableMessageEvent,
560 AsWeakPtr(), base::Passed(&event), callback)); 567 AsWeakPtr(), base::Passed(&event), callback));
561 } 568 }
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
650 service_manager::InterfaceProviderSpec()); 657 service_manager::InterfaceProviderSpec());
651 658
652 std::unique_ptr<service_manager::InterfaceProvider> remote_interfaces( 659 std::unique_ptr<service_manager::InterfaceProvider> remote_interfaces(
653 new service_manager::InterfaceProvider); 660 new service_manager::InterfaceProvider);
654 remote_interfaces->Bind(std::move(interfaces)); 661 remote_interfaces->Bind(std::move(interfaces));
655 rph->SetRemoteInterfaces(std::move(remote_interfaces)); 662 rph->SetRemoteInterfaces(std::move(remote_interfaces));
656 return registry; 663 return registry;
657 } 664 }
658 665
659 } // namespace content 666 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698