| OLD | NEW |
| 1 | 1 |
| 2 // Copyright 2014 The Chromium Authors. All rights reserved. | 2 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 3 // Use of this source code is governed by a BSD-style license that can be | 3 // Use of this source code is governed by a BSD-style license that can be |
| 4 // found in the LICENSE file. | 4 // found in the LICENSE file. |
| 5 | 5 |
| 6 #include "config.h" | 6 #include "config.h" |
| 7 #include "modules/serviceworkers/ServiceWorkerContainer.h" | 7 #include "modules/serviceworkers/ServiceWorkerContainer.h" |
| 8 | 8 |
| 9 #include "bindings/core/v8/Dictionary.h" | 9 #include "bindings/core/v8/Dictionary.h" |
| 10 #include "bindings/core/v8/ScriptFunction.h" | 10 #include "bindings/core/v8/ScriptFunction.h" |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 63 return self->bindToV8Function(); | 63 return self->bindToV8Function(); |
| 64 } | 64 } |
| 65 | 65 |
| 66 private: | 66 private: |
| 67 ScriptFunctionImpl(ScriptState* scriptState, StubScriptFunction& owner) | 67 ScriptFunctionImpl(ScriptState* scriptState, StubScriptFunction& owner) |
| 68 : ScriptFunction(scriptState) | 68 : ScriptFunction(scriptState) |
| 69 , m_owner(owner) | 69 , m_owner(owner) |
| 70 { | 70 { |
| 71 } | 71 } |
| 72 | 72 |
| 73 virtual ScriptValue call(ScriptValue arg) override | 73 ScriptValue call(ScriptValue arg) override |
| 74 { | 74 { |
| 75 m_owner.m_arg = arg; | 75 m_owner.m_arg = arg; |
| 76 m_owner.m_callCount++; | 76 m_owner.m_callCount++; |
| 77 return ScriptValue(); | 77 return ScriptValue(); |
| 78 } | 78 } |
| 79 | 79 |
| 80 StubScriptFunction& m_owner; | 80 StubScriptFunction& m_owner; |
| 81 }; | 81 }; |
| 82 }; | 82 }; |
| 83 | 83 |
| (...skipping 20 matching lines...) Expand all Loading... |
| 104 | 104 |
| 105 // Matches a ScriptValue and a DOMException with a specific name and message. | 105 // Matches a ScriptValue and a DOMException with a specific name and message. |
| 106 class ExpectDOMException : public ScriptValueTest { | 106 class ExpectDOMException : public ScriptValueTest { |
| 107 public: | 107 public: |
| 108 ExpectDOMException(const String& expectedName, const String& expectedMessage
) | 108 ExpectDOMException(const String& expectedName, const String& expectedMessage
) |
| 109 : m_expectedName(expectedName) | 109 : m_expectedName(expectedName) |
| 110 , m_expectedMessage(expectedMessage) | 110 , m_expectedMessage(expectedMessage) |
| 111 { | 111 { |
| 112 } | 112 } |
| 113 | 113 |
| 114 virtual ~ExpectDOMException() override { } | 114 ~ExpectDOMException() override { } |
| 115 | 115 |
| 116 virtual void operator()(ScriptValue value) const override | 116 void operator()(ScriptValue value) const override |
| 117 { | 117 { |
| 118 DOMException* exception = V8DOMException::toImplWithTypeCheck(value.isol
ate(), value.v8Value()); | 118 DOMException* exception = V8DOMException::toImplWithTypeCheck(value.isol
ate(), value.v8Value()); |
| 119 EXPECT_TRUE(exception) << "the value should be a DOMException"; | 119 EXPECT_TRUE(exception) << "the value should be a DOMException"; |
| 120 if (!exception) | 120 if (!exception) |
| 121 return; | 121 return; |
| 122 EXPECT_EQ(m_expectedName, exception->name()); | 122 EXPECT_EQ(m_expectedName, exception->name()); |
| 123 EXPECT_EQ(m_expectedMessage, exception->message()); | 123 EXPECT_EQ(m_expectedMessage, exception->message()); |
| 124 } | 124 } |
| 125 | 125 |
| 126 private: | 126 private: |
| 127 String m_expectedName; | 127 String m_expectedName; |
| 128 String m_expectedMessage; | 128 String m_expectedMessage; |
| 129 }; | 129 }; |
| 130 | 130 |
| 131 // Service Worker-specific tests. | 131 // Service Worker-specific tests. |
| 132 | 132 |
| 133 class NotReachedWebServiceWorkerProvider : public WebServiceWorkerProvider { | 133 class NotReachedWebServiceWorkerProvider : public WebServiceWorkerProvider { |
| 134 public: | 134 public: |
| 135 virtual ~NotReachedWebServiceWorkerProvider() override { } | 135 ~NotReachedWebServiceWorkerProvider() override { } |
| 136 | 136 |
| 137 virtual void registerServiceWorker(const WebURL& pattern, const WebURL& scri
ptURL, WebServiceWorkerRegistrationCallbacks* callbacks) override | 137 void registerServiceWorker(const WebURL& pattern, const WebURL& scriptURL, W
ebServiceWorkerRegistrationCallbacks* callbacks) override |
| 138 { | 138 { |
| 139 ADD_FAILURE() << "the provider should not be called to register a Servic
e Worker"; | 139 ADD_FAILURE() << "the provider should not be called to register a Servic
e Worker"; |
| 140 delete callbacks; | 140 delete callbacks; |
| 141 } | 141 } |
| 142 }; | 142 }; |
| 143 | 143 |
| 144 class ServiceWorkerContainerTest : public ::testing::Test { | 144 class ServiceWorkerContainerTest : public ::testing::Test { |
| 145 protected: | 145 protected: |
| 146 ServiceWorkerContainerTest() | 146 ServiceWorkerContainerTest() |
| 147 : m_page(DummyPageHolder::create()) | 147 : m_page(DummyPageHolder::create()) |
| (...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 271 const WebURL& getRegistrationURL() { return m_getRegistrationURL; } | 271 const WebURL& getRegistrationURL() { return m_getRegistrationURL; } |
| 272 | 272 |
| 273 private: | 273 private: |
| 274 class WebServiceWorkerProviderImpl : public WebServiceWorkerProvider { | 274 class WebServiceWorkerProviderImpl : public WebServiceWorkerProvider { |
| 275 public: | 275 public: |
| 276 WebServiceWorkerProviderImpl(StubWebServiceWorkerProvider& owner) | 276 WebServiceWorkerProviderImpl(StubWebServiceWorkerProvider& owner) |
| 277 : m_owner(owner) | 277 : m_owner(owner) |
| 278 { | 278 { |
| 279 } | 279 } |
| 280 | 280 |
| 281 virtual ~WebServiceWorkerProviderImpl() override { } | 281 ~WebServiceWorkerProviderImpl() override { } |
| 282 | 282 |
| 283 virtual void registerServiceWorker(const WebURL& pattern, const WebURL&
scriptURL, WebServiceWorkerRegistrationCallbacks* callbacks) override | 283 void registerServiceWorker(const WebURL& pattern, const WebURL& scriptUR
L, WebServiceWorkerRegistrationCallbacks* callbacks) override |
| 284 { | 284 { |
| 285 m_owner.m_registerCallCount++; | 285 m_owner.m_registerCallCount++; |
| 286 m_owner.m_registerScope = pattern; | 286 m_owner.m_registerScope = pattern; |
| 287 m_owner.m_registerScriptURL = scriptURL; | 287 m_owner.m_registerScriptURL = scriptURL; |
| 288 m_registrationCallbacksToDelete.append(adoptPtr(callbacks)); | 288 m_registrationCallbacksToDelete.append(adoptPtr(callbacks)); |
| 289 } | 289 } |
| 290 | 290 |
| 291 virtual void getRegistration(const WebURL& documentURL, WebServiceWorker
GetRegistrationCallbacks* callbacks) override | 291 void getRegistration(const WebURL& documentURL, WebServiceWorkerGetRegis
trationCallbacks* callbacks) override |
| 292 { | 292 { |
| 293 m_owner.m_getRegistrationCallCount++; | 293 m_owner.m_getRegistrationCallCount++; |
| 294 m_owner.m_getRegistrationURL = documentURL; | 294 m_owner.m_getRegistrationURL = documentURL; |
| 295 m_getRegistrationCallbacksToDelete.append(adoptPtr(callbacks)); | 295 m_getRegistrationCallbacksToDelete.append(adoptPtr(callbacks)); |
| 296 } | 296 } |
| 297 | 297 |
| 298 private: | 298 private: |
| 299 StubWebServiceWorkerProvider& m_owner; | 299 StubWebServiceWorkerProvider& m_owner; |
| 300 Vector<OwnPtr<WebServiceWorkerRegistrationCallbacks>> m_registrationCall
backsToDelete; | 300 Vector<OwnPtr<WebServiceWorkerRegistrationCallbacks>> m_registrationCall
backsToDelete; |
| 301 Vector<OwnPtr<WebServiceWorkerGetRegistrationCallbacks>> m_getRegistrati
onCallbacksToDelete; | 301 Vector<OwnPtr<WebServiceWorkerGetRegistrationCallbacks>> m_getRegistrati
onCallbacksToDelete; |
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 347 container->getRegistration(scriptState(), ""); | 347 container->getRegistration(scriptState(), ""); |
| 348 EXPECT_EQ(1ul, stubProvider.getRegistrationCallCount()); | 348 EXPECT_EQ(1ul, stubProvider.getRegistrationCallCount()); |
| 349 EXPECT_EQ(WebURL(KURL(KURL(), "http://localhost/x/index.html")), stubPro
vider.getRegistrationURL()); | 349 EXPECT_EQ(WebURL(KURL(KURL(), "http://localhost/x/index.html")), stubPro
vider.getRegistrationURL()); |
| 350 } | 350 } |
| 351 | 351 |
| 352 container->willBeDetachedFromFrame(); | 352 container->willBeDetachedFromFrame(); |
| 353 } | 353 } |
| 354 | 354 |
| 355 } // namespace | 355 } // namespace |
| 356 } // namespace blink | 356 } // namespace blink |
| OLD | NEW |