The documentation for the marionette.enabled preference is wrong: it
claims that it is used for disabling the Marionette XPCOM component,
but in reality it starts and stops the TCP server.
MozReview-Commit-ID: 8oQz8HjPnii
--HG--
extra : rebase_source : 7771f02e18457bc5e567553ca921995d95c40bdd
This duplicates documentation under testing/marionette/doc, but
can be useful when inspecting the directory.
MozReview-Commit-ID: 7vuUze1SFib
--HG--
extra : rebase_source : 94f2f4de916e576deffe1b3a23beff392b7bb594
This patch is partly machine generated and partly massaged by hand
to achieve a satisfactory result.
MozReview-Commit-ID: IG46e93KoOb
--HG--
extra : rebase_source : 02f8fa6ec28a737a4151a757f75cf7ae36427e30
There are currently two exceptions from the normal linting rules
that applies to Marionette xpcshell unit tests:
- We use camel-casing for our test names.
- We have many lines longer than 78 characters.
MozReview-Commit-ID: 4MykQujk9lR
--HG--
extra : rebase_source : f73e1a8d205eb34d1463f4805ba0fa806f150081
Now that we test collections upstream in WPT, the overlapping tests
can be removed from the Mn test suite.
MozReview-Commit-ID: DJZHeKs8FDo
--HG--
extra : rebase_source : 3170081c4054141ab6e39d69865f44a3d55f0385
The WebDriver:ExecuteScript and WebDriver:ExecuteAsyncScript commands
accepts a "debug_script" parameter that attaches an error handler
on the WindowProxy in the sandbox.
This used to be necessary because the error handler used to be
attached to the content window instead of the sandbox.
MozReview-Commit-ID: ImRVkC5T75O
--HG--
extra : rebase_source : c13c33b4d708879f66bd906f431157720842690c
Now that the correct filename and line number is being passed to
Cu.evalInSandbox, the stacktrace of the thrown error is correct.
JavaScriptError uses the line number to index the injected source
script, but the line number refers to the file represented by the
"filename" parameter and not to the script.
This effectively means that the line numbers in the produced
stacktrace are wrong because line number 0 was hard-coded as an
argument to Cu.evalInSandbox.
This patch harmonises the stacktraces returned from
WebDriver:ExecuteScript and WebDriver:ExecuteAsyncScript with
stacktraces from normal JavaScript errors, by removing some extra clutter.
MozReview-Commit-ID: 9nm6HeA4YVJ
--HG--
extra : rebase_source : e0f6e0c9595456fb59123adc98cea6d3d32abce3
The basename is not sufficient to locate the file. Using the file's
relative path will match the behaviour of JavaScript stacktraces.
We can't use relative paths on Windows because the source file may
exist on another disk drive, and on Windows you cannot make relative
paths across disk drives because they don't share the same root.
MozReview-Commit-ID: 4EPITa2kH6J
--HG--
extra : rebase_source : 44781ee506b5150b8e48e8a6b63142badee5b172
The injected script may contain a lot of whitespace padding on
either side of the string when using multi-line strings ("""foo""")
in Python. To improve readability of the trace log we can strip
it off before sending it to Marionette.
MozReview-Commit-ID: 2cNlwVzqWTK
--HG--
extra : rebase_source : 1ec06523a6e99e188b8cb7b616b357c1e9dea125
Marionette incorrectly sets the JavaScript context line number to 0.
The line number is provided to us in in the input, so we should
use this. The default fallback if line is not provided is 0 as before.
MozReview-Commit-ID: 8gOt9r4awee
--HG--
extra : rebase_source : 3d268fff56554c76cbcb831dd2c8665dffd2ca08
The evaluate.sandbox function accepts a directInject argument,
which is a relic from Marionette's B2G past when it did not support
evaluating scripts with lasting side-effects.
The API documentation in GeckoDriver#execute_ mentions directInject as a
valid parameter, but it is not picked up or passed on to evaluate.sandbox.
This effectively means the directInject functionality is unused.
MozReview-Commit-ID: 3rYjRQ2R5GV
--HG--
extra : rebase_source : b0c58077de0d7320d2bd1cc55d1af1b959ecaccf
Removes the following deprecated WebDriver commands from marionette
client: Element.size, Element.location, set_script_timeout,
set_search_timeout, and set_page_load_timeout.
It doesn't touch get_window_position, set_window_position,
window_size, and set_window_size because those are covered
by bug 1348145.
MozReview-Commit-ID: 9b74toO1Rzm
--HG--
extra : rebase_source : a9a73cf8cc36ed3d428ce1c7c54b83b9f0f4a63c
All chrome context related commands have to use the "Marionette"
prefix. For those commands which accidentally have been put under
the "WebDriver" prefix a fallback to the old command is needed
in the Marionette client.
Also update related comments about possible removal dates.
MozReview-Commit-ID: IZLL6pineSO
--HG--
extra : rebase_source : 7e4cbe604d1f0b35cce01173a438b898658018b3
To be consistent with the spec the command should be named
"WebDriver:AcceptAlert".
MozReview-Commit-ID: HGB9hJPAvcU
--HG--
extra : rebase_source : bbf3d657901784e1ab6e096edf1b20a5c43b0176
Using get_url() to wait for a page load to be done doesn't work because
it already returns when the location bar gets updated. Instead wait for
a known element of the page.
MozReview-Commit-ID: CdYux8sTAiP
--HG--
extra : rebase_source : 72d3313c3f3022d94487aa1fedc8538e5c2d8fbb
We don’t currently log what the script timeout was when throwing
ScriptTimeoutError. It would provide more value to the user to
include the timeout duration than to record "Timed out" as we do
currently.
MozReview-Commit-ID: 3DM1Xer3Qbz
--HG--
extra : rebase_source : 1c4dfc96957dd9b64562e8354526da1b7350e6cf
Remove the legacy key that Marionette uses in addition to the identifier key.
MozReview-Commit-ID: 6IVtLxOJPoS
--HG--
extra : rebase_source : 8c4628d32cdcc7b1b7145b8c7c2660708f3bd20d
When an exception occurs during startup of ServerProxy it is logged
to stdout and the subprocess terminates. The exception is however not
propagated/communicated to the parent process so it can take action on it.
This patch returns the exception via the BlockingChannel pipe and
re-raises it in the parent process. This will cause serve.py to
exit if one of the HTTPD servers fails to start. This fixes the
problem reported in bug 1321517, where the HTTP server lives on when
the HTTPS server fails to start due to a missing certificate or key file.
--HG--
extra : rebase_source : 0ce71952259e10d427fa384f155a1db1d67517ef
To prevent race conditions when a formerly started Firefox instance is
still claiming the port of the server socket, the port availability has
to be checked each time before the binary gets started. Otherwise the
client could accidentally connect to the wrong process, and also would
run the remaining tests with it.
MozReview-Commit-ID: JUaHYD2b1Rf
--HG--
extra : rebase_source : 842227b95ab996106f81d86785cc242b6b4cf3ee
Raises a better understandable error when the server socket cannot be
created. It includes the port number, and removes the
unhelpful output of the internal error.
MozReview-Commit-ID: AD1leBlWXLR
--HG--
extra : rebase_source : b5386a264ff8d2ddda2b0133298d7e3a9d14320d
To retrieve links via "link text" or "partial link text" the rendered
content of the element has to be used. This can be the case for CSS
transformations like "uppercase".
MozReview-Commit-ID: fxaHEuWnbf
--HG--
extra : rebase_source : d283275a538662e1f199fd5646997f302c4b8ac7
To retrieve links via "link text" or "partial link text" the rendered
content of the element has to be used. This can be the case for CSS
transformations like "uppercase".
MozReview-Commit-ID: fxaHEuWnbf
--HG--
extra : rebase_source : 9336a5ede468046e06f065f401a461dde5848a18
The test is causing intermittent failures of type "1000s of no output" for
the Mn jobs. It needs to be skipped until at least bug 1433873 has been
fixed.
MozReview-Commit-ID: 5Kpq8wYT1Bt
--HG--
extra : rebase_source : ad9a99edaceb32e27acfc0e71d10a509933fa6d5
Linux window managers and desktop environments can cause the available
surface area of the screen to be shrunk due to UI elements such as
menus. Window managers can also add additional window decorations
that are outside the control of Firefox.
When X11 forwarding a Firefox window to macOS the XQuartz window
decoration adds 22 px. This patch increases the delta from 8 px.
MozReview-Commit-ID: 8I6G6cZvAmD
--HG--
extra : rebase_source : fda691e4286d6af815fdf77749c1097c66fee490
There were two issues:
1) The mach command name in resolve.py was wrong.
2) The marionette harness uses deepcopy on the passed in kwargs and sometimes
the 'log' argument that testing/mach_commands.py was passing in can be a class
instance (which can't be deepcopied).
MozReview-Commit-ID: 5gPxuiHs3dY
--HG--
extra : rebase_source : 63bc9c84fdcb540862f1dcbc2654bf5729e0dec8
This policy disables the safe-mode UI entry points. In addition, only on Windows when using GPO, it also disables entering Safe Mode by holding down the Shift Key
This policy disables the safe-mode UI entry points. In addition, only on Windows when using GPO, it also disables entering Safe Mode by holding down the Shift Key