Граф коммитов

3169 Коммитов

Автор SHA1 Сообщение Дата
Andreas Tolfsen 405edbbbd0 Bug 1410652 - Fix API docs of assert functions. r=whimboo
MozReview-Commit-ID: HktgnHoCGZV

--HG--
extra : rebase_source : fbd1dbc73ad4ebfb3b06196eed2d17ea0c4b00f4
2017-10-24 17:32:26 +01:00
Sebastian Hengst f07fc93141 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 4PW6ESqLL73
2017-10-30 23:52:23 +01:00
Sebastian Hengst 7eb270c395 Backed out 4 changesets (bug 1410652) for eslint failure at testing/marionette/element.js: Line 1456 exceeds the maximum line length of 78. r=backout
Backed out changeset 97031d4ea2bd (bug 1410652)
Backed out changeset 66754caa4c52 (bug 1410652)
Backed out changeset 48048929bb17 (bug 1410652)
Backed out changeset 265a168b4e37 (bug 1410652)
2017-10-30 19:32:43 +01:00
Andreas Tolfsen 8cd7e47451 Bug 1411307 - Return iterators for element retrieval. r=whimboo
These functions currently return sequences or arrays of elements, which
wastes cycles and memory because we spend time constructing these data
collections in cases where we only need the first element.  This is
the case for WebDriver:FindElement and WebDriver:FindElementFromElement.

This patch changes the Marionette element retrieval functions to
consistently provide iterators instead of sequences when looking
up elements.  Making them generator functions means the iterable
can be expanded using [...iterable] when necessary.

MozReview-Commit-ID: FZbKLuRWqgA

--HG--
extra : rebase_source : 1e7dc8c614004444f8b2476cb1a136ed36943374
2017-10-24 16:51:38 +01:00
Andreas Tolfsen 8c8b85caa1 Bug 1410652 - Let WebDriver:SwitchToFrame take a web element. r=whimboo
The "element" field on the WebDriver:SwitchToFrame command request's
body takes a string web element reference UUID as input.  This patch
changes it so that it can also take a web element JSON Object.

The old behaviour can be removed with Firefox 60.

MozReview-Commit-ID: JcTD3MRxjOe

--HG--
extra : rebase_source : 3da4b30d2689b6416d89bee838df73af40db2686
2017-10-21 19:30:27 +01:00
Andreas Tolfsen d15a90317a Bug 1410652 - Use invalid argument error for web element deserialisation. r=whimboo
For user input we will want to return the appropriate invalid
argument error.  For internal input using TypeError is fine.

MozReview-Commit-ID: AlOnZuhaczN

--HG--
extra : rebase_source : 57992fc62c08736cb24f7ee229a4c8930751e068
2017-10-24 17:42:32 +01:00
Andreas Tolfsen 4b10cb69dd Bug 1410652 - Fix various API documentation in element module. r=whimboo
MozReview-Commit-ID: AaGnolglX5n

--HG--
extra : rebase_source : de1c338530fbbb68f695c2af8de53a9fe9c1c8e0
2017-10-24 17:38:55 +01:00
Andreas Tolfsen 999ba4ba27 Bug 1410652 - Fix API docs of assert functions. r=whimboo
MozReview-Commit-ID: HktgnHoCGZV

--HG--
extra : rebase_source : a7b5586dba2a18d325aac765a9db13de31696095
2017-10-24 17:32:26 +01:00
Joel Maher 75b4e940ee Bug 1376773 - Disable test_crash.py on osx for frequent failures. r=me, a=testonly 2017-10-30 07:56:24 -04:00
Henrik Skupin 7a65183aea Bug 1411197 - Quit/Restart without a callable callback shouldn't perform a shutdown. r=maja_zf
MozReview-Commit-ID: 9qCdmGKFocB

--HG--
extra : rebase_source : 46dcf7d8091c47b05d08959b270953fa63ed7aed
2017-10-27 15:42:31 +02:00
Mark Banner 60e4a05b0d Bug 1411368 - Automatically fix spaced-comment issues raised when using ESLint 4. r=mossop
MozReview-Commit-ID: AOFFadV3JrV

--HG--
extra : rebase_source : e06da861796c79f118ac734ceebee22253c0485f
2017-10-26 12:00:05 +01:00
Mark Banner 4de6bf22b1 Bug 1411368 - Automatically fix no-multi-spaces issues raised when using ESLint 4. r=mossop
MozReview-Commit-ID: H5YVp3rnzGo

--HG--
extra : rebase_source : 5b45b6c0df834131812d094e975047eaad374e06
2017-10-26 11:47:01 +01:00
Øyvind Strømmen 4c2fdeab8b Bug 1407695 - Do not return expiry key for session cookies; r=ato
MozReview-Commit-ID: H1CctBpOOdM

--HG--
extra : rebase_source : 148e2189e46713161f696d6b09c0b854d513f979
2017-10-16 22:42:48 +02:00
Henrik Skupin d70feae0c1 Bug 1412222 - start_session should not ignore the result of connection attempts. r=ato
By silently ignoring the result from 'wait_for_port' results in a
delayed socket error, which sometimes can cause strange results
as seen on bug 1410366.

MozReview-Commit-ID: 2ptIwX6upBG

--HG--
extra : rebase_source : 9f25afacf2ce65811c51af2cf4b234c8dd1f3587
2017-10-27 10:06:18 +02:00
Sebastian Hengst 5c15da1f08 merge mozilla-inbound to mozilla-central. r=merge a=merge
--HG--
rename : testing/talos/tests/__init__.py => testing/talos/talos/unittests/__init__.py
rename : testing/talos/tests/browser_output.ts.txt => testing/talos/talos/unittests/browser_output.ts.txt
rename : testing/talos/tests/browser_output.tsvg.txt => testing/talos/talos/unittests/browser_output.tsvg.txt
rename : testing/talos/tests/profile.tgz => testing/talos/talos/unittests/profile.tgz
rename : testing/talos/tests/ps-Acj.out => testing/talos/talos/unittests/ps-Acj.out
rename : testing/talos/tests/test_talosconfig_browser_config.json => testing/talos/talos/unittests/test_talosconfig_browser_config.json
rename : testing/talos/tests/test_talosconfig_test_config.json => testing/talos/talos/unittests/test_talosconfig_test_config.json
rename : testing/talos/tests/xrestop_output.txt => testing/talos/talos/unittests/xrestop_output.txt
2017-10-27 12:45:34 +03:00
Maja Frydrychowicz 2a3ad461a8 Bug 1411433 - Add docs for marionette and geckodriver to Mozilla Source Tree Docs; r=ato
MozReview-Commit-ID: GDQe7BACT6k

--HG--
extra : rebase_source : f47bfc8fb64e8b9d9f858cbe4997f173e5e878e2
2017-10-24 18:53:02 -04:00
Sebastian Hengst d10e26c913 merge mozilla-central to mozilla-inbound. r=merge a=merge 2017-10-27 00:00:25 +02:00
Benjamin Forehand Jr a31b8846c2 Bug 1408066 - Addon.js install fails if path is incorrect. r=whimboo
MozReview-Commit-ID: Eu5RUGU2bY4

--HG--
extra : rebase_source : 73e46adc80d454e2d321a44b78199e3cc4fadf67
2017-10-19 23:31:52 -07:00
Henrik Skupin a6bbee2356 Bug 1405474 - Add more attributes for elements in pprint output. r=ato
Currently pprint only checks for 'id' and 'class', and adds
those to the output. Given that lots of elements might not
have those attributes a couple more should be added, which
can help to uniquly identify those.

MozReview-Commit-ID: 3thefe4oLN3

--HG--
extra : rebase_source : e9d276229a39ce5169a333ecb5b1fcc10e935d2a
2017-10-18 20:54:13 +02:00
Henrik Skupin 96398c78f6 Bug 1401498 - Release marionette-driver 2.4.0 and marionette-harness 4.2.0. r=ato
MozReview-Commit-ID: 3BvyKbOpNdT

--HG--
extra : rebase_source : a8255207b6524734feea0cbd072abaeb935db8c8
2017-10-25 15:42:01 +02:00
Sebastian Hengst 0b72ecf4c3 Backed out changeset 6960879cb1e3 (bug 1407695) for eslint failure at testing/marionette/cookie.js:219: ["expiry"] is better written in dot notation. r=backout
--HG--
extra : rebase_source : 47471c300affde3ecccaf905d6650cf130aab3de
2017-10-24 18:48:58 +02:00
Henrik Skupin 627af45f04 Bug 1410366 - Improve socket handling in wait_for_port r=ato
The temporarily created sockets have to be removed immediately
by the operating system. Otherwise those enter the TIME_WAIT state,
and will be removed about 90s later. This can cause a pile of orphaned
sockets.

MozReview-Commit-ID: BGy9ZOjhjT0

--HG--
extra : rebase_source : f2e96d3e8d5d022b18c5f73daa15f3f8f06c74c5
2017-10-20 14:54:03 +02:00
Henrik Skupin adf9cae288 Bug 1410366 - Stop socket server from listening for new connections if told so. r=ato
Simply checking '_acceptConnections' when clients are trying to
connect to Marionette, and revoking the connection request inside
of 'onSocketAccepted' is plainly wrong, given that a connection is
already present.

Instead put the socket server into close state, which means it
does no longer listen for new connection attempts until new
connections are accepted again.

MozReview-Commit-ID: JIpOgOjnpDY

