Index: content/browser/service_worker/service_worker_dispatcher_host_unittest.cc |
diff --git a/content/browser/service_worker/service_worker_dispatcher_host_unittest.cc b/content/browser/service_worker/service_worker_dispatcher_host_unittest.cc |
index 0c3fdb678eea6b56ab493ca2eba85d61c9dd2b4d..44f58abcbe386fe4c686eb4ff1772eda855aa426 100644 |
--- a/content/browser/service_worker/service_worker_dispatcher_host_unittest.cc |
+++ b/content/browser/service_worker/service_worker_dispatcher_host_unittest.cc |
@@ -50,6 +50,12 @@ void SetUpDummyMessagePort(std::vector<MessagePort>* ports) { |
ports->push_back(MessagePort(std::move(pipe.handle0))); |
} |
+void NestedLoopRunUntilIdle() { |
+ base::MessageLoop::ScopedNestableTaskAllower nestable_allower( |
+ base::MessageLoop::current()); |
+ base::RunLoop().RunUntilIdle(); |
+} |
shimazu
2017/04/06 05:01:36
I still don't understand why we need nested loop h
leonhsl(Using Gerrit)
2017/04/06 09:58:55
Yeah actually we do not need nested loop here, I s
|
+ |
} // namespace |
static const int kRenderFrameId = 1; |
@@ -84,15 +90,18 @@ class FailToStartWorkerTestHelper : public EmbeddedWorkerTestHelper { |
public: |
FailToStartWorkerTestHelper() : EmbeddedWorkerTestHelper(base::FilePath()) {} |
- void 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) override { |
- EmbeddedWorkerInstance* worker = registry()->GetWorker(embedded_worker_id); |
- registry()->OnWorkerStopped(worker->process_id(), embedded_worker_id); |
+ void 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, |
+ mojom::EmbeddedWorkerInstanceHostAssociatedPtrInfo |
+ instance_host) override { |
+ mojom::EmbeddedWorkerInstanceHostAssociatedPtr instance_host_ptr; |
+ instance_host_ptr.Bind(std::move(instance_host)); |
+ instance_host_ptr->OnStopped(); |
+ NestedLoopRunUntilIdle(); |
} |
}; |