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

Unified Diff: content/browser/service_worker/embedded_worker_test_helper.cc

Issue 2746783002: [ServiceWorker] Mojofy InstallEvent of Service Worker (Closed)
Patch Set: Rebase Created 3 years, 8 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 side-by-side diff with in-line comments
Download patch
Index: content/browser/service_worker/embedded_worker_test_helper.cc
diff --git a/content/browser/service_worker/embedded_worker_test_helper.cc b/content/browser/service_worker/embedded_worker_test_helper.cc
index 388d0757841baaf5a3731038a62f5dfd6f9d6be0..b03792c1a0cea084ccd09b885eff3e6dff5b55d8 100644
--- a/content/browser/service_worker/embedded_worker_test_helper.cc
+++ b/content/browser/service_worker/embedded_worker_test_helper.cc
@@ -27,6 +27,7 @@
#include "content/common/background_fetch/background_fetch_types.h"
#include "content/common/service_worker/embedded_worker_messages.h"
#include "content/common/service_worker/embedded_worker_start_params.h"
+#include "content/common/service_worker/service_worker_event_dispatcher.mojom.h"
#include "content/common/service_worker/service_worker_messages.h"
#include "content/common/service_worker/service_worker_utils.h"
#include "content/public/common/push_event_payload.h"
@@ -158,6 +159,14 @@ class EmbeddedWorkerTestHelper::MockServiceWorkerEventDispatcher
~MockServiceWorkerEventDispatcher() override {}
+ void DispatchInstallEvent(
+ mojom::ServiceWorkerInstallEventMethodsAssociatedPtrInfo client,
+ const DispatchInstallEventCallback& callback) override {
+ if (!helper_)
+ return;
+ helper_->OnInstallEventStub(callback);
+ }
+
void DispatchActivateEvent(
const DispatchActivateEventCallback& callback) override {
if (!helper_)
@@ -418,11 +427,6 @@ bool EmbeddedWorkerTestHelper::OnMessageToWorker(int thread_id,
int embedded_worker_id,
const IPC::Message& message) {
bool handled = true;
leonhsl(Using Gerrit) 2017/04/23 03:33:10 After install event mojofication this function wil
shimazu 2017/04/24 05:00:13 It's great work! Let's remove no-op functions (inn
xiaofengzhang 2017/04/24 05:44:08 Hi leon@, shimazu-san@, OnMessageToWorker is still
shimazu 2017/04/24 06:22:18 I feel separating cleanup work is not preferable b
xiaofengzhang 2017/04/25 06:01:28 Done. Thanks a lot for you detailed explanation!
- current_embedded_worker_id_ = embedded_worker_id;
- IPC_BEGIN_MESSAGE_MAP(EmbeddedWorkerTestHelper, message)
- IPC_MESSAGE_HANDLER(ServiceWorkerMsg_InstallEvent, OnInstallEventStub)
- IPC_MESSAGE_UNHANDLED(handled = false)
- IPC_END_MESSAGE_MAP()
// Record all messages directed to inner script context.
inner_sink_.OnMessageReceived(message);
return handled;
@@ -473,14 +477,12 @@ void EmbeddedWorkerTestHelper::OnExtendableMessageEvent(
callback.Run(SERVICE_WORKER_OK, base::Time::Now());
}
-void EmbeddedWorkerTestHelper::OnInstallEvent(int embedded_worker_id,
- int request_id) {
- // The installing worker may have been doomed and terminated.
- if (!registry()->GetWorker(embedded_worker_id))
- return;
- SimulateSend(new ServiceWorkerHostMsg_InstallEventFinished(
- embedded_worker_id, request_id,
- blink::kWebServiceWorkerEventResultCompleted, true, base::Time::Now()));
+void EmbeddedWorkerTestHelper::OnInstallEvent(
+ const mojom::ServiceWorkerEventDispatcher::DispatchInstallEventCallback&
+ callback) {
+ dispatched_events()->push_back(Event::Install);
+ callback.Run(SERVICE_WORKER_OK, true /* has_fetch_handler */,
+ base::Time::Now());
}
void EmbeddedWorkerTestHelper::OnFetchEvent(
@@ -735,11 +737,12 @@ void EmbeddedWorkerTestHelper::OnExtendableMessageEventStub(
AsWeakPtr(), base::Passed(&event), callback));
}
-void EmbeddedWorkerTestHelper::OnInstallEventStub(int request_id) {
+void EmbeddedWorkerTestHelper::OnInstallEventStub(
+ const mojom::ServiceWorkerEventDispatcher::DispatchInstallEventCallback&
+ callback) {
base::ThreadTaskRunnerHandle::Get()->PostTask(
- FROM_HERE,
- base::Bind(&EmbeddedWorkerTestHelper::OnInstallEvent, AsWeakPtr(),
- current_embedded_worker_id_, request_id));
+ FROM_HERE, base::Bind(&EmbeddedWorkerTestHelper::OnInstallEvent,
+ AsWeakPtr(), callback));
}
void EmbeddedWorkerTestHelper::OnFetchEventStub(

Powered by Google App Engine
This is Rietveld 408576698