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

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

Issue 2653493009: Add two interfaces for ServiceWorkerProviderContext/ProviderHost (Closed)
Patch Set: Addressed comments from falken Created 3 years, 7 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 <stdint.h> 5 #include <stdint.h>
6 #include <tuple> 6 #include <tuple>
7 7
8 #include "base/files/scoped_temp_dir.h" 8 #include "base/files/scoped_temp_dir.h"
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/macros.h" 10 #include "base/macros.h"
(...skipping 155 matching lines...) Expand 10 before | Expand all | Expand 10 after
166 void RunUnregisterJob( 166 void RunUnregisterJob(
167 const GURL& pattern, 167 const GURL& pattern,
168 ServiceWorkerStatusCode expected_status = SERVICE_WORKER_OK); 168 ServiceWorkerStatusCode expected_status = SERVICE_WORKER_OK);
169 scoped_refptr<ServiceWorkerRegistration> FindRegistrationForPattern( 169 scoped_refptr<ServiceWorkerRegistration> FindRegistrationForPattern(
170 const GURL& pattern, 170 const GURL& pattern,
171 ServiceWorkerStatusCode expected_status = SERVICE_WORKER_OK); 171 ServiceWorkerStatusCode expected_status = SERVICE_WORKER_OK);
172 std::unique_ptr<ServiceWorkerProviderHost> CreateControllee(); 172 std::unique_ptr<ServiceWorkerProviderHost> CreateControllee();
173 173
174 TestBrowserThreadBundle browser_thread_bundle_; 174 TestBrowserThreadBundle browser_thread_bundle_;
175 std::unique_ptr<EmbeddedWorkerTestHelper> helper_; 175 std::unique_ptr<EmbeddedWorkerTestHelper> helper_;
176 std::vector<ServiceWorkerRemoteProviderEndpoint> remote_endpoints_;
176 }; 177 };
177 178
178 scoped_refptr<ServiceWorkerRegistration> ServiceWorkerJobTest::RunRegisterJob( 179 scoped_refptr<ServiceWorkerRegistration> ServiceWorkerJobTest::RunRegisterJob(
179 const GURL& pattern, 180 const GURL& pattern,
180 const GURL& script_url, 181 const GURL& script_url,
181 ServiceWorkerStatusCode expected_status) { 182 ServiceWorkerStatusCode expected_status) {
182 scoped_refptr<ServiceWorkerRegistration> registration; 183 scoped_refptr<ServiceWorkerRegistration> registration;
183 bool called; 184 bool called;
184 job_coordinator()->Register( 185 job_coordinator()->Register(
185 pattern, script_url, NULL, 186 pattern, script_url, NULL,
(...skipping 26 matching lines...) Expand all
212 SaveFoundRegistration(expected_status, &called, &registration)); 213 SaveFoundRegistration(expected_status, &called, &registration));
213 214
214 EXPECT_FALSE(called); 215 EXPECT_FALSE(called);
215 base::RunLoop().RunUntilIdle(); 216 base::RunLoop().RunUntilIdle();
216 EXPECT_TRUE(called); 217 EXPECT_TRUE(called);
217 return registration; 218 return registration;
218 } 219 }
219 220
220 std::unique_ptr<ServiceWorkerProviderHost> 221 std::unique_ptr<ServiceWorkerProviderHost>
221 ServiceWorkerJobTest::CreateControllee() { 222 ServiceWorkerJobTest::CreateControllee() {
223 remote_endpoints_.emplace_back();
222 std::unique_ptr<ServiceWorkerProviderHost> host = CreateProviderHostForWindow( 224 std::unique_ptr<ServiceWorkerProviderHost> host = CreateProviderHostForWindow(
223 33 /* dummy render process id */, 1 /* dummy provider_id */, 225 33 /* dummy render process id */, 1 /* dummy provider_id */,
224 true /* is_parent_frame_secure */, helper_->context()->AsWeakPtr()); 226 true /* is_parent_frame_secure */, helper_->context()->AsWeakPtr(),
227 &remote_endpoints_.back());
225 return host; 228 return host;
226 } 229 }
227 230
228 TEST_F(ServiceWorkerJobTest, SameDocumentSameRegistration) { 231 TEST_F(ServiceWorkerJobTest, SameDocumentSameRegistration) {
229 scoped_refptr<ServiceWorkerRegistration> original_registration = 232 scoped_refptr<ServiceWorkerRegistration> original_registration =
230 RunRegisterJob(GURL("http://www.example.com/"), 233 RunRegisterJob(GURL("http://www.example.com/"),
231 GURL("http://www.example.com/service_worker.js")); 234 GURL("http://www.example.com/service_worker.js"));
232 bool called; 235 bool called;
233 scoped_refptr<ServiceWorkerRegistration> registration1; 236 scoped_refptr<ServiceWorkerRegistration> registration1;
234 storage()->FindRegistrationForDocument( 237 storage()->FindRegistrationForDocument(
(...skipping 1566 matching lines...) Expand 10 before | Expand all | Expand 10 after
1801 // should not be promoted to ACTIVATED because failure occur 1804 // should not be promoted to ACTIVATED because failure occur
1802 // during shutdown. 1805 // during shutdown.
1803 runner->RunUntilIdle(); 1806 runner->RunUntilIdle();
1804 base::RunLoop().RunUntilIdle(); 1807 base::RunLoop().RunUntilIdle();
1805 EXPECT_EQ(new_version.get(), registration->active_version()); 1808 EXPECT_EQ(new_version.get(), registration->active_version());
1806 EXPECT_EQ(ServiceWorkerVersion::ACTIVATING, new_version->status()); 1809 EXPECT_EQ(ServiceWorkerVersion::ACTIVATING, new_version->status());
1807 registration->RemoveListener(update_helper); 1810 registration->RemoveListener(update_helper);
1808 } 1811 }
1809 1812
1810 } // namespace content 1813 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698