Remove all custom bindings from media streams, using dictionaries instead
Created attachment 297300 [details] Patch
Comment on attachment 297300 [details] Patch Attachment 297300 [details] did not pass mac-wk2-ews (mac-wk2): Output: http://webkit-queues.webkit.org/results/2734847 New failing tests: fast/mediastream/MediaDevices-getSupportedConstraints.html fast/mediastream/MediaStreamTrack-getSettings.html fast/mediastream/MediaStreamTrack-getCapabilities.html
Created attachment 297304 [details] Archive of layout-test-results from ews105 for mac-yosemite-wk2 The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews. Bot: ews105 Port: mac-yosemite-wk2 Platform: Mac OS X 10.10.5
Looks like the failures in the tests are due to two problems: 1) The generated dictionary -> JS conversion adds the objects in alphabetical order, so when the tests iterate, they produce the same results in a different order. MediaStreamTrack-getSettings.html and MediaStreamTrack-getCapabilities.html just need to be rebased. 2) The old version of getSupportedConstraints() only added values to the returned object if the constraint was supported. Given the definition of the MediaTrackSupportedConstraints dictionary (https://w3c.github.io/mediacapture-main/#idl-def-mediatracksupportedconstraints), that was wrong, and your new code is right. MediaDevices-getSupportedConstraints.html needs to be changed to be ok with a few of the properties being unsupported.
Comment on attachment 297300 [details] Patch Other than the test changes needed, change looks great. r=me.
Thanks for the review and the help understanding the status of the tests. Looking forward to landing this and then removing WebCore::Dictionary and WebCore::ArrayValue. By the way, I just noticed that I don’t think any of this code was actually uses WebCore::Dictionary or WebCore::ArrayValue, but the patch does remove what probably is the last include of "Dictionary.h" outside those classes.
Committed r209959: <http://trac.webkit.org/changeset/209959>