diff options
Diffstat (limited to 'chromium/third_party/blink/renderer/modules/service_worker/web_embedded_worker_impl_test.cc')
-rw-r--r-- | chromium/third_party/blink/renderer/modules/service_worker/web_embedded_worker_impl_test.cc | 34 |
1 files changed, 19 insertions, 15 deletions
diff --git a/chromium/third_party/blink/renderer/modules/service_worker/web_embedded_worker_impl_test.cc b/chromium/third_party/blink/renderer/modules/service_worker/web_embedded_worker_impl_test.cc index 17abf021c46..413cec9ea16 100644 --- a/chromium/third_party/blink/renderer/modules/service_worker/web_embedded_worker_impl_test.cc +++ b/chromium/third_party/blink/renderer/modules/service_worker/web_embedded_worker_impl_test.cc @@ -30,6 +30,24 @@ namespace blink { namespace { +// Fake network provider for service worker execution contexts. +class FakeServiceWorkerNetworkProvider + : public WebServiceWorkerNetworkProvider { + public: + FakeServiceWorkerNetworkProvider() = default; + ~FakeServiceWorkerNetworkProvider() override = default; + + // Return a loader from the mock factory. In production code, this uses the + // factory provided at worker startup to load non-installed scripts via + // ServiceWorkerScriptLoaderFactory. + std::unique_ptr<WebURLLoader> CreateURLLoader( + const WebURLRequest& request, + std::unique_ptr<scheduler::WebResourceLoadingTaskRunnerHandle>) override { + return Platform::Current()->GetURLLoaderMockFactory()->CreateURLLoader( + nullptr); + } +}; + class MockServiceWorkerContextClient : public WebServiceWorkerContextClient { public: MockServiceWorkerContextClient() = default; @@ -49,13 +67,9 @@ class MockServiceWorkerContextClient : public WebServiceWorkerContextClient { script_evaluated_event_.Signal(); } - // Work-around for mocking a method that return unique_ptr. - MOCK_METHOD0(CreateServiceWorkerNetworkProviderProxy, - WebServiceWorkerNetworkProvider*()); std::unique_ptr<WebServiceWorkerNetworkProvider> CreateServiceWorkerNetworkProvider() override { - return std::unique_ptr<WebServiceWorkerNetworkProvider>( - CreateServiceWorkerNetworkProviderProxy()); + return std::make_unique<FakeServiceWorkerNetworkProvider>(); } void WorkerContextDestroyed() override { termination_event_.Signal(); } @@ -162,8 +176,6 @@ TEST_F(WebEmbeddedWorkerImplTest, TerminateWhileLoadingScript) { testing::Mock::VerifyAndClearExpectations(mock_client_); // Load the shadow page. - EXPECT_CALL(*mock_client_, CreateServiceWorkerNetworkProviderProxy()) - .WillOnce(testing::Return(nullptr)); EXPECT_CALL(*mock_installed_scripts_manager_, IsScriptInstalled(KURL(start_data_.script_url))) .Times(testing::AtLeast(1)) @@ -186,8 +198,6 @@ TEST_F(WebEmbeddedWorkerImplTest, TerminateWhilePausedAfterDownload) { testing::Mock::VerifyAndClearExpectations(mock_client_); // Load the shadow page. - EXPECT_CALL(*mock_client_, CreateServiceWorkerNetworkProviderProxy()) - .WillOnce(testing::Return(nullptr)); EXPECT_CALL(*mock_installed_scripts_manager_, IsScriptInstalled(KURL(start_data_.script_url))) .Times(testing::AtLeast(1)) @@ -224,8 +234,6 @@ TEST_F(WebEmbeddedWorkerImplTest, ScriptNotFound) { testing::Mock::VerifyAndClearExpectations(mock_client_); // Load the shadow page. - EXPECT_CALL(*mock_client_, CreateServiceWorkerNetworkProviderProxy()) - .WillOnce(testing::Return(nullptr)); EXPECT_CALL(*mock_installed_scripts_manager_, IsScriptInstalled(KURL(start_data_.script_url))) .Times(testing::AtLeast(1)) @@ -255,8 +263,6 @@ TEST_F(WebEmbeddedWorkerImplTest, MAYBE_DontPauseAfterDownload) { testing::Mock::VerifyAndClearExpectations(mock_client_); // Load the shadow page. - EXPECT_CALL(*mock_client_, CreateServiceWorkerNetworkProviderProxy()) - .WillOnce(testing::Return(nullptr)); EXPECT_CALL(*mock_installed_scripts_manager_, IsScriptInstalled(KURL(start_data_.script_url))) .Times(testing::AtLeast(1)) @@ -298,8 +304,6 @@ TEST_F(WebEmbeddedWorkerImplTest, MAYBE_PauseAfterDownload) { testing::Mock::VerifyAndClearExpectations(mock_client_); // Load the shadow page. - EXPECT_CALL(*mock_client_, CreateServiceWorkerNetworkProviderProxy()) - .WillOnce(testing::Return(nullptr)); EXPECT_CALL(*mock_installed_scripts_manager_, IsScriptInstalled(KURL(start_data_.script_url))) .Times(testing::AtLeast(1)) |