--HG--
extra : rebase_source : 6caa49fa81aec4a5fcf4bdbd3a4290b837a14281
2017-10-23 14:08:15 +02:00
Øyvind Strømmen d6d4b4b5e4 Bug 1407695 - Do not return expiry key for session cookies; r=ato
MozReview-Commit-ID: 7qAgwSZx9JI

--HG--
extra : rebase_source : bc59f1b653b61f262a10e366cc88a4bcd535b4e2
2017-10-16 22:42:48 +02:00
Geoff Brown 5eae3d23c8 Bug 1411348 - Fix manifest annotation for test_crash.py; r=whimboo 2017-10-26 13:09:12 -06:00
Sebastian Hengst 354425a911 Backed out changeset f4152054eb1b (bug 1410366) for Marionette mass failures, at least on Android 4.3 API16+ debug. r=backout on a CLOSED TREE
--HG--
extra : amend_source : 85858d56ec95c0802a1346f8a5bcf2a66bfca118
2017-10-23 20:34:12 +02:00
Sebastian Hengst 85b2276598 Backed out changeset 43e45144dd9f (bug 1410366) 2017-10-23 20:34:06 +02:00
Henrik Skupin 86d28c15bf Bug 1410366 - Improve socket handling in wait_for_port r=ato
As the method name describes the primary functionality of this method
should be to wait for the specific port to be reachable. Specific
application verification is done anyway in the 'newSession' command.

Also the temporarily created sockets have to be removed immediately
by the operating system. Otherwise those enter the TIME_WAIT state,
and will be removed about 90s later. This can cause a pile of orphaned
sockets.

MozReview-Commit-ID: BGy9ZOjhjT0

--HG--
extra : rebase_source : 54ce1fe1f9cd82dc53e205be057f11d99ccb4291
2017-10-20 14:54:03 +02:00
Henrik Skupin a116d561e4 Bug 1410366 - Stop socket server from listening for new connections if told so. r=ato
Simply checking '_acceptConnections' when clients are trying to
connect to Marionette, and revoking the connection request inside
of 'onSocketAccepted' is plainly wrong, given that a connection is
already present.

Instead put the socket server into close state, which means it
does no longer listen for new connection attempts until new
connections are accepted again.

MozReview-Commit-ID: JIpOgOjnpDY

--HG--
extra : rebase_source : 6caa49fa81aec4a5fcf4bdbd3a4290b837a14281
2017-10-23 14:08:15 +02:00
Henrik Skupin 18f2f9d641 Bug 1410355 - Re-enable Marionette unit tests for ASAN builds except crash tests. r=ato
For ASAN builds the crashreporter is not available. As such the unit
tests for crash handling should not be executed. But it should be fine
to re-enable all the other unit tests.

MozReview-Commit-ID: BPFshl7vvqM

--HG--
extra : rebase_source : b40805e0e681eb75c7351299351447860144ba56
2017-10-23 10:30:08 +02:00
Andreas Tolfsen c8ef9c9e6b Bug 1400256 - Adapt actions for implicitly unmarshaled elements. r=automatedtester
Since web element references are now implicitly unmarshaled when
they are passed to the content frame script, there is no need for
the actions module to check that the element origin is a reference
and try to look it up from the known element store.

MozReview-Commit-ID: 3BGBIBQMtR3

--HG--
extra : rebase_source : 1505fe15b060f85ad34628f34f67cfe96aaaa9c1
2017-10-09 19:55:27 +01:00
Andreas Tolfsen 84d01f24d6 Bug 1400256 - Marshal IPC messages to and from frame script. r=whimboo
MozReview-Commit-ID: BTDQDvu2pVE

--HG--
extra : rebase_source : 03f6c064dd0dbe973750cb5cfe5f9ae4ea86aee3
2017-10-05 17:57:17 +01:00
Andreas Tolfsen 179b8ccc6b Bug 1400256 - Recognise web element references in evaluate.toJSON. r=whimboo
MozReview-Commit-ID: BvKHGzsF0ie

--HG--
extra : rebase_source : f3e66b5173534193f357593e0d292199f4efe764
2017-10-05 17:55:52 +01:00
Andreas Tolfsen 34a0935ad5 Bug 1400256 - Use WebElement for marshaling web elements in evaluate.fromJSON. r=whimboo
MozReview-Commit-ID: KwjZ60WlyKp

--HG--
extra : rebase_source : c000e9a2e9607a6804813bfb05efa86460e167a6
2017-10-05 17:55:31 +01:00
Andreas Tolfsen 453b045c3a Bug 1400256 - Make element.Store work with web elements. r=whimboo
MozReview-Commit-ID: AitZAYFtpoF

--HG--
extra : rebase_source : eabb69bb1e6f39ef17d511f20b033eb760fe55a2
2017-10-05 18:01:35 +01:00
Andreas Tolfsen 0a60b466bc Bug 1400256 - Use web element references in action tests. r=whimboo
MozReview-Commit-ID: 2D3PdriqjYz

--HG--
extra : rebase_source : 62dabe7bf4349d79afc81abdcc68b73bf48ae894
2017-10-09 16:40:11 +01:00
Andreas Tolfsen 8153637695 Bug 1400256 - Drop unused arguments to evaluate.toJSON/fromJSON. r=whimboo
MozReview-Commit-ID: 8q0PK3M4rif

--HG--
extra : rebase_source : a7d7c4885eaa1a5a707d6cbb805b0e3b76a733be
2017-10-05 17:53:25 +01:00
Andreas Tolfsen 936135f0ac Bug 1400256 - Serialise IPC messages with evaluate.toJSON. r=whimboo
Instead of having commands serialising their own JSON-safe messages
when communicating with the content frame script, this patch changes
the AsyncMessageChannel to use evaluate.toJSON.

MozReview-Commit-ID: LmAVGEjqMTB

--HG--
extra : rebase_source : 7f39cccc1468217a8a6bcf107241fd5648cb24d2
2017-10-05 17:50:34 +01:00
Andreas Tolfsen 3e13cd2cbc Bug 1400256 - Use WebElement.generateUUID to make session ID. r=whimboo
MozReview-Commit-ID: FuYeCDySLu

--HG--
extra : rebase_source : f6945b7e073e0bb95d2fb13927b9229ec691f157
2017-10-05 17:11:26 +01:00
Andreas Tolfsen b4fef406e1 Bug 1400256 - Remove element.isWebElementReference. r=whimboo
Remove element.isWebElementReference in favour of
WebElement.isReference.

MozReview-Commit-ID: IOqx7XMUfCu

--HG--
extra : rebase_source : e25b0f709d3c11a6a26b937e9a72ca861fe34730
2017-10-05 17:07:48 +01:00
Andreas Tolfsen b6d0e8ec91 Bug 1400256 - Add web element abstractions. r=whimboo
This patch introduces a series of web element abstraction types for
representing web element references.

Adds a series of new types for representing web element references
in Marionette: ChromeWebElement, ContentWebElement, ContentWebFrame,
and ContentWebWindow.  The last three are direct representations of
web element, web frame, and web window definitions described in the
Webdriver specification.  The first is a custom Marionette type as
we also support retrieving XUL elements from chrome space and must
be considered proprietary.

Each of the classes extend the WebElement abstract type, which is
the primary entry point when unmarshaling JSON input from the client.
Based on the characteristics of the JSON Object, one of the different
concrete types will be constructed.

The purpose of this change is to make marshaling of elements and
WindowProxies easier, both when we receive web element reference
objects from clients and when transporting them over IPC internally.

The WebElement.fromUUID function should be considered a temporary
workaround until we have fixed the current Marionette clients to send
web element reference JSON Objects as input, instead of plain {id:
<uuid>, …} fields.

MozReview-Commit-ID: FGcRq5H1Tzp

--HG--
extra : rebase_source : fe82087e8935adb519e2934fc37f1d46c21d9187
2017-10-13 19:23:45 +01:00
Blake Kaplan 3fa965430b Bug 1406212 - Remove references to extensions.e10sBlocksEnabling. r=Felipe
MozReview-Commit-ID: 11q3Go0IkPh

--HG--
extra : rebase_source : fdcf714d18effc964191665eb8422305bda92b65
2017-10-16 13:52:48 -07:00
Blake Kaplan 448808fee2 Bug 1406212 - Remove browser.tabs.remote.autostart.N. r=Felipe
These are no longer needed.

MozReview-Commit-ID: C49R7GsWPDg

--HG--
extra : rebase_source : 3711365017bf48c1f53315ce48fa419ac2a89b3e
2017-10-10 16:12:20 -07:00
Andreas Tolfsen ac39cffaab Bug 1408508 - Move Context to browser module. r=maja_zf
To avoid circular dependencies, where file A depends on B depending
on A, we should strive towards fewer inter-dependencies and more
autonomy between modules.

For example, if testing/marionette/browser.js needs access to
the Context enum it can currently only attain it by importing
testing/marionette/driver.js.  Because driver.js imports browser.js,
we create a circular dependency and Cu.import enters an infinite
import recursion.

MozReview-Commit-ID: LGiA9sy9xrd

--HG--
extra : rebase_source : f1748894c4309a5bc34b72acd4931d7937e8810e
2017-10-16 17:47:35 +01:00
Sebastian Hengst 164fef69ff Backed out changeset 286a5ba56cec (bug 1408508) for eslint failure at testing/marionette/driver.js:881:50 | 'resp' is defined but never used. r=backout
--HG--
extra : amend_source : becc15136f2e7113ab248154be37dfa2bf923dc9
2017-10-18 20:28:15 +02:00
Andreas Tolfsen a03f21ac1c Bug 1409040 - Add element.isElement shorthand. r=maja_zf
Introduces new element.isElement shorthand API for identifying DOM-,
SVG-, and XUL elements.

