FrameSendFailureError and FrameSendNotInitializedError are not compatible
with the W3C WebDriver specification and we should use NoSuchWindowError
instead.
Bug 1159674 has prepared Gaia for this change.
r=davehunt
This makes us not rely on try…catch logic to export MarionetteObj
properties and functions on the sandbox.
The patch also cleans up a few more details on
createExecuteContentSandbox.
r=dburns
When native JavaScript errors are thrown because of internal errors,
this will include the Error prototype's name in the message.
This is useful since the WebDriver protocol doesn't allow for arbitrary
JS error marshaling.
r=chmanchester
When the `frame' argument is None, which it is by default, we were setting
the `id' field of the packet regardless. This only works because of a
faulty == operator comparison in the server.
r=jgriffin
getElementSize and getElementLocation are getting removed from the
Marionette server (bug 1153911) and this is in preparation for that.
Fortunately getElementRect is backwards compatible and we can extract
the properties we need from that dictionary.
r=chmanchester
Brings Marionette closer to compliance with the W3C WebDriver standard
which prescribes that errors should be identified by a string rather
than a magic number.
r=dburns
Brings Marionette closer to compliance with the W3C WebDriver standard
which prescribes that errors should be identified by a string rather
than a magic number.
r=dburns
Adds `invalid selector' and `invalid session id' errors to the server,
and aligns the exceptions in the Python client with those in the server.
Some of the exceptions are not in use yet and consequently do not carry
a `code` property. This is fine because it makes us future-proof when
the server starts using them.
r=dburns
Takes advantage of the new dispatching technique introduced in bug
1107706 on the content side.
The patch introduces the framework to write simpler command handlers
in content space, but does not convert all commands in listener.js to
use this. This can be done gradually, as both techniques are still
compatible.
r=dburns
Adds `invalid selector' and `invalid session id' errors to the server,
and aligns the exceptions in the Python client with those in the server.
Some of the exceptions are not in use yet and consequently do not carry
a `code` property. This is fine because it makes us future-proof when
the server starts using them.
r=dburns