The preference prompts.tab_modal.enabled doesn't need a restart of Firefox. It
means there is no need to use enforce_gecko_prefs() for the tests.
MozReview-Commit-ID: 4tPBPV5v7X4
--HG--
extra : rebase_source : c9fe78f778441c66794635ebb2fdc5b8ac88c7cc
A bit of refactoring has to be done to make the tests all working in Fennec.
Those which absolutely cannot be run, have been marked as skipped.
Further some other code has been found which wasn't clearly testing what it
should have been.
MozReview-Commit-ID: I5fcfl5YEkq
--HG--
extra : rebase_source : 49b9597281d335e1ecad6d09f82669829dc4fcbc
The preference "browser.startup.homepage" is only used for Firefox, so the
test fails for Fennec. By using "browser.menu.showCharacterEncoding" which
is used in both Firefox and Fennec the test is passing.
MozReview-Commit-ID: 3PrPAgtU60u
--HG--
extra : rebase_source : cfbe360b1ae58d1c135b7b0350df577aef377741
To avoid a race condition for the close() commands Marionette has to wait until the current
window/tab has actually been closed. To make this work we have to wait for the appropriate
events to occur. Also the methods have to return the list of remaining window handles.
MozReview-Commit-ID: DegcTJyKXCx
--HG--
extra : rebase_source : a6bd46d2d721f56fcc07a0722f2155ea29dc6fbc
As testing has been shown the execution of Marionette server is blocked when
a new dialog popsup. Given that Fennec seems to only support modal dialogs, the
full test module has to be skipped for now.
MozReview-Commit-ID: 2vGFfehOOVd
--HG--
extra : rebase_source : 2a80721bb26f55c097e6caca2572bdbcbe902614
The target node of HTMLEditRules::ReapplyCachedStyles() may be styled with its parent. When HTMLEditRules::ReapplyCachedStyles() is called, it shouldn't restore another style cache if it's already specified in current DOM tree.
MozReview-Commit-ID: DKCpQ8YyW7
--HG--
extra : rebase_source : 854b4cc6382f5357919bce1e106e71fe66b15444
Capabilities are sent to the content frame script as a JSON blob.
We can re-parse that in the listener to make use of the same complex
object representation there.
Because the listener is comprised of a set of top-level functions and
not an object prototype, we cannot reuse the same pointer/getter trick
as in testing/marionette/driver.js. However, we can change this later
when we do introduce more robust code organisation to this file.
MozReview-Commit-ID: 7PpholLqtF
--HG--
extra : rebase_source : 93b94678ac2184255b1c708103eb5cf44f9d2266
This change resets the session ID after all other state has been cleared,
and also reinitialises `GeckoDriver#sessionCapabilities`, which was not
done before.
MozReview-Commit-ID: Jb40CXuX8h1
--HG--
extra : rebase_source : 226875ea929f0e7e471fe58499f76313fc60947e
This change removes session capability processing
from testing/marionette/driver.js and replaces it with
testing/marionette/session.js and `session.Capabilities`.
Session timeout durations used to be stored in properties
exposed directly on the `GeckoDriver` prototype, but these are now
represented by `GeckoDriver#timeouts`, which is a pointer (getter) of
`GeckoDriver#sessionCapabilities#timeouts`. The same is true for other
session-scoped state.
Since capabilities parsing is not unique to starting a new session,
the errors thrown by `session.Capabilities.fromJSON` are re-thrown
in `GeckoDriver#newSession` since it is required that we return a
`SessionNotCreatedError` on parsing them during session creation.
MozReview-Commit-ID: I3Xu2v71n4S
--HG--
extra : rebase_source : 40cef31adf238bef021a7c7c2713016a34f35920