It is the equivalent of this:

	if (element.isDOMElement(el) ||
	    element.isSVGElement(el) ||
	    element.isXULElement(el)) {
	  // ...
	}

MozReview-Commit-ID: H8MDkP5bQmW

--HG--
extra : rebase_source : 6bef09999e47b178614e4bd307266b4449f39901
2017-10-17 14:53:42 +01:00
Andreas Tolfsen b23b5f643a Bug 1409040 - Add element.isSVGElement. r=maja_zf
MozReview-Commit-ID: 4VCjHCnO3QB

--HG--
extra : rebase_source : f74e6a2ab48dfc59bc53b12f24e8a21131d8712c
2017-10-16 14:25:53 +01:00
Andreas Tolfsen ded7e79114 Bug 1409040 - Add element.isDOMWindow. r=maja_zf
In addition to tell DOM- and XUL elements apart we will in the
future need to identify WindowProxies because WebDriver expects
there to be a separate "web window" serialisation for these.

Telling if an abritrary object is a WindowProxy is tricky but we
check if its node.toString is callable, that it returns "[object
Window"], and finally that its "self" attribute is itself.  This is
not perfect, but good enough for now.

MozReview-Commit-ID: 6FLOa3qYLPP

--HG--
extra : rebase_source : 27d25d97facf73761a1600e88d938eb76b3bc005
2017-10-13 19:22:01 +01:00
Andreas Tolfsen 8d4160ddc0 Bug 1409040 - Add element.isDOMElement. r=maja_zf
Introduces a new element.isDOMElement function, similar to isXULElement,
for checking whether an element is a DOM element.

It follows the same formula as isXULElement by first testing if the
element is an object so we know we can accesss node.namespaceURI
and node.nodeType without causing a JS error.

MozReview-Commit-ID: 6Mlo33vu5LG

--HG--
extra : rebase_source : 547a2fc5bc0051e3bb51e14add4f57d1ff7972b9
2017-10-13 19:20:26 +01:00
Andreas Tolfsen 6332833688 Bug 1409040 - Make element.isXULElement more resiliant. r=maja_zf
Fixes isXULElement to recognise XBL elements, such as <xbl:framebox>.

Also tightens up the input checks so that arbitrary objects can be
tested, as checking node.namespaceURI directly could cause a JS error
if node is not an object.  Before checking the namespace we also ensure
it's an element node so that text- and comment nodes are not picked up.

This patch also introduces tests, which were sorely missing.

MozReview-Commit-ID: 8LNF1z3X1gP

--HG--
extra : rebase_source : ffacc5b1336b35624aaf0534101ce5c3fbdeaa95
2017-09-16 14:37:21 +01:00
Andreas Tolfsen 4092fd5b34 Bug 1408508 - Move Context to browser module. r=maja_zf
To avoid circular dependencies, where file A depends on B depending
on A, we should strive towards fewer inter-dependencies and more
autonomy between modules.

For example, if testing/marionette/browser.js needs access to
the Context enum it can currently only attain it by importing
testing/marionette/driver.js.  Because driver.js imports browser.js,
we create a circular dependency and Cu.import enters an infinite
import recursion.

MozReview-Commit-ID: LGiA9sy9xrd

--HG--
extra : rebase_source : e4b69c91b9cf78705c902f1e5038d815b88114d0
2017-10-16 17:47:35 +01:00
Henrik Skupin 616e9c78ff Bug 1396880 - Skip not relevant checks in test_accessibility for webdriver click. r=ato
The test currently performs checks which will no longer raise the expected
accessibility exceptions if the webdriver conforming click is enabled. In
such a condition those specific situations are already covered in
test_click.py.

As long as the legacy click has not been fully removed keep running the
checks but only if the webdriver click is not in use.

MozReview-Commit-ID: 1DbKfJYADp

--HG--
extra : rebase_source : 2f56caf977f88768b1df2ad507587091af8708ba
2017-10-18 14:22:19 +02:00
Andreas Tolfsen c9ec6362dc Bug 1409379 - Move WindowState to new wm module. r=maja_zf
The upcoming window tracking refactoring to Marionette will introduce
a new testing/marionette/wm.js module.  It was originally the plan
to move WindowState there after it had landed, but it actually makes
sense to land any dependencies before to reduce churn in the window
tracking patches.

MozReview-Commit-ID: EpqnTYYGcmg

--HG--
extra : rebase_source : d6760feefa49c522738fd3930b339bc0af70e6a5
2017-10-17 14:20:52 +01:00
Andreas Tolfsen 2207b79606 Bug 1409036 - Return single anon element from WebDriver:FindElement. r=whimboo
The WebDriver:FindElement command returned an array of elements when
looking up anonymous elements.  This patch rectifies the behaviour
so that only a single element is returned.

It introduces a new helper function called element.findAnonymousNodes,
akin to similar helper functions for other strategies.  This function
returns an iterator of anonymous nodes so that WebDriver:FindElements
(plural) and WebDriver:FindElement (singular) can share the same
code path.

MozReview-Commit-ID: 3IqPyAIZHtf

--HG--
extra : rebase_source : ceffd2b3dfe885b98ae31905f290ab9d95ef26c0
2017-10-05 12:59:03 +01:00
Andreas Tolfsen 1c615cbec1 Bug 1409031 - Fix element.isBooleanAttribute markup. r=whimboo
MozReview-Commit-ID: JIH3y0FlT37

--HG--
extra : rebase_source : 46db24fc9cc340c3149e79fa02829691e1107a64
2017-10-16 15:30:57 +01:00
Andreas Tolfsen fc5df925f7 Bug 1409031 - Fix element.isInView markup. r=whimboo
MozReview-Commit-ID: LYe8XbGufIe

--HG--
extra : rebase_source : 7e6a82050b1de2ae972ba19501d5dd7502c67cc7
2017-10-16 15:30:23 +01:00
Andreas Tolfsen a3451d8418 Bug 1409031 - Correct markup for element.getContainer docs. r=whimboo
MozReview-Commit-ID: KkfKLxy8cmJ

--HG--
extra : rebase_source : 34efea7f9489f980c59d89d5a20b8933f6566df9
2017-10-16 15:28:47 +01:00
Andreas Tolfsen 3e17e4b075 Bug 1409031 - Document element.isCollection. r=whimboo
MozReview-Commit-ID: EPNA642phzp

--HG--
extra : rebase_source : a63c722635e6d073a8179c787494c42525fdb1eb
2017-09-16 14:35:41 +01:00
Andreas Tolfsen f37c62dc56 Bug 1409031 - Fix element.findByLinkText docs. r=whimboo
MozReview-Commit-ID: 86JggzRlwMN

--HG--
extra : rebase_source : 6b1d383678a2b5f9472669a8dcb5637c5bf90b63
2017-10-05 12:56:28 +01:00
Henrik Skupin caee938960 Bug 1409030 - Remove Marionette socket protocol levels below 3. r=ato
MozReview-Commit-ID: LmjyuBuRvhk

--HG--
extra : rebase_source : 8d2f65b2d4ec04b7a9bf75271fdf07fdbfc8a9a1
2017-10-16 16:42:06 +02:00
Andreas Tolfsen af54674287 Bug 1407990 - Move protocol definition to doc/Protocol.md. r=maja_zf
DONTBUILD

MozReview-Commit-ID: 6U9vpIvFtJR

--HG--
extra : rebase_source : 04851c75e47691bbe69f1d0d6071d10241e0f573
2017-10-13 17:08:57 +01:00
Andreas Tolfsen 03d523593a Bug 1407990 - Move Python test docs in tree. r=maja_zf
This is a liberal port of
https://developer.mozilla.org/en-US/docs/Mozilla/QA/Marionette/Marionette_Python_Tests.

DONTBUILD

MozReview-Commit-ID: 9gnITThr9A6

--HG--
extra : rebase_source : adb1b42d092f78b9d16ac191c12396e1110967a1
2017-10-13 17:06:58 +01:00
Andreas Tolfsen 06370d2e05 Bug 1407990 - Remove link to using Marionette with WebDriver. r=maja_zf
This page is now covered by geckodriver documentation and most
Selenium clients have built-in support for geckodriver.

DONTBUILD

MozReview-Commit-ID: BrqqU8trbRU

--HG--
extra : rebase_source : a699eb206915995b4fda6c6b6542dd58bcf5613c
2017-10-13 16:50:53 +01:00
Andreas Tolfsen bbb7a7cc7f Bug 1407990 - Drop questions/comments secton from doc/Intro.md. r=maja_zf
This information is already covered in README.md.

DONTBUILD

MozReview-Commit-ID: CoaPQeIyNmA

--HG--
extra : rebase_source : 0fbd664c8d6a8bf9cf2489534ac4ba794339db57
2017-10-13 16:49:43 +01:00
Andreas Tolfsen a714eee6d4 Bug 1407990 - Drop contribution section in doc/Intro.md. r=maja_zf
Contribution information is covered by CONTRIBUTING.md.

DONTBUILD

MozReview-Commit-ID: 7MLBfFaFe7L

--HG--
extra : rebase_source : 8fe6ae96cfe634d73ada7d56df763124c70a43d9
2017-10-13 16:49:08 +01:00
Andreas Tolfsen 41f7b99123 Bug 1407990 - Move Marionette debugging docs in tree. r=maja_zf
This is a liberal rewrite of
https://developer.mozilla.org/en-US/docs/Marionette/Debugging.

DONTBUILD

MozReview-Commit-ID: 9RQozRIdIAy

