- From: <bugzilla@jessica.w3.org>
- Date: Wed, 18 Jun 2014 22:05:45 +0000
- To: public-browser-tools-testing@w3.org
https://www.w3.org/Bugs/Public/show_bug.cgi?id=26137 Bug ID: 26137 Summary: [WebDriver Spec]: Algorithm for serializing a result is broken Product: Browser Test/Tools WG Version: unspecified Hardware: PC OS: Linux Status: NEW Severity: normal Priority: P2 Component: WebDriver Assignee: public-browser-tools-testing@w3.org Reporter: james@hoppipolla.co.uk QA Contact: public-browser-tools-testing@w3.org CC: mike@w3.org Blocks: 20860 In several ways: It is defined in both executeScript and executeAsyncScript rather than in a single place It seems to think that a javascript function is going to return an IDL type, which it isn't. This causes several problems: * DOMString is considered a possible return type, which it isn't, but a javascript string isn't, which it is * Similarly with long and Number * sequences of Nodes aren't a possible return type, although arrays in general are. It seems like Document Element is apparently being used to mean "Element", which is very unclear since a Document is not an Element. Corresponding webelement needs to be a reference. Arrays should probably be treated specially so that any array input results in an array output. It is unclear how you are iterating over objects. Are only own properties considered, or do you flatten the prototype chain? ES will have an algorithm to hook into here. The possibility of cyclic objects and indefinite recursion is not considered. You need to do something sensible in this case. You might want to examine the algorithm at [1] which implements many of the same ideas. [1] http://www.whatwg.org/specs/web-apps/current-work/multipage/common-dom-interfaces.html#safe-passing-of-structured-data -- You are receiving this mail because: You are the QA Contact for the bug.
Received on Wednesday, 18 June 2014 22:05:46 UTC