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 b2f802133e3304c61d69a9c05e8eebff7d25e177..93abef456f330cac6d41d9a786eb8b32b5f68e41 100644 |
--- a/content/browser/service_worker/embedded_worker_test_helper.cc |
+++ b/content/browser/service_worker/embedded_worker_test_helper.cc |
@@ -61,26 +61,17 @@ class MockMessagePortMessageFilter : public MessagePortMessageFilter { |
class EmbeddedWorkerTestHelper::MockEmbeddedWorkerSetup |
: public mojom::EmbeddedWorkerSetup { |
public: |
- explicit MockEmbeddedWorkerSetup( |
- const base::WeakPtr<EmbeddedWorkerTestHelper>& helper) |
- : helper_(helper) {} |
- |
static void Create(const base::WeakPtr<EmbeddedWorkerTestHelper>& helper, |
mojom::EmbeddedWorkerSetupRequest request) { |
- mojo::MakeStrongBinding(base::MakeUnique<MockEmbeddedWorkerSetup>(helper), |
- std::move(request)); |
+ // TODO(shimazu): Remove this mock after EmbeddedWorkerSetup is removed. |
+ NOTREACHED(); |
} |
void AttachServiceWorkerEventDispatcher( |
int32_t thread_id, |
mojom::ServiceWorkerEventDispatcherRequest request) override { |
- if (!helper_) |
- return; |
- helper_->OnSetupMojo(thread_id, std::move(request)); |
+ NOTREACHED(); |
} |
- |
- private: |
- base::WeakPtr<EmbeddedWorkerTestHelper> helper_; |
}; |
EmbeddedWorkerTestHelper::MockEmbeddedWorkerInstanceClient:: |
@@ -101,18 +92,10 @@ void EmbeddedWorkerTestHelper::MockEmbeddedWorkerInstanceClient::StartWorker( |
EmbeddedWorkerInstance* worker = |
helper_->registry()->GetWorker(params.embedded_worker_id); |
- ASSERT_TRUE(worker != NULL); |
+ ASSERT_TRUE(worker); |
EXPECT_EQ(EmbeddedWorkerStatus::STARTING, worker->status()); |
- base::ThreadTaskRunnerHandle::Get()->PostTask( |
- FROM_HERE, |
- base::Bind(&EmbeddedWorkerTestHelper::OnStartWorker, helper_->AsWeakPtr(), |
- params.embedded_worker_id, params.service_worker_version_id, |
- params.scope, params.script_url, params.pause_after_download)); |
- base::ThreadTaskRunnerHandle::Get()->PostTask( |
- FROM_HERE, |
- base::Bind(&EmbeddedWorkerTestHelper::OnSetupMojo, helper_->AsWeakPtr(), |
- worker->thread_id(), base::Passed(&dispatcher_request))); |
+ helper_->OnStartWorkerStub(params, std::move(dispatcher_request)); |
} |
void EmbeddedWorkerTestHelper::MockEmbeddedWorkerInstanceClient::StopWorker( |
@@ -127,7 +110,7 @@ void EmbeddedWorkerTestHelper::MockEmbeddedWorkerInstanceClient::StopWorker( |
// is removed right after sending StopWorker. |
if (worker) |
EXPECT_EQ(EmbeddedWorkerStatus::STOPPING, worker->status()); |
- callback.Run(); |
+ helper_->OnStopWorkerStub(callback); |
} |
// static |
@@ -256,10 +239,8 @@ bool EmbeddedWorkerTestHelper::Send(IPC::Message* message) { |
bool EmbeddedWorkerTestHelper::OnMessageReceived(const IPC::Message& message) { |
bool handled = true; |
IPC_BEGIN_MESSAGE_MAP(EmbeddedWorkerTestHelper, message) |
- IPC_MESSAGE_HANDLER(EmbeddedWorkerMsg_StartWorker, OnStartWorkerStub) |
IPC_MESSAGE_HANDLER(EmbeddedWorkerMsg_ResumeAfterDownload, |
OnResumeAfterDownloadStub) |
- IPC_MESSAGE_HANDLER(EmbeddedWorkerMsg_StopWorker, OnStopWorkerStub) |
IPC_MESSAGE_HANDLER(EmbeddedWorkerContextMsg_MessageToWorker, |
OnMessageToWorkerStub) |
IPC_MESSAGE_UNHANDLED(handled = false) |
@@ -298,11 +279,18 @@ net::HttpResponseInfo EmbeddedWorkerTestHelper::CreateHttpResponseInfo() { |
return info; |
} |
-void EmbeddedWorkerTestHelper::OnStartWorker(int embedded_worker_id, |
- int64_t service_worker_version_id, |
- const GURL& scope, |
- const GURL& script_url, |
- bool pause_after_download) { |
+void EmbeddedWorkerTestHelper::OnStartWorker( |
+ int embedded_worker_id, |
+ int64_t service_worker_version_id, |
+ const GURL& scope, |
+ const GURL& script_url, |
+ bool pause_after_download, |
+ mojom::ServiceWorkerEventDispatcherRequest request) { |
+ EmbeddedWorkerInstance* worker = registry()->GetWorker(embedded_worker_id); |
+ ASSERT_TRUE(worker); |
+ MockServiceWorkerEventDispatcher::Create(AsWeakPtr(), worker->thread_id(), |
+ std::move(request)); |
+ |
embedded_worker_id_service_worker_version_id_map_[embedded_worker_id] = |
service_worker_version_id; |
SimulateWorkerReadyForInspection(embedded_worker_id); |
@@ -318,9 +306,10 @@ void EmbeddedWorkerTestHelper::OnResumeAfterDownload(int embedded_worker_id) { |
SimulateWorkerStarted(embedded_worker_id); |
} |
-void EmbeddedWorkerTestHelper::OnStopWorker(int embedded_worker_id) { |
+void EmbeddedWorkerTestHelper::OnStopWorker( |
+ const mojom::EmbeddedWorkerInstanceClient::StopWorkerCallback& callback) { |
// By default just notify the sender that the worker is stopped. |
- SimulateWorkerStopped(embedded_worker_id); |
+ callback.Run(); |
} |
bool EmbeddedWorkerTestHelper::OnMessageToWorker(int thread_id, |
@@ -339,13 +328,6 @@ bool EmbeddedWorkerTestHelper::OnMessageToWorker(int thread_id, |
return handled; |
} |
-void EmbeddedWorkerTestHelper::OnSetupMojo( |
- int thread_id, |
- mojom::ServiceWorkerEventDispatcherRequest dispatcher_request) { |
- MockServiceWorkerEventDispatcher::Create(AsWeakPtr(), thread_id, |
- std::move(dispatcher_request)); |
-} |
- |
void EmbeddedWorkerTestHelper::OnActivateEvent(int embedded_worker_id, |
int request_id) { |
SimulateSend(new ServiceWorkerHostMsg_ActivateEventFinished( |
@@ -403,7 +385,7 @@ void EmbeddedWorkerTestHelper::OnPushEvent(int embedded_worker_id, |
void EmbeddedWorkerTestHelper::SimulateWorkerReadyForInspection( |
int embedded_worker_id) { |
EmbeddedWorkerInstance* worker = registry()->GetWorker(embedded_worker_id); |
- ASSERT_TRUE(worker != NULL); |
+ ASSERT_TRUE(worker); |
registry()->OnWorkerReadyForInspection(worker->process_id(), |
embedded_worker_id); |
} |
@@ -428,7 +410,7 @@ void EmbeddedWorkerTestHelper::SimulateWorkerScriptCached( |
void EmbeddedWorkerTestHelper::SimulateWorkerScriptLoaded( |
int embedded_worker_id) { |
EmbeddedWorkerInstance* worker = registry()->GetWorker(embedded_worker_id); |
- ASSERT_TRUE(worker != NULL); |
+ ASSERT_TRUE(worker); |
registry()->OnWorkerScriptLoaded(worker->process_id(), embedded_worker_id); |
} |
@@ -437,7 +419,7 @@ void EmbeddedWorkerTestHelper::SimulateWorkerThreadStarted( |
int embedded_worker_id) { |
thread_id_embedded_worker_id_map_[thread_id] = embedded_worker_id; |
EmbeddedWorkerInstance* worker = registry()->GetWorker(embedded_worker_id); |
- ASSERT_TRUE(worker != NULL); |
+ ASSERT_TRUE(worker); |
registry()->OnWorkerThreadStarted(worker->process_id(), thread_id, |
embedded_worker_id); |
} |
@@ -446,20 +428,20 @@ void EmbeddedWorkerTestHelper::SimulateWorkerScriptEvaluated( |
int embedded_worker_id, |
bool success) { |
EmbeddedWorkerInstance* worker = registry()->GetWorker(embedded_worker_id); |
- ASSERT_TRUE(worker != NULL); |
+ ASSERT_TRUE(worker); |
registry()->OnWorkerScriptEvaluated(worker->process_id(), embedded_worker_id, |
success); |
} |
void EmbeddedWorkerTestHelper::SimulateWorkerStarted(int embedded_worker_id) { |
EmbeddedWorkerInstance* worker = registry()->GetWorker(embedded_worker_id); |
- ASSERT_TRUE(worker != NULL); |
+ ASSERT_TRUE(worker); |
registry()->OnWorkerStarted(worker->process_id(), embedded_worker_id); |
} |
void EmbeddedWorkerTestHelper::SimulateWorkerStopped(int embedded_worker_id) { |
EmbeddedWorkerInstance* worker = registry()->GetWorker(embedded_worker_id); |
- if (worker != NULL) |
+ if (worker) |
registry()->OnWorkerStopped(worker->process_id(), embedded_worker_id); |
} |
@@ -469,16 +451,18 @@ void EmbeddedWorkerTestHelper::SimulateSend(IPC::Message* message) { |
} |
void EmbeddedWorkerTestHelper::OnStartWorkerStub( |
- const EmbeddedWorkerStartParams& params) { |
+ const EmbeddedWorkerStartParams& params, |
+ mojom::ServiceWorkerEventDispatcherRequest request) { |
EmbeddedWorkerInstance* worker = |
registry()->GetWorker(params.embedded_worker_id); |
- ASSERT_TRUE(worker != NULL); |
+ ASSERT_TRUE(worker); |
EXPECT_EQ(EmbeddedWorkerStatus::STARTING, worker->status()); |
base::ThreadTaskRunnerHandle::Get()->PostTask( |
FROM_HERE, |
base::Bind(&EmbeddedWorkerTestHelper::OnStartWorker, AsWeakPtr(), |
params.embedded_worker_id, params.service_worker_version_id, |
- params.scope, params.script_url, params.pause_after_download)); |
+ params.scope, params.script_url, params.pause_after_download, |
+ base::Passed(&request))); |
} |
void EmbeddedWorkerTestHelper::OnResumeAfterDownloadStub( |
@@ -490,12 +474,11 @@ void EmbeddedWorkerTestHelper::OnResumeAfterDownloadStub( |
AsWeakPtr(), embedded_worker_id)); |
} |
-void EmbeddedWorkerTestHelper::OnStopWorkerStub(int embedded_worker_id) { |
- EmbeddedWorkerInstance* worker = registry()->GetWorker(embedded_worker_id); |
- ASSERT_TRUE(worker != NULL); |
+void EmbeddedWorkerTestHelper::OnStopWorkerStub( |
+ const mojom::EmbeddedWorkerInstanceClient::StopWorkerCallback& callback) { |
base::ThreadTaskRunnerHandle::Get()->PostTask( |
FROM_HERE, base::Bind(&EmbeddedWorkerTestHelper::OnStopWorker, |
- AsWeakPtr(), embedded_worker_id)); |
+ AsWeakPtr(), callback)); |
} |
void EmbeddedWorkerTestHelper::OnMessageToWorkerStub( |
@@ -503,7 +486,7 @@ void EmbeddedWorkerTestHelper::OnMessageToWorkerStub( |
int embedded_worker_id, |
const IPC::Message& message) { |
EmbeddedWorkerInstance* worker = registry()->GetWorker(embedded_worker_id); |
- ASSERT_TRUE(worker != NULL); |
+ ASSERT_TRUE(worker); |
EXPECT_EQ(worker->thread_id(), thread_id); |
base::ThreadTaskRunnerHandle::Get()->PostTask( |
FROM_HERE, |