--HG--
extra : rebase_source : ef91bd6819bdf429be563aba06cf51f6f9cc599e
2017-10-13 16:47:27 +01:00
Andreas Tolfsen 5369828fd7 Bug 1407990 - Import Marionette intro docs. r=maja_zf
This is an exact copy of
https://developer.mozilla.org/en-US/docs/Mozilla/QA/Marionette.

DONTBUILD

MozReview-Commit-ID: BtM0UZogLrY

--HG--
extra : rebase_source : b56142db79d165b9053420530f4167c3d758873f
2017-10-12 14:31:09 +01:00
Andreas Tolfsen cec379c8b6 Bug 1409037 - Bind this.resetValues after performing legacy action chain. r=whimboo
If the action chain fails it will cause a JS error because its
prototype will be wrong.

MozReview-Commit-ID: 6Wbjdw2KHNV

--HG--
extra : rebase_source : 5f57b525fc846bae3bc579a3d074c0f4d793c008
2017-10-05 13:01:23 +01:00
Andreas Tolfsen 7974848c51 Bug 1408454 - Move error.pprint to format.pprint. r=whimboo
Pretty-printing an object belongs more naturally to the new format module.

MozReview-Commit-ID: AfXLMPAT5ar

--HG--
extra : rebase_source : 1074febec66df49745256fc9cd04b0fecd293919
2017-10-13 17:59:30 +01:00
Andreas Tolfsen 5439883d3d Bug 1407985 - Add Marionette new contributor guide to docs. r=maja_zf
This is a conversion of
https://wiki.mozilla.org/User:Mjzffr/New_Contributors.

DONTBUILD

MozReview-Commit-ID: 4dLXr8zC3bN

--HG--
extra : rebase_source : ccf227644396f8f32485b5aa74cc9de6c7d0134b
2017-10-12 14:18:23 +01:00
Peter Major 240cafe846 Bug 1407675 - Fix cookie creation via Marionette using IP address r=ato
The issue here was that the cookie domain was always prepended with
'.' character. To resolve this edge-case Marionette now first checks
whether the cookie domain is in fact an IP address.

MozReview-Commit-ID: 4xBd4rscXxx

--HG--
extra : rebase_source : 92bf20ceb43c05f4610e3e0a5411027300586784
2017-10-12 16:06:26 +01:00
Ting-Yu Lin ccf0f12bf6 Bug 1399204 - Update test_long_press_to_select_when_partial_visible_word_is_selected(). r=mtseng
This test fails to test what it designed to test because the <input> is not
narrow enough to let 'b's overflow.

I added an <input> that have a fixed size to ensure 'B's overflows, and
remove the first long press on the first word.

MozReview-Commit-ID: 83zBj4yBXVk

--HG--
extra : rebase_source : f267a442223c318382c27852b6efbd614d410ee0
2017-10-12 16:41:48 +08:00
Phil Ringnalda ecdb97c7dc Backed out 6 changesets (bug 1406212) for mass reftest failures
CLOSED TREE

Backed out changeset 1c9fe35de901 (bug 1406212)
Backed out changeset 1acc4c270bf9 (bug 1406212)
Backed out changeset d9ea9cff849f (bug 1406212)
Backed out changeset 5bf2f08f01f9 (bug 1406212)
Backed out changeset 1a050da96e9e (bug 1406212)
Backed out changeset 1b5e78113f06 (bug 1406212)

MozReview-Commit-ID: LizV8CD4IY4
2017-10-12 19:45:23 -07:00
Blake Kaplan a17f66b7ba Bug 1406212 - Remove browser.tabs.remote.autostart.N. r=Felipe
These are no longer needed.

MozReview-Commit-ID: C49R7GsWPDg

--HG--
extra : rebase_source : 9609ad56d497b59d530434d135692e454d4f772a
2017-10-10 16:12:20 -07:00
Henrik Skupin bba9ec1c7d Bug 1406763 - Fix broken Assert.throws() calls for error class. r=ato
MozReview-Commit-ID: H1fw7VitAyO

--HG--
extra : rebase_source : 962e1c52739651bf3de54209fc8f3d5da3358a4e
2017-10-12 17:56:31 +02:00
Henrik Skupin aae9a4d88d Bug 1406763 - Strip brackets around IPv6 addresses for proxy hosts. r=ato
The WebDriver specification requires IPv6 addresses to be always added
with brackets for proxy hosts. But Firefox itself handles those without
brackets for both the proxy host, and the noProxy settings.

MozReview-Commit-ID: 9vpvXjDDuxd

--HG--
extra : rebase_source : f087d39e04738fff93f08fdd26d676b2daf623da
2017-10-09 14:10:03 +02:00
Henrik Skupin 3fda7dc171 Bug 1406763 - Refactor xpcshell proxy tests for fromJson and toJson. r=ato
To ensure that both methods are working as expected, they cannot be
used in combination for assertions.

MozReview-Commit-ID: 57jYmPejEq0

--HG--
extra : rebase_source : 59ffe0e20cab92535270e3ed3139a9439dc24107
2017-10-11 00:26:22 +02:00
Henrik Skupin b5ddfae9aa Bug 1407925 - Don't use application name but ID to determine Firefox. r=ato
MozReview-Commit-ID: 9TZrs4nk31y

--HG--
extra : rebase_source : a79e15619e5b25dd494ba0be5bb0e84ec67dab86
2017-10-12 13:21:17 +02:00
Sebastian Hengst 30f55ebf1c Backed out changeset e7f4ffe10569 (bug 1406763) for linting failure at testing/marionette/session.js:317: Missing semicolon. r=backout
--HG--
extra : amend_source : 5d60f5989940fe9cda6810e34dc7637e586bd4b3
2017-10-12 20:51:44 +02:00
Sebastian Hengst 1237c730d7 Backed out changeset 0ce17eb985f1 (bug 1406763) 2017-10-12 20:51:38 +02:00
Sebastian Hengst a19b8a7f82 Backed out changeset b85be3749e70 (bug 1406763) 2017-10-12 20:51:33 +02:00
Henrik Skupin 06432fe10f Bug 1406763 - Fix broken Assert.throws() calls for error class. r=ato
MozReview-Commit-ID: H1fw7VitAyO

--HG--
extra : rebase_source : 18c741c99eda35e1084dfb51ea7ae72569428ac4
2017-10-12 17:56:31 +02:00
Henrik Skupin b16adff69a Bug 1406763 - Strip brackets around IPv6 addresses for proxy hosts. r=ato
The WebDriver specification requires IPv6 addresses to be always added
with brackets for proxy hosts. But Firefox itself handles those without
brackets for both the proxy host, and the noProxy settings.

MozReview-Commit-ID: 9vpvXjDDuxd

--HG--
extra : rebase_source : 0fa109cd8993df980e28c57a7ec3857e9e2ff932
2017-10-09 14:10:03 +02:00
Henrik Skupin 1f294b4563 Bug 1406763 - Refactor xpcshell proxy tests for fromJson and toJson. r=ato
To ensure that both methods are working as expected, they cannot be
used in combination for assertions.

MozReview-Commit-ID: 57jYmPejEq0

--HG--
extra : rebase_source : 59ffe0e20cab92535270e3ed3139a9439dc24107
2017-10-11 00:26:22 +02:00
Andreas Tolfsen de6c4ea219 Bug 1403577 - Use named imports. r=whimboo
MozReview-Commit-ID: 9VXO5a0xFIq

--HG--
extra : rebase_source : 202b3a7c650db8abc5727bef95d3cd62a2d4a4c3
2017-09-30 18:11:17 +01:00
Andreas Tolfsen abc1f1a9bf Bug 1403577 - Fix Message, Command, and Response docs. r=whimboo
MozReview-Commit-ID: A3iU083gjSx

--HG--
extra : rebase_source : b68b8d764101f39289e77f28d1738cd71ea495c5
2017-09-30 18:15:03 +01:00
Andreas Tolfsen c8087a4a76 Bug 1403577 - Rename TYPE identifier to Type. r=whimboo
MozReview-Commit-ID: KqN7GPnI288

--HG--
extra : rebase_source : cd8863e33ba365f975a3492d2763861289b2e0bb
2017-09-30 18:28:32 +01:00
Andreas Tolfsen 3077e8cfec Bug 1403577 - Associate message origin enum with Message type. r=whimboo
The MessageOrigin enum is removed as a separate type and
exposed as Message.Origin.  The enum variants can be accessed as
Message.Origin.Client and Message.Origin.Server.

MozReview-Commit-ID: 1caPthSMIWx

--HG--
extra : rebase_source : 2e59d77e22ad1a35a072005131b45a4cfc8851a5
2017-09-30 18:13:23 +01:00
Andreas Tolfsen f9fbf15007 Bug 1403577 - Rename toMsg/fromMsg to toPacket/fromPacket. r=whimboo
MozReview-Commit-ID: 3adU2xTHo1X

--HG--
extra : rebase_source : bd400cb879bfb54b78d87b733ef0610f538674f4
2017-09-30 18:10:39 +01:00
Andreas Tolfsen 92ab47fa39 Bug 1403577 - Add utility for truncating strings. r=whimboo
Introduces a utility that truncates strings in potentially arbitrary
object structures.  This allows JSON structures that contain long
strings to be shortened with an " ..." appendix for pretty logging
when data integrity is not a vital concern.

The maximum string length is currently set to 250 characters, which
is a number I have pulled out of a hat.

MozReview-Commit-ID: 2gauOvMzBCO

