ServiceWorkerGlobalScope.clients should always return the same object
authorcdumez@apple.com <cdumez@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 29 Nov 2017 01:33:29 +0000 (01:33 +0000)
committercdumez@apple.com <cdumez@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 29 Nov 2017 01:33:29 +0000 (01:33 +0000)
commit822fabf02e139ecaf25706bbfe0f8402c594ae3a
tree3b07c022a885aff3ba89ad685fa931e445079e8a
parent817d3af79f86729a5e83cec4df5fb1420d0fac3e
ServiceWorkerGlobalScope.clients should always return the same object
https://bugs.webkit.org/show_bug.cgi?id=180116

Reviewed by Geoffrey Garen.

Source/WebCore:

ServiceWorkerGlobalScope.clients should always return the same object, as per the specification:
- https://w3c.github.io/ServiceWorker/#serviceworkerglobalscope-interface

Test: http/tests/workers/service/ServiceWorkerGlobalScope_clients_SameObject.html

* Sources.txt:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSServiceWorkerGlobalScopeCustom.cpp: Added.
(WebCore::JSServiceWorkerGlobalScope::visitAdditionalChildren):
* workers/service/ServiceWorkerClients.idl:
* workers/service/ServiceWorkerGlobalScope.idl:

LayoutTests:

Add layout test coverage.

* http/tests/workers/service/ServiceWorkerGlobalScope_clients_SameObject-expected.txt: Added.
* http/tests/workers/service/ServiceWorkerGlobalScope_clients_SameObject.html: Added.
* http/tests/workers/service/resources/ServiceWorkerGlobalScope_clients_SameObject-worker.js: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@225249 268f45cc-cd09-0410-ab3c-d52691b4dbfc
LayoutTests/ChangeLog
LayoutTests/http/tests/workers/service/ServiceWorkerGlobalScope_clients_SameObject-expected.txt [new file with mode: 0644]
LayoutTests/http/tests/workers/service/ServiceWorkerGlobalScope_clients_SameObject.html [new file with mode: 0644]
LayoutTests/http/tests/workers/service/resources/ServiceWorkerGlobalScope_clients_SameObject-worker.js [new file with mode: 0644]
Source/WebCore/ChangeLog
Source/WebCore/Sources.txt
Source/WebCore/WebCore.xcodeproj/project.pbxproj
Source/WebCore/bindings/js/JSServiceWorkerGlobalScopeCustom.cpp [new file with mode: 0644]
Source/WebCore/workers/service/ServiceWorkerClients.idl
Source/WebCore/workers/service/ServiceWorkerGlobalScope.idl
Source/WebCore/workers/service/ServiceWorkerRegistration.idl