[Streams API] Create ByteLengthQueuingStrategy object as per spec
authorcalvaris@igalia.com <calvaris@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 1 Oct 2015 07:38:52 +0000 (07:38 +0000)
committercalvaris@igalia.com <calvaris@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 1 Oct 2015 07:38:52 +0000 (07:38 +0000)
commit44b2cc5f3ac14ca869cad4ecaa812bdf7bf5d454
tree5b95f4d0df5bc62ee3d5fa2bd7944561f135b84e
parenta29725681655da2e761419caab211a574fcbc040
[Streams API] Create ByteLengthQueuingStrategy object as per spec
https://bugs.webkit.org/show_bug.cgi?id=147153

Reviewed by Darin Adler.

Source/WebCore:

Added ByteLengthQueuingStream class as the spec defines at https://streams.spec.whatwg.org/#blqs-class.

Tests are covered by current set.

* CMakeLists.txt:
* DerivedSources.cpp:
* DerivedSources.make:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/WebCoreJSBuiltins.cpp: Added build instructions.
* Modules/streams/ByteLengthQueuingStrategy.idl: Added.
* Modules/streams/ByteLengthQueuingStrategy.js: Copied from Source/WebCore/bindings/js/WebCoreJSBuiltins.cpp.
(size): Return byteLength attribute of the chunk.
(initializeByteLengthQueuingStrategy): Initialize the highWaterMark property.
* bindings/js/WebCoreJSClientData.h:
(WebCore::WebCoreJSClientData::WebCoreJSClientData): Initialize the blqs builtins.
(WebCore::WebCoreJSClientData::byteLengthQueuingStrategyBuiltins): Return the attribute.

LayoutTests:

* js/dom/global-constructors-attributes-expected.txt:
* platform/efl/js/dom/global-constructors-attributes-expected.txt:
* platform/gtk/js/dom/global-constructors-attributes-expected.txt:
* platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt:
* platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
* platform/mac/js/dom/global-constructors-attributes-expected.txt:
* platform/win/js/dom/global-constructors-attributes-expected.txt: Added ByteLengthQueuingStrategy to the
constructor expectations.
* streams/reference-implementation/brand-checks.html:
* streams/reference-implementation/byte-length-queuing-strategy.html: Removed reference to
byte-length-queuing-strategy.js as it should be now builtin in WebKit.
* streams/reference-implementation/resources/byte-length-queuing-strategy.js: Removed.
(ByteLengthQueuingStrategy): Deleted.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@190394 268f45cc-cd09-0410-ab3c-d52691b4dbfc
22 files changed:
LayoutTests/ChangeLog
LayoutTests/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/efl/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/gtk/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/mac/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/win/js/dom/global-constructors-attributes-expected.txt
LayoutTests/streams/reference-implementation/brand-checks.html
LayoutTests/streams/reference-implementation/byte-length-queuing-strategy.html
LayoutTests/streams/reference-implementation/resources/byte-length-queuing-strategy.js [deleted file]
Source/WebCore/CMakeLists.txt
Source/WebCore/ChangeLog
Source/WebCore/DerivedSources.cpp
Source/WebCore/DerivedSources.make
Source/WebCore/Modules/streams/ByteLengthQueuingStrategy.idl [new file with mode: 0644]
Source/WebCore/Modules/streams/ByteLengthQueuingStrategy.js [new file with mode: 0644]
Source/WebCore/WebCore.vcxproj/WebCore.vcxproj
Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters
Source/WebCore/WebCore.xcodeproj/project.pbxproj
Source/WebCore/bindings/js/WebCoreJSBuiltins.cpp
Source/WebCore/bindings/js/WebCoreJSClientData.h