--HG--
extra : rebase_source : cea57d348a61ecd11a5a9cf564ed60737923f380
2017-09-30 17:06:29 +01:00
Andreas Tolfsen 1967321fc0 Bug 1407716 - Convert Marionette README to Markdown. r=maja_zf
This is a plain conversion of the Marionette README to Markdown
syntax.  The documentation itself is not great and could use more
love, but this is considered out of scope for this change.

DONTBUILD

MozReview-Commit-ID: IAdLyPPVFJH

--HG--
extra : rebase_source : be52f528144d70a50080f65475bd50f81b81e16b
2017-10-11 19:12:58 +01:00
Andreas Tolfsen 545d5ec9f4 Bug 1275273 - Make WebDriver:IsElementSelected conform to spec. r=maja_zf
Splits interaction.isElementSelected into two parts: one checking
whether the element DOM properties are selected/checked, and the
other checking accessibility.  This so this so that the selectedness
can be unit tested, as we do not have the capability of standing
up accessibility in the xpcshell tests.

The second part of this change moves us away from atom.isElementSelected
in favour of a specification conforming implementation in Marionette.
This is a word-by-word implementation of the Is Element Selected
command from WebDriver.

MozReview-Commit-ID: 93WDKbPcEIB
2017-10-11 15:24:03 +01:00
Andreas Tolfsen 4671781f91 Bug 1275273 - Remove isElementSelected atom. r=maja_zf
MozReview-Commit-ID: Doxodn1jz0r
2017-10-11 15:24:03 +01:00
Sebastian Hengst ed86a2c11f merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: AgDEPuT8DNK
2017-10-11 11:41:04 +02:00
Sebastian Hengst 044775ad49 merge mozilla-central to mozilla-inbound. r=merge a=merge 2017-10-11 00:01:28 +02:00
Andreas Tolfsen d416473355 Bug 1405325 - Align WebDriver:DeleteCookie with specification. r=maja_zf
The Delete Cookie command should not return an error if the cookie
does not exist.

The variable names "toDelete" and "candidateName" was also
juxtapositioned and wrong.  Here I am using the approximate names
used in the specification prose for clarity.

Fixes: https://github.com/mozilla/geckodriver/issues/989
MozReview-Commit-ID: 6IIGGpB1JWn

--HG--
extra : rebase_source : f3149d2195c0e871370eef3d2c1306a8212c5751
2017-10-03 16:25:57 +01:00
Andreas Tolfsen d9dd4eae1b Bug 1405018 - Consider current browsing context on staleness check. r=whimboo
The element.isStale function does not take into account the current
browsing context when checking an element’s staleness.  This means,
for example, that an element in an <iframe> that gets retrieved, will
still be considered valid for as long as its associated document lives.

In WebDriver the expected behaviour is for the element reference to
only be valid for the current browsing context, meaning retrieving
the element reference when another browsing context is chosen should
return a stale element error.

Fixes: https://github.com/mozilla/geckodriver/issues/934
MozReview-Commit-ID: JpQVt78u5AN
2017-10-10 15:06:21 +01:00
Andreas Tolfsen 4325dc4c12 Bug 1407224 - Bump atom copyright info. r=automatedtester
The atoms were recently updated in https://bugzil.la/1375660, but
that changeset forgot to update the copyright information of this file.

DONTBUILD

MozReview-Commit-ID: CF6PYp6FlO0

--HG--
extra : rebase_source : 68f7a2a7909685f561e77a1f2a95db643add10d5
2017-10-10 13:47:17 +01:00
Andreas Tolfsen 74fbed7467 Bug 1404946 - Have PollPromise accept an options dictionary. r=whimboo
This patch moves the "timeout" and "interval" positional arguments
on PollPromise to an options dictionary.

In the following code example it is hard to know which argument means
what because they are not named:

	new PollPromise(resolve => resolve(), 100, 100);

