Chromium Code Reviews| Index: content/browser/service_worker/service_worker_browsertest.cc |
| diff --git a/content/browser/service_worker/service_worker_browsertest.cc b/content/browser/service_worker/service_worker_browsertest.cc |
| index a23481be5409daf8ff2abb0edb940307dd9b4e52..dc0dfee4fb0c1bb930c74140bc5f4592037dd933 100644 |
| --- a/content/browser/service_worker/service_worker_browsertest.cc |
| +++ b/content/browser/service_worker/service_worker_browsertest.cc |
| @@ -237,6 +237,19 @@ class ServiceWorkerVersionBrowserTest : public ServiceWorkerBrowserTest { |
| -1, CreateReceiver(BrowserThread::UI, done, result)); |
| } |
| + void FetchOnIOThread(const base::Closure& done, |
| + ServiceWorkerStatusCode* result) { |
|
nhiroki
2014/02/14 09:03:21
ditto.
falken
2014/02/19 05:32:19
Done.
|
| + ASSERT_TRUE(BrowserThread::CurrentlyOn(BrowserThread::IO)); |
| + ServiceWorkerFetchRequest request( |
| + embedded_test_server()->GetURL("/service_worker/empty.html"), |
| + "GET", |
| + std::map<std::string, std::string>()); |
| + // TODO(falken): Actually receive and test the ServiceWorkerFetchResponse. |
| + version_->DispatchFetchEvent( |
| + request, CreateReceiver(BrowserThread::UI, done, result)); |
| + } |
| + |
| + |
| void StopOnIOThread(const base::Closure& done, |
| ServiceWorkerStatusCode* result) { |
| ASSERT_TRUE(version_); |
| @@ -325,4 +338,18 @@ IN_PROC_BROWSER_TEST_F(ServiceWorkerVersionBrowserTest, |
| InstallTestHelper("/service_worker/worker_install_rejected.js"); |
| } |
| +IN_PROC_BROWSER_TEST_F(ServiceWorkerVersionBrowserTest, Fetch) { |
| + RunOnIOThread(base::Bind(&self::SetUpRegistrationOnIOThread, this, |
| + "/service_worker/worker.js")); |
| + |
| + ServiceWorkerStatusCode status = SERVICE_WORKER_ERROR_FAILED; |
| + base::RunLoop fetch_run_loop; |
| + BrowserThread::PostTask(BrowserThread::IO, FROM_HERE, |
| + base::Bind(&self::FetchOnIOThread, this, |
| + fetch_run_loop.QuitClosure(), |
| + &status)); |
| + fetch_run_loop.Run(); |
| + ASSERT_EQ(SERVICE_WORKER_OK, status); |
| +} |
| + |
| } // namespace content |