Named arguments can be achieved in JavaScript using option
dictionaries, and this patch changes the input PollPromise takes so
that the above example looks like this:

	new PollPromise(resolve => resolve(), {timeout: 100, interval: 100};

This plays especially well with code in testing/marionette/element.js
as we already have named arguments that we can pass directly in through
an object literal, making the code more readable and more compact:

	let timeout = 42;
	new PollPromise(resolve => resolve(), {timeout});

MozReview-Commit-ID: GFWNGQAeWk1

--HG--
extra : rebase_source : 296843053e72bd07463a3018b06782f0dcc4828a
2017-10-02 17:13:57 +01:00
Andreas Tolfsen a5fa626acc Bug 1404946 - Rename wait.until to PollPromise. r=whimboo
In formalising our synchronisation module, this renames wait.until
to PollPromise.  It is a specialisation of a promise, just like
TimedPromise, that poll-waits a condition for a given amount of time
before either resolving (passing) or rejecting (failing) the poll-wait.

Also fix and improve documentation.

MozReview-Commit-ID: AcP3C1qCgKA

--HG--
extra : rebase_source : d17bb3be0819b0ce9de55d44741836fc00b10f46
2017-10-02 16:50:11 +01:00
Andreas Tolfsen f9a974ff5b Bug 1404946 - Rename wait module to sync. r=whimboo
testing/marionette/wait.js originally contained a utility for
poll-waiting on a condition.  The module has since been expanded to
also include TimedPromise, which is a specialisation of Promise that
is rejected after a duration.

The latter is not a wait utility but a synchronisation primitive.
This terminology also covers the first, and this change renames the
wait module to sync.

MozReview-Commit-ID: Fd3LqfpiEaU

--HG--
rename : testing/marionette/wait.js => testing/marionette/sync.js
extra : rebase_source : f48ff62ca2589ab0ce4a2f3d134d392e6f0be015
2017-10-02 16:38:33 +01:00
Sebastian Hengst a867e38354 Backed out changeset 231a24060d29 (bug 1404946) for linting failure at testing/marionette/driver.js:3054:35 | 'f' is defined but never used. r=backout
--HG--
rename : testing/marionette/sync.js => testing/marionette/wait.js
extra : amend_source : 009478a65c290d4b7540723f157de57dbe19901e
2017-10-09 16:23:15 +02:00
Sebastian Hengst b668981dca Backed out changeset 135c1e44a92b (bug 1404946) 2017-10-09 16:23:10 +02:00
Sebastian Hengst c9b41f4cb7 Backed out changeset bf79d5b1b4b0 (bug 1404946) 2017-10-09 16:23:04 +02:00
Sebastian Hengst 3b0bd340dc Backed out changeset dfc766f28aec (bug 1404946) 2017-10-09 16:22:59 +02:00
Andreas Tolfsen 9b9dc004c1 Bug 1404946 - Have PollPromise accept an options dictionary. r=whimboo
This patch moves the "timeout" and "interval" positional arguments
on PollPromise to an options dictionary.

In the following code example it is hard to know which argument means
what because they are not named:

	new PollPromise(resolve => resolve(), 100, 100);

Named arguments can be achieved in JavaScript using option
dictionaries, and this patch changes the input PollPromise takes so
that the above example looks like this:

	new PollPromise(resolve => resolve(), {timeout: 100, interval: 100};

This plays especially well with code in testing/marionette/element.js
as we already have named arguments that we can pass directly in through
an object literal, making the code more readable and more compact:

	let timeout = 42;
	new PollPromise(resolve => resolve(), {timeout});

MozReview-Commit-ID: GFWNGQAeWk1

--HG--
extra : rebase_source : 06e558129f1e0acf3fbf8b6ca99c2407320b8e61
2017-10-02 17:13:57 +01:00
Andreas Tolfsen 0fb99a7cd4 Bug 1404946 - Rename wait.until to PollPromise. r=whimboo
Now that we have selective imports through Cu.import we can give
wait.until a more descriptive name that matches TimedPromise.
This patch renames the wait.until utility to PollPromise.

MozReview-Commit-ID: 9gsvAV27mMl

--HG--
extra : rebase_source : ea98d63013d709d52ce234446404233d9dbe572e
2017-10-02 16:59:25 +01:00
Andreas Tolfsen 448628bdcc Bug 1404946 - Add markup to wait.until's docs. r=whimboo
MozReview-Commit-ID: AcP3C1qCgKA

--HG--
extra : rebase_source : 441be4b537f8868bff5b8c2009e7586e85f66efc
2017-10-02 16:50:11 +01:00
Andreas Tolfsen 583c91fabd Bug 1404946 - Rename wait module to sync. r=whimboo
testing/marionette/wait.js originally contained a utility for
poll-waiting on a condition.  The module has since been expanded to
also include TimedPromise, which is a specialisation of Promise that
is rejected after a duration.

The latter is not a wait utility but a synchronisation primitive.
This terminology also covers the first, and this change renames the
wait module to sync.

MozReview-Commit-ID: Fd3LqfpiEaU

--HG--
rename : testing/marionette/wait.js => testing/marionette/sync.js
extra : rebase_source : 5e22ec5e26b5405c928ab26734a8d2ddc5d43785
2017-10-02 16:38:33 +01:00
Henrik Skupin 21872db2c4 Bug 1406150 - Always throw exceptions by using 'new'. r=maja_zf
MozReview-Commit-ID: GmI1PuSQwWU

--HG--
extra : rebase_source : 61d87d94d683094a579d776e10134dc961182969
2017-10-06 14:07:13 +02:00
Henrik Skupin d81d7488e4 Bug 1375660 - Add instructions for updating the Selenium atoms. r=ato
MozReview-Commit-ID: CBVAAE5RSXI

--HG--
extra : rebase_source : e9f821d859c3335d53b9df73af0422f071d17649
2017-10-05 12:10:57 +02:00
Henrik Skupin 3187df7e34 Bug 1375660 - Update Selenium atom: clearElement. r=ato
MozReview-Commit-ID: I5JIz14o4Mq

--HG--
extra : rebase_source : 9d2376ba3e1c906abe139935a155e6c0a3b06f2e
2017-09-29 16:11:04 +02:00
Henrik Skupin 25aa4fa932 Bug 1375660 - Update Selenium atom: isElementSelected. r=ato
MozReview-Commit-ID: 4cBxsGQWuiz

--HG--
extra : rebase_source : 50c3b3a9308353f4a8a5c68c10b533fe5fcc2a6a
2017-09-29 16:08:54 +02:00
Henrik Skupin b366b0394d Bug 1375660 - Update Selenium atom: isElementEnabled. r=ato
MozReview-Commit-ID: KZqTgIfcx1O

--HG--
extra : rebase_source : b2774fc00f726e37180bb0a9f629a07725595380
2017-09-29 16:05:35 +02:00
Henrik Skupin ea781c9646 Bug 1375660 - Update Selenium atom: isElementDisplayed. r=ato
MozReview-Commit-ID: 64mDJNmw8B5

--HG--
extra : rebase_source : ba671d8a5e370347ba83185ab74a37b5a2c944db
2017-09-29 15:58:29 +02:00
Henrik Skupin d3ff491666 Bug 1375660 - Update Selenium atom: getElementText. r=ato
MozReview-Commit-ID: GttrWxVDlGO

--HG--
extra : rebase_source : 8d92d1d5267d3330ebf7741119f58e88e57f794b
2017-09-29 15:56:23 +02:00
Henrik Skupin 7d2717c4aa Bug 1375660 - Remove Selenium atom: getElementAttribute. r=ato
MozReview-Commit-ID: 2vyuxmVE7Oi

--HG--
extra : rebase_source : 4dd33939a20285dbb4fdcc8add2551d8550a747e
2017-09-29 15:35:14 +02:00
Henrik Skupin e956a3ec91 Bug 1375660 - Remove duplicate button 9 reference in test_accessibility. r=ato
The element 'button9' is moved off screen by CSS and as such it is not
marked as displayed.

MozReview-Commit-ID: KQCA2QfZLrT

--HG--
extra : rebase_source : bc7118324861781eaaab76005a19815a22df31e4
2017-10-02 23:58:01 +02:00
Wes Kocher 6dc323cfe9 Merge m-c to autoland, a=merge
MozReview-Commit-ID: Dxbv9TjDlDY
2017-10-04 16:47:41 -07:00
Wes Kocher d8985b6e57 Merge inbound to central, a=merge
MozReview-Commit-ID: IUFdbLdYFhX
2017-10-04 16:37:59 -07:00
Andreas Tolfsen 823d5e70fb Bug 1405757 - Regenerate Marionette API docs. r=me
DONTBUILD

MozReview-Commit-ID: I6l7SfrE2W4
2017-10-04 18:35:12 +01:00
Andreas Tolfsen 2d16d4aa1f Bug 1405757 - Generate Marionette API docs to testing/marionette/doc/api. r=me
DONTBUILD

MozReview-Commit-ID: L3omU5NDVDh
2017-10-04 18:35:12 +01:00
Andreas Tolfsen 0298786e96 Bug 1405757 - Move Marionette API docs to subdirectory. r=me
DONTBUILD

MozReview-Commit-ID: HNO9CsRoQLo


--HG--
rename : testing/marionette/doc/AsyncChromeSender.html => testing/marionette/doc/api/AsyncChromeSender.html
rename : testing/marionette/doc/Command.html => testing/marionette/doc/api/Command.html
rename : testing/marionette/doc/DebuggerTransport.html => testing/marionette/doc/api/DebuggerTransport.html
rename : testing/marionette/doc/ElementClickInterceptedError.html => testing/marionette/doc/api/ElementClickInterceptedError.html
rename : testing/marionette/doc/ElementNotAccessibleError.html => testing/marionette/doc/api/ElementNotAccessibleError.html
rename : testing/marionette/doc/ElementNotInteractableError.html => testing/marionette/doc/api/ElementNotInteractableError.html
rename : testing/marionette/doc/GeckoDriver.html => testing/marionette/doc/api/GeckoDriver.html
rename : testing/marionette/doc/InputState.html => testing/marionette/doc/api/InputState.html
rename : testing/marionette/doc/InsecureCertificateError.html => testing/marionette/doc/api/InsecureCertificateError.html
rename : testing/marionette/doc/InvalidArgumentError.html => testing/marionette/doc/api/InvalidArgumentError.html
rename : testing/marionette/doc/JavaScriptError.html => testing/marionette/doc/api/JavaScriptError.html
rename : testing/marionette/doc/Message.html => testing/marionette/doc/api/Message.html
rename : testing/marionette/doc/Packet.html => testing/marionette/doc/api/Packet.html
rename : testing/marionette/doc/Response.html => testing/marionette/doc/api/Response.html
rename : testing/marionette/doc/StreamCopier.html => testing/marionette/doc/api/StreamCopier.html
rename : testing/marionette/doc/WebDriverError.html => testing/marionette/doc/api/WebDriverError.html
rename : testing/marionette/doc/accessibility.Checks.html => testing/marionette/doc/api/accessibility.Checks.html
rename : testing/marionette/doc/accessibility.html => testing/marionette/doc/api/accessibility.html
rename : testing/marionette/doc/accessibility.js.html => testing/marionette/doc/api/accessibility.js.html
rename : testing/marionette/doc/action.Action.html => testing/marionette/doc/api/action.Action.html
rename : testing/marionette/doc/action.InputState.Key.html => testing/marionette/doc/api/action.InputState.Key.html
rename : testing/marionette/doc/action.InputState.Null.html => testing/marionette/doc/api/action.InputState.Null.html
rename : testing/marionette/doc/action.InputState.Pointer.html => testing/marionette/doc/api/action.InputState.Pointer.html
rename : testing/marionette/doc/action.Key.html => testing/marionette/doc/api/action.Key.html
rename : testing/marionette/doc/action.Mouse.html => testing/marionette/doc/api/action.Mouse.html
rename : testing/marionette/doc/action.PointerParameters.html => testing/marionette/doc/api/action.PointerParameters.html
rename : testing/marionette/doc/action.Sequence.html => testing/marionette/doc/api/action.Sequence.html
rename : testing/marionette/doc/action.html => testing/marionette/doc/api/action.html
rename : testing/marionette/doc/action.html#.Chain => testing/marionette/doc/api/action.html#.Chain
rename : testing/marionette/doc/action.js.html => testing/marionette/doc/api/action.js.html
rename : testing/marionette/doc/addon.html => testing/marionette/doc/api/addon.html
rename : testing/marionette/doc/addon.js.html => testing/marionette/doc/api/addon.js.html
rename : testing/marionette/doc/assert.html => testing/marionette/doc/api/assert.html
rename : testing/marionette/doc/assert.js.html => testing/marionette/doc/api/assert.js.html
rename : testing/marionette/doc/atom.html => testing/marionette/doc/api/atom.html
rename : testing/marionette/doc/atom.js.html => testing/marionette/doc/api/atom.js.html
rename : testing/marionette/doc/browser.Context.html => testing/marionette/doc/api/browser.Context.html
rename : testing/marionette/doc/browser.Windows.html => testing/marionette/doc/api/browser.Windows.html
rename : testing/marionette/doc/browser.html => testing/marionette/doc/api/browser.html
rename : testing/marionette/doc/browser.js.html => testing/marionette/doc/api/browser.js.html
rename : testing/marionette/doc/capture.html => testing/marionette/doc/api/capture.html
rename : testing/marionette/doc/capture.js.html => testing/marionette/doc/api/capture.js.html
rename : testing/marionette/doc/cert.html => testing/marionette/doc/api/cert.html
rename : testing/marionette/doc/cert.js.html => testing/marionette/doc/api/cert.js.html
rename : testing/marionette/doc/cookie.html => testing/marionette/doc/api/cookie.html
rename : testing/marionette/doc/cookie.js.html => testing/marionette/doc/api/cookie.js.html
rename : testing/marionette/doc/driver.html => testing/marionette/doc/api/driver.html
rename : testing/marionette/doc/driver.js.html => testing/marionette/doc/api/driver.js.html
rename : testing/marionette/doc/element.Store.html => testing/marionette/doc/api/element.Store.html
rename : testing/marionette/doc/element.html => testing/marionette/doc/api/element.html
rename : testing/marionette/doc/element.js.html => testing/marionette/doc/api/element.js.html
rename : testing/marionette/doc/error.html => testing/marionette/doc/api/error.html
rename : testing/marionette/doc/error.js.html => testing/marionette/doc/api/error.js.html
rename : testing/marionette/doc/evaluate.html => testing/marionette/doc/api/evaluate.html
rename : testing/marionette/doc/evaluate.js.html => testing/marionette/doc/api/evaluate.js.html
rename : testing/marionette/doc/evaluate.this.Sandboxes.html => testing/marionette/doc/api/evaluate.this.Sandboxes.html
rename : testing/marionette/doc/event.js.html => testing/marionette/doc/api/event.js.html
rename : testing/marionette/doc/fonts/OpenSans-Bold-webfont.eot => testing/marionette/doc/api/fonts/OpenSans-Bold-webfont.eot
rename : testing/marionette/doc/fonts/OpenSans-Bold-webfont.svg => testing/marionette/doc/api/fonts/OpenSans-Bold-webfont.svg
rename : testing/marionette/doc/fonts/OpenSans-Bold-webfont.woff => testing/marionette/doc/api/fonts/OpenSans-Bold-webfont.woff
rename : testing/marionette/doc/fonts/OpenSans-BoldItalic-webfont.eot => testing/marionette/doc/api/fonts/OpenSans-BoldItalic-webfont.eot
rename : testing/marionette/doc/fonts/OpenSans-BoldItalic-webfont.svg => testing/marionette/doc/api/fonts/OpenSans-BoldItalic-webfont.svg
rename : testing/marionette/doc/fonts/OpenSans-BoldItalic-webfont.woff => testing/marionette/doc/api/fonts/OpenSans-BoldItalic-webfont.woff
rename : testing/marionette/doc/fonts/OpenSans-Italic-webfont.eot => testing/marionette/doc/api/fonts/OpenSans-Italic-webfont.eot
rename : testing/marionette/doc/fonts/OpenSans-Italic-webfont.svg => testing/marionette/doc/api/fonts/OpenSans-Italic-webfont.svg
rename : testing/marionette/doc/fonts/OpenSans-Italic-webfont.woff => testing/marionette/doc/api/fonts/OpenSans-Italic-webfont.woff
rename : testing/marionette/doc/fonts/OpenSans-Light-webfont.eot => testing/marionette/doc/api/fonts/OpenSans-Light-webfont.eot
rename : testing/marionette/doc/fonts/OpenSans-Light-webfont.svg => testing/marionette/doc/api/fonts/OpenSans-Light-webfont.svg
rename : testing/marionette/doc/fonts/OpenSans-Light-webfont.woff => testing/marionette/doc/api/fonts/OpenSans-Light-webfont.woff
rename : testing/marionette/doc/fonts/OpenSans-LightItalic-webfont.eot => testing/marionette/doc/api/fonts/OpenSans-LightItalic-webfont.eot
rename : testing/marionette/doc/fonts/OpenSans-LightItalic-webfont.svg => testing/marionette/doc/api/fonts/OpenSans-LightItalic-webfont.svg
rename : testing/marionette/doc/fonts/OpenSans-LightItalic-webfont.woff => testing/marionette/doc/api/fonts/OpenSans-LightItalic-webfont.woff
rename : testing/marionette/doc/fonts/OpenSans-Regular-webfont.eot => testing/marionette/doc/api/fonts/OpenSans-Regular-webfont.eot
rename : testing/marionette/doc/fonts/OpenSans-Regular-webfont.svg => testing/marionette/doc/api/fonts/OpenSans-Regular-webfont.svg
rename : testing/marionette/doc/fonts/OpenSans-Regular-webfont.woff => testing/marionette/doc/api/fonts/OpenSans-Regular-webfont.woff
rename : testing/marionette/doc/frame.Manager.html => testing/marionette/doc/api/frame.Manager.html
rename : testing/marionette/doc/frame.html => testing/marionette/doc/api/frame.html
rename : testing/marionette/doc/frame.js.html => testing/marionette/doc/api/frame.js.html
rename : testing/marionette/doc/global.html => testing/marionette/doc/api/global.html
rename : testing/marionette/doc/global.html#event => testing/marionette/doc/api/global.html#event
rename : testing/marionette/doc/index.html => testing/marionette/doc/api/index.html
rename : testing/marionette/doc/interaction.html => testing/marionette/doc/api/interaction.html
rename : testing/marionette/doc/interaction.js.html => testing/marionette/doc/api/interaction.js.html
rename : testing/marionette/doc/l10n.html => testing/marionette/doc/api/l10n.html
rename : testing/marionette/doc/l10n.js.html => testing/marionette/doc/api/l10n.js.html
rename : testing/marionette/doc/legacyaction.html => testing/marionette/doc/api/legacyaction.html
rename : testing/marionette/doc/legacyaction.js.html => testing/marionette/doc/api/legacyaction.js.html
rename : testing/marionette/doc/listener.js.html => testing/marionette/doc/api/listener.js.html
rename : testing/marionette/doc/message.js.html => testing/marionette/doc/api/message.js.html
rename : testing/marionette/doc/modal.Dialog.html => testing/marionette/doc/api/modal.Dialog.html
rename : testing/marionette/doc/modal.html => testing/marionette/doc/api/modal.html
rename : testing/marionette/doc/modal.js.html => testing/marionette/doc/api/modal.js.html
rename : testing/marionette/doc/navigate.html => testing/marionette/doc/api/navigate.html
rename : testing/marionette/doc/navigate.js.html => testing/marionette/doc/api/navigate.js.html
rename : testing/marionette/doc/packets.js.html => testing/marionette/doc/api/packets.js.html
rename : testing/marionette/doc/proxy.AsyncMessageChannel.html => testing/marionette/doc/api/proxy.AsyncMessageChannel.html
rename : testing/marionette/doc/proxy.SyncChromeSender.html => testing/marionette/doc/api/proxy.SyncChromeSender.html
rename : testing/marionette/doc/proxy.html => testing/marionette/doc/api/proxy.html
rename : testing/marionette/doc/proxy.js.html => testing/marionette/doc/api/proxy.js.html
rename : testing/marionette/doc/reftest.Runner.html => testing/marionette/doc/api/reftest.Runner.html
rename : testing/marionette/doc/reftest.html => testing/marionette/doc/api/reftest.html
rename : testing/marionette/doc/reftest.js.html => testing/marionette/doc/api/reftest.js.html
rename : testing/marionette/doc/scripts/linenumber.js => testing/marionette/doc/api/scripts/linenumber.js
rename : testing/marionette/doc/scripts/prettify/Apache-License-2.0.txt => testing/marionette/doc/api/scripts/prettify/Apache-License-2.0.txt
rename : testing/marionette/doc/scripts/prettify/lang-css.js => testing/marionette/doc/api/scripts/prettify/lang-css.js
rename : testing/marionette/doc/scripts/prettify/prettify.js => testing/marionette/doc/api/scripts/prettify/prettify.js
rename : testing/marionette/doc/server.TCPConnection.html => testing/marionette/doc/api/server.TCPConnection.html
rename : testing/marionette/doc/server.TCPListener.html => testing/marionette/doc/api/server.TCPListener.html
rename : testing/marionette/doc/server.html => testing/marionette/doc/api/server.html
rename : testing/marionette/doc/server.js.html => testing/marionette/doc/api/server.js.html
rename : testing/marionette/doc/session.Capabilities.html => testing/marionette/doc/api/session.Capabilities.html
rename : testing/marionette/doc/session.Proxy.html => testing/marionette/doc/api/session.Proxy.html
rename : testing/marionette/doc/session.Timeouts.html => testing/marionette/doc/api/session.Timeouts.html
rename : testing/marionette/doc/session.html => testing/marionette/doc/api/session.html
rename : testing/marionette/doc/session.js.html => testing/marionette/doc/api/session.js.html
rename : testing/marionette/doc/stream-utils.js.html => testing/marionette/doc/api/stream-utils.js.html
rename : testing/marionette/doc/styles/jsdoc-default.css => testing/marionette/doc/api/styles/jsdoc-default.css
rename : testing/marionette/doc/styles/prettify-jsdoc.css => testing/marionette/doc/api/styles/prettify-jsdoc.css
rename : testing/marionette/doc/styles/prettify-tomorrow.css => testing/marionette/doc/api/styles/prettify-tomorrow.css
rename : testing/marionette/doc/transport.js.html => testing/marionette/doc/api/transport.js.html
rename : testing/marionette/doc/wait.html => testing/marionette/doc/api/wait.html
rename : testing/marionette/doc/wait.js.html => testing/marionette/doc/api/wait.js.html
2017-10-04 18:35:12 +01:00
Andrew Halberstadt 6b65448914 Bug 1403222 - Add test suite families to SCHEDULES.exclusive r=dustin
MozReview-Commit-ID: JWKB7eOgfWc

--HG--
extra : rebase_source : b81ab806cd2455f4e4fc761863fe699feadd0bb5
2017-09-26 10:47:22 -04:00
Vedant Chakravadhanula d8b5c6edce Bug 1350897 - Tested quit shutdown/restart cause in Marionette Python client. r=whimboo
The Marionette server now returns a JSON containing the cause of shutdown which isn't included in previous Firefoxen. We needed to test this JSON in the quit and restart methods in the python client.

MozReview-Commit-ID: 8uL9tbNszcm

--HG--
extra : rebase_source : 7f01fe55444b034a5f07e42acac0224a981be881
2017-10-03 10:48:30 +05:30
Peter Major 3d736e3368 Bug 1402978 - Add cookie domain field to WebDriver:AddCookie r=ato
There were two issues with the previous implementation:
* Domain cookies were created as host only cookies (due to lack of
leading '.' characters)
* The cookie domain included in the Marionette request was completely
ignored, which always resulted in host-only cookies

MozReview-Commit-ID: 2JLQ3vwNMrb

--HG--
extra : rebase_source : c72ba077ef1b1a1f308e4c9a1d2093c18f7483ce
2017-09-29 15:22:50 +01:00
Andreas Tolfsen 9251f67abf Bug 1405004 - Remove unused imports from testing/marionette/element.js. r=whimboo
MozReview-Commit-ID: 7EoehdeV8tf

--HG--
extra : rebase_source : ce0a2a5e68b60514a4ec847df176ea4dd9452588
2017-10-02 17:20:57 +01:00
Andreas Tolfsen 31adf07368 Bug 1405279 - Lint for unused variables. r=whimboo
MozReview-Commit-ID: 6hUMzC21Tl

--HG--
extra : rebase_source : 64943c3d934674066abf385035db1949c1a71891
2017-10-03 14:36:09 +01:00
Andreas Tolfsen d28ce13224 Bug 1405279 - Remove unused variables. r=whimboo
MozReview-Commit-ID: CmiDVCw6xVK

--HG--
extra : rebase_source : e71cfb7da973d95c796a93cc1e4da6f709acf65e
2017-10-03 14:35:47 +01:00
Sebastian Hengst b1575a7d2b Backed out changeset ddfc127526b2 (bug 1403222) for failing python/mozbuild/mozbuild/test/frontend/test_reader.py::TestBuildReader::test_schedules, at least for Linux asan opt builds. r=backout on a CLOSED TREE 2017-10-02 16:03:12 +02:00
Andrew Halberstadt ef896de9c0 Bug 1403222 - Add test suite families to SCHEDULES.exclusive r=dustin
MozReview-Commit-ID: JWKB7eOgfWc

--HG--
extra : rebase_source : 6c456c91985f2006910bda66fdbc5d18e066d020
2017-09-26 10:47:22 -04:00
Henrik Skupin c5802a3204 Bug 1404277 - Retrieve namespaceURI as property and not attribute. r=ato
With newer Selenium atoms which do not conflate attributes and
properties, the retrieval via getElementAttribute will fail. By
retrieving it directly as property will fix it.

MozReview-Commit-ID: CFy3JZDeUWq

--HG--
extra : rebase_source : ed3a358f52b7cd54f3c5dda037fddaa93173e3b6
2017-09-29 12:54:03 +02:00
Peter Major f497148541 Bug 1405240 - Fix test_cookie.js unit test assertions r=ato
When verifying error messages, the second parameter of Assert.throws has
to be a regular expression.

MozReview-Commit-ID: LJ6Iif8ORTs

--HG--
extra : rebase_source : 0cbe9f31880df44f9c822d8410ab4571281c17ef
2017-10-03 16:28:17 +01:00
Ian MacLeod dbb37eec2c Bug 1389488 - Check that add-on file exists before forwarding request to AddonManager r=whimboo
MozReview-Commit-ID: 6b6QS9y6vPj

--HG--
extra : rebase_source : c4d2174ba11ddcc5076152982b761bb02ee94d65
2017-09-24 02:08:44 -07:00
Ian MacLeod 596a2c319b Bug 1368034 - Update default values for urlbar searches in Marionette r=whimboo
Search suggestions create unneccessary network requests and the suggestions
opt-in notification interferes with tests that don't expect it to be there.
So, this patch updates the default settings in Marionette to disable both.

MozReview-Commit-ID: 8X8SYPq19tj

--HG--
extra : rebase_source : cd0fe8f3437340b1266d161e1cad46bcbcd1a6f6
2017-09-25 02:10:47 -07:00
Vedant Chakravadhanula f0c4e7a6c8 Bug 1364349 - Removed platform property of Firefox Puppeteer. r=whimboo
The wrapper puppeteer.platform in Firefox UI test was deemed redundant.

MozReview-Commit-ID: LUocC59bLNF

--HG--
extra : rebase_source : e764ba1d09d3f752e75ec6aed80ca93781c319dc
2017-09-25 14:30:11 +05:30
James Graham ad38a14c75 Bug 1393366 - Increase the marionette connect timeout in wptrunner, r=maja_zf
This switches to using a timeout of 120s * timeout_multplier, which is
twice the current value. The Marionette startup_timout value is
removed because it turns out that's only used when marionette starts
the Firefox instance and therefore is ignored in this case.

MozReview-Commit-ID: 4VA8yB6M1d5

--HG--
extra : rebase_source : ba9d506d4061d49f2a95fbb24e690841fc902c97
2017-09-21 17:56:43 +01:00
Andreas Tolfsen e3681ac449 Bug 1400226 - Wait for visibilitychange event on window minimize/restore. r=whimboo
The sizemodechange event is not strongly connected to the
visibilitychange event that the WPT minimize_window.py test is now
using to ascertain whether the window has been successfully iconified.

Because Marionette uses the sizemodechange event it is causing
intermittents such as https://bugzil.la/1397007.  You can also read a
lengthy summary I did on the problem in https://bugzil.la/1397007#c11.

The fix for the problem is to wait for the visibilitychange DOM
event content.

MozReview-Commit-ID: B6i33Ee5iMC
2017-09-21 15:02:36 +01:00
Andreas Tolfsen 9ac995ab12 Bug 1400225 - Subscribe to and relay web content DOM events. r=automatedtester,whimboo
This makes it possible to subscribe to DOM events in web content, in
order to facilitate fixes for cases such as https://bugzil.la/1397007.

Although the current interface, WebElementEventTarget, is associated with
browser.Context (curBrowser) it is the intention that we in the future
will associate this with representations of the marshaled web element.
This will make it quack and act like an Element's EventTarget, which
has nice parity to it.

The WebElementEventTarget works by passing IPC messages to
a backend service in the content frame script implemented by
ContentEventObserverService.  This registers event handlers for specific
DOM events, and relays these events back to the browser-specific message
handler in chrome.

This will enable chrome code to wait for events to occur in content,
like this:

	await new Promise(resolve => {
	  webElement.addEventListener("visibilitychange", resolve, {once: true});
	  contentBrowser.minimize();
	});

MozReview-Commit-ID: B8MMHyG8n04

--HG--
extra : rebase_source : 25ac77fbcfb09435325719ac61614c4a8ce37996
2017-09-15 17:07:41 +01:00
Wes Kocher 519bb0922b Merge inbound to central, a=merge
MozReview-Commit-ID: EK8iFR1hSRp
2017-09-18 16:21:01 -07:00
Henrik Skupin 6d45bcb001 Bug 1397612 - Skip TestQuitRestart.test_in_app_restart_safe_mode due to hangs after restart.
MozReview-Commit-ID: 1CvdUz7Uti0
2017-09-18 13:39:03 -07:00
Andreas Tolfsen 4491a3016a No bug: Generate Marionette API docs. r=me NPOTB
MozReview-Commit-ID: IjfiYEDpmEh
2017-09-16 09:58:47 +01:00
Henrik Skupin 61d1233ce1 Bug 1400594 - Further reduce start_timeout for test_startup_timeout. r=maja_zf
On Windows TaskCluster workers Marionette could be ready within 1s.
As such the currently used timeout is too long, and needs to be
further reduced.

MozReview-Commit-ID: KbLVdpB71cu

--HG--
extra : rebase_source : 2b9139e4b7e2c9d5815e7cc481086ca779385538
2017-09-18 10:30:57 +02:00
Henrik Skupin 890c883dee Bug 1399628 - Disable Shield extension in Marionette and geckodriver. r=ato
Shield experiments interfer with core features of Firefox which can
cause tests run via Marionette or geckodriver to fail. Resetting the
API URL will make sure that no experiments can be downloaded.

MozReview-Commit-ID: HnE49jfnen7

--HG--
extra : rebase_source : 2fa6cf86ddce798eba88a41d227768f149cccc70
2017-09-14 21:03:40 +02:00
Sebastian Hengst 80dfe00824 Backed out changeset 3baecf7b25f2 (bug 1399628) for build bustage. r=backout 2017-09-15 14:36:12 +02:00
Henrik Skupin b2ac5a3fe1 Bug 1399628 - Disable Shield extension in Marionette and geckodriver. r=ato
Shield experiments interfer with core features of Firefox which can
cause tests run via Marionette or geckodriver to fail. Resetting the
API URL will make sure that no experiments can be downloaded.

MozReview-Commit-ID: HnE49jfnen7

--HG--
extra : rebase_source : 9cec29085032318e9e8467d6d754afe0890ae645
2017-09-14 21:03:40 +02:00
Henrik Skupin 38ed548903 Bug 1397675 - Immediately kill the process if no connection can be made after startup. r=maja_zf
When the binary gets launched we do not immediately kill the process if the
connection to Marionette server cannot be established within the given amount
of seconds. Instead "_handle_socket_failure" is getting called because
the utility method `raise_for_port` inappropriately uses the `@do_process_check`
decorator.

By removing the decorator the initial connection attempt can be handled
differently. As such the process if handled by Marionette will be immediately
killed. Currently we are waiting for the process to quit itself within 120s,
which will actually never happen due to no active session.

Further `start_session` defaults to a timeout of 60s which itself is problematic
for test harnesses using Marionette but controlling the binary themselves. In
those cases timeouts can happen often for slow starting browser processes like
debug builds. Instead this timeout should default to the `startup_timeout` value.

MozReview-Commit-ID: BZvX5KT45mK

--HG--
extra : rebase_source : 875807b75f0575a10dc9de3588237002fa6a5821
2017-09-07 15:40:19 +02:00
Sebastian Hengst 7dd2b068b5 merge mozilla-central to mozilla-inbound. r=merge a=merge 2017-09-13 13:35:21 +02:00
Andreas Tolfsen d228da0fa7 No bug: Generate Marionette API docs. r=me
MozReview-Commit-ID: IGfMtLgswlY
2017-09-13 11:52:44 +01:00
Andreas Tolfsen b803b6e1dc Bug 1399076 - Error when weakref of web element is destroyed. r=automatedtester
Take into account that a weak referenced element might have been destroyed
in the element staleness check.

An error is thrown when the reference object has been destroyed when
getting a weakrefs' pointer.  We catch this, but element.isStale does
not take into account that the el argument in this case can be null,
or in this revision of the patch, undefined.

MozReview-Commit-ID: 7sr4YGhAotS

--HG--
extra : rebase_source : 995eeef4ec1b19bf100cb95c4dd343e947b1cf52
2017-09-12 13:18:52 +01:00