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

1954 Коммитов

Автор SHA1 Сообщение Дата
Henrik Skupin 42a9f616b7 Bug 1295492 - Add support for --binary argument to Marionette mach command. r=maja_zf
MozReview-Commit-ID: 6tru2Ms135j

--HG--
extra : rebase_source : 5286b8e1d5c8d4f9c54fcbdea14fd423dcd9c556
2016-08-30 10:53:07 +02:00
Andreas Tolfsen e3a3466f75 Bug 1244425 - Avoid CPOW when setting file array on <input type=file>; r=automatedtester
This removes the need to use a CPOW when sending keys to <input type=file>
elements.  It was previously not possible to constructo File objects in
privileged content space, but this now appears fixed.

MozReview-Commit-ID: 8XOVsDdypwC

--HG--
extra : rebase_source : 8d4329c4c6a64ac717fc5d54dc42c8eb136f5e7f
2016-08-30 12:46:01 +01:00
Henrik Skupin 1aa1a59ead Bug 1283919 - Move packaging of Marionette from make to the test archiver r=gps
MozReview-Commit-ID: AOQHcA46bCh

--HG--
extra : rebase_source : e313c669ad0ae999ecba954538572d22ae28b120
2016-08-17 13:43:51 +02:00
Henrik Skupin 3db57da9d3 Bug 1296597 - Allow Marionette to quit a running application instance. r=automatedtester
MozReview-Commit-ID: 4RJmGQ1IqHw

--HG--
extra : rebase_source : 12f197c0956a187c45374f9fd85017dc4c8a4d54
2016-08-22 13:20:08 +02:00
Anjana Vakil 6aa106320d Bug 1291796 - Minor fixes to harness unit tests; r=maja_zf
In test_marionette_runner.py, fix pytest warning raised when
importing TestManifest class directly in global namespace.

In test_marionette_arguments.py, improve readability by
shortening/changing some names and removing unnecessary
comments (not needed as code is self-explanatory).

MozReview-Commit-ID: GDzxlEqb7MB

--HG--
extra : rebase_source : 78927cae7f8ec011d2b398e3a1ce71174d7b028c
2016-08-26 15:52:29 +02:00
Anjana Vakil 6e249bab1e Bug 1291796 - Split Marionette harness tests by class; r=maja_zf
Split the Marionette harness unit tests, all of which were
previously located in the single module test_marionette_runner.py,
into modules that each test a specific class or group of
similar classes. This will make it easier to add and locate
new tests in the future, based on the class they are testing.

The new module structure within tests/harness_unit/ is:

* test_marionette_harness.py - tests for MarionetteHarness and
  the command-line interface

* test_marionette_arguments.py - tests for MarionetteArguments
  (future: BaseMarionetteArguments and RemoteMarionetteArguments)

* test_marionette_runner.py - tests for MarionetteTestRunner
  and BaseMarionetteTestRunner (future: MarionetteTextTestRunner)

* test_marionette_test_result.py - tests for MarionetteTestResult
  (future: MarionetteTest)

* conftest.py - pytest fixtures used in multiple modules
  (fixtures specific to a single module are defined in that module)

MozReview-Commit-ID: CGh6Aa07lfV

--HG--
extra : rebase_source : faa7d27135aa6e4c6c44fa60aab6f2b5d6339961
2016-08-26 15:47:09 +02:00
CuriousLearner 7428b5fd55 Bug 1271330 - Avoid homepage overrides in the default profile; r=davehunt,whimboo
MozReview-Commit-ID: 6vQ5C2x7pEB

--HG--
extra : rebase_source : 13a9cbc8cef2a1ca85a8f709452985dbddf92f7c
2016-08-26 23:03:46 +05:30
Andreas Tolfsen b14cde0605 Bug 1298454 - Use element.makeWebElement instead of manually creating web element; r=automatedtester
MozReview-Commit-ID: 83W3e6mWqYJ

--HG--
extra : rebase_source : ce3ca019ef62573827a790145fe8bb4660b14bc8
2016-08-26 19:02:33 +01:00
Mike Conley b3a5f56c15 Bug 1294456 - Regression test. r=automatedtester
The test is testing the case where Marionette attempts to send a
command to a window handle when the browser has opened and selected
a new tab. See the documentation in the test for more details.

MozReview-Commit-ID: McDqG5kCIj

--HG--
extra : rebase_source : bd085f5116333f7321ef9313147cdcd0dc80ae64
2016-08-25 15:48:44 -04:00
Mike Conley b5e760d22d Bug 1294456 - Stop Marionette from being confused about which tab it currently cares about in each window. r=automatedtester
MozReview-Commit-ID: CW0bWILbIuC

--HG--
extra : rebase_source : ca7a20f7a187dc57857297b59a1a6152cb7f5ad8
2016-08-25 15:06:56 -04:00
Andreas Tolfsen 0f34b42611 Bug 1280947 - Dispatch DOM change event on appending file to input; r=automatedtester
MozReview-Commit-ID: 6SC01AEkuTs

--HG--
extra : rebase_source : ee4ed323e024bf6fdcf9a28ab7f44763c7475c8c
2016-08-25 14:18:04 +01:00
Andreas Tolfsen e213d0d9c5 Bug 1280947 - Correct argument to event.sendEvent; r=automatedtester
Events were not registered when constructed with an object
rather than a string literal.

MozReview-Commit-ID: KhXcDPu70Vm

--HG--
extra : rebase_source : 7ea228e47c89c2775ab5c2c1fab63b5f8fe4db14
2016-08-25 14:16:10 +01:00
Andreas Tolfsen aa96362477 Bug 1280947 - Remove dead File object construction code; r=automatedtester
MozReview-Commit-ID: 2e2tikS8evx

--HG--
extra : rebase_source : 8f016f47ceed470017dc72adbc8a4c0b7e84433b
2016-08-25 14:15:21 +01:00
Andreas Tolfsen 4f54ff4ab4 Bug 1280947 - Support tuples for script arguments; r=automatedtester
Tuples is are most commonly used in the Python standard library
to represent function argument iterables.

This patch changes the Marionette Python client to support both
tuples and lists.

MozReview-Commit-ID: 9c6SGeWEIBL

--HG--
extra : rebase_source : 4defc071dd15ab5117ad43c76840b04dbdf80933
2016-08-25 14:13:59 +01:00
Andreas Tolfsen 4052356fba Bug 1280947 - Improve names of JSON marshaling methods in Marionette client; r=automatedtester
MozReview-Commit-ID: BTEuBYMzu5w

--HG--
extra : rebase_source : 2583fcf1251eb88904afe09942804342d3b665ac
2016-08-25 14:12:40 +01:00
Henrik Skupin ebea3bef90 Bug 1294054 - Use marionette.py instead of runner.py in case of crashes with no active test. r=automatedtester
MozReview-Commit-ID: 8hRFAFTEQ0G

--HG--
extra : rebase_source : 648fc7210e219d11b739e4bec4772e88517f8b7f
2016-08-17 22:22:15 +02:00
Maja Frydrychowicz 579e8d9c0b Bug 1284874 - Skip irrelevant Marionette tests on Fennec; r=automatedtester,dustin,gbrown
MozReview-Commit-ID: K2Wy9ij6dz3

--HG--
extra : rebase_source : 2123d9368c95ec19b51b94afe4e88cd68f1e416e
2016-08-25 11:11:21 -04:00
Maja Frydrychowicz 5aa7bdf380 Bug 1284874 - Update skip decorators and remove dead code in TestScreenOrientation; r=automatedtester
Remove if-blocks that depend on code removed in Bug 1274408

MozReview-Commit-ID: JJHEiMBIm1b

--HG--
extra : rebase_source : e83fdea488fe24c38a81a98ab8a9e800212a167c
2016-08-22 12:28:58 -04:00
Maja Frydrychowicz c7bda84c45 Bug 1284874 - Add Fennec support to Marionette test skip decorators; r=automatedtester
MozReview-Commit-ID: Gz2mJWxkryb

--HG--
extra : rebase_source : e9558e5132dedbbb31dfab2629bdeee1cf4c8519
2016-08-22 12:27:57 -04:00
Maja Frydrychowicz 4b69e312c7 Bug 1284874 - Add 'package' argument to Marionette Test Runner; r=automatedtester
This is useful for overriding the computed Android package name in
automation.

MozReview-Commit-ID: jm283iQB2i

--HG--
extra : rebase_source : d4d1ab8176aa0383b93c8dde0982d22604aabd05
2016-07-25 20:43:57 -04:00
Yura Zenevich e90eb53ff1 Bug 1258960 - use getters in marionette accessibility states structure to avoid Ci.nsIAccessibleStates undefined errors in builds with accessibility disabled. r=whimboo
MozReview-Commit-ID: 2SMM5AS0cVr

--HG--
extra : rebase_source : 5b9db7f8e6b326a981641aa7d21fbfb4c40f44bc
2016-08-24 15:52:20 -04:00
Shane Caraveo 9d48355314 Bug 1289549 fix test driver child counting, r=automatedtester
MozReview-Commit-ID: LU19WfwjoPN
2016-08-23 15:24:06 -07:00
Andrew Halberstadt a757814e36 Bug 1296067 - Add mach test package integration for marionette-test, r=armenzg
This makes it possible to run |mach marionette-test| from a test package (and therefore
also an interactive loaner).

MozReview-Commit-ID: Lxhe8KMQaWq

--HG--
extra : rebase_source : ee2c01a80d863c2044d8d30b0e5116c8a9704253
2016-08-17 12:04:37 -04:00
clui 17a75a8e03 Bug 1287594 - Allow usage of marionette harness options through mach. r=automatedtester
MozReview-Commit-ID: j3bWigyRPG

--HG--
extra : rebase_source : 34c7375905466e9ceef0b309b724bde5e31575d6
2016-07-26 21:52:42 -07:00
Ryan VanderMeulen 7eab76e86d Merge m-c to autoland. a=merge 2016-08-22 09:42:13 -04:00
Henrik Skupin 41ab46cbd5 Bug 1277811 - Fix test_key_actions.py by scrolling element into view before press() is called. r=automatedtester
MozReview-Commit-ID: J4X2TM5LeWF

--HG--
extra : rebase_source : c0439e3e5c002480751f25cedcda015d2b6a8870
2016-08-22 14:07:51 +02:00
Henrik Skupin 82410bbd03 Bug 1296562 - Revert order for crash and socket checks in do_process_check decorator. r=maja_zf
MozReview-Commit-ID: Dd2Pl3FnbUP

--HG--
extra : rebase_source : 9e82925fab0ded5f33c2ada3f156ff6015986ef4
2016-08-19 09:22:32 +02:00
Anjana Vakil b2fffee29d Bug 1284847 - Add tests for _build_kwargs; r=maja_zf
Add tests to test_marionette_runner.py to
verify the functionality of the _build_kwargs method
of BaseMarionetteTestRunner, which is used
to generate the kwargs with which the
driverclass (Marionette) constructor is called.

Test that _build_kwargs generates the right
dictionary based on the values of certain
runner properties (binary, emulator,
address, and workspace).

Add helper fixtures to reduce duplication between
the test_build_kwargs_* tests.

MozReview-Commit-ID: EyyfaE52rzS

--HG--
extra : rebase_source : 2ec977672c46dabb2e9644faada17207fcb51690
2016-08-19 12:09:25 +02:00
Anjana Vakil 55065554ea Bug 1284847 - Test args passed to runner/driver classes; r=maja_zf
Add tests to test_marionette_runner.py to verify that:
- when the MarionetteHarness constructor is called,
  the arguments to that call are passed on to
  the _runner_class constructor
- when run_tests() is called on the runner,
  the output of _build_kwargs is passed on as
  arguments to the call to the driverclass
  constructor

In combination with a test of the runner's _build_kwargs
method, this should ensure that the driver class
constructor is being called with the appropriate arguments
based on the input to the harness class constructor.

MozReview-Commit-ID: 4U3sXxHSIpS

--HG--
extra : rebase_source : 3ca439613f13c6064c0dcbfb603c049f75233b71
2016-08-17 18:38:56 +02:00
Ryan VanderMeulen 13e244b915 Merge m-c to autoland. a=merge 2016-08-19 09:58:11 -04:00
Sebastian Hengst ea5a423e4b Backed out changeset 4d00141b4cb9 (bug 1268544) 2016-08-19 10:01:51 +02:00
Henrik Skupin 32877c55c9 Bug 1293982 - TcpTransport.close() has to force a shutdown of the socket. r=ato
When the Marionette client closes the socket connection it currently only calls close() on it.
This will actually decrease the reference counter, and keeps the OS socket around until it gets
garbage collected by the system. This can cause port in use failures for socket connections
created shortly after eg. restarts of the appication. By using shutdown() the client indicates
that the socket has to be closed immediately.

MozReview-Commit-ID: 3jUgaWnujLc

--HG--
extra : rebase_source : 3111d041585a8e50258d2be9bfef55708f80d4b4
2016-08-15 13:55:43 +02:00
Aaron Klotz f615c493d3 Bug 1268544: Temporarily disable test_about_pages.py on Windows e10s due to bustage; r=bustage
MozReview-Commit-ID: IX47RXVjEyI

--HG--
extra : rebase_source : b8601ced1411bf7d1de4b34876d81a6850c23dfc
2016-08-18 16:04:43 -06:00
Wes Kocher 431cc3777c Merge m-c to inbound a=merge 2016-08-19 18:39:52 -07:00
Aaron Klotz 6691c8cfa8 Bug 1268544: Refactor ProxyAccessible and dependencies; r=tbsaunde
MozReview-Commit-ID: EHV0JR6NmKf

--HG--
rename : accessible/ipc/ProxyAccessible.cpp => accessible/ipc/ProxyAccessibleBase.cpp
rename : accessible/ipc/ProxyAccessible.h => accessible/ipc/ProxyAccessibleBase.h
rename : accessible/ipc/ProxyAccessible.cpp => accessible/ipc/other/ProxyAccessible.cpp
rename : accessible/ipc/ProxyAccessible.h => accessible/ipc/other/ProxyAccessible.h
rename : accessible/ipc/ProxyAccessible.cpp => accessible/ipc/win/ProxyAccessible.cpp
rename : accessible/ipc/ProxyAccessible.h => accessible/ipc/win/ProxyAccessible.h
2016-08-19 13:16:42 -06:00
Andreas Tolfsen cf5f3418f9 Bug 1255955 -Run element enabled check before accessibility checks; r=automatedtester
MozReview-Commit-ID: 18OtOKtox3K

--HG--
extra : rebase_source : 2773dbd04f7a728b6b9fcd5db8e57b8abc28abcc
2016-08-13 20:59:14 +02:00
Andreas Tolfsen 50d1d83f2a Bug 1255955 - Simplify element.clickElement complexity; r=automatedtester
MozReview-Commit-ID: IXqgFlS6R6c

--HG--
extra : rebase_source : 77a35e9dcde68ef8c90888bdf6abea470b442296
2016-08-13 20:54:46 +02:00
Andreas Tolfsen 2b8b321b6a Bug 1255955 - Document clickElement and calculateCentreCoords; r=automatedtester
MozReview-Commit-ID: tSC5xRAVAl

--HG--
extra : rebase_source : 2038db7219878edde781a9823a309efcf8d49053
2016-08-13 20:54:15 +02:00
Andreas Tolfsen 010a199980 Bug 1255955 - Add support for interacting with <select> elements; r=automatedtester
This patch introduces support for clicking on <select> and <select
multiple> elements to Marionette.  As <select> elements, especially
<select multiple>, are operating system level concepts usually implemented
with native widget sets, this patch takes the approach of dispatching
generated events.

MozReview-Commit-ID: 9kwOva43AOL

--HG--
extra : rebase_source : dde090ed9487e593bc16f8a7e12365b97ada9735
2016-08-05 18:08:31 +01:00
Andreas Tolfsen cf92f63f85 Bug 1255955 - Add shorthands for generating common DOM events; r=automatedtester
MozReview-Commit-ID: K5p1SyYMofQ

--HG--
extra : rebase_source : 687d4a15858a6934343c368a8de498afb6be98fc
2016-08-05 18:07:12 +01:00
Andreas Tolfsen 11e8e8c6c2 Bug 1255955 - Add function to dispatch events to event library; r=automatedtester
MozReview-Commit-ID: GBvXy8svoY2

--HG--
extra : rebase_source : a0d4db22becb70f8097198d300bff6f198e9ede4
2016-08-05 18:06:38 +01:00
Andreas Tolfsen 55a23f732e Bug 1255955 - Use correct argument in event.synthesizeMouse; r=automatedtester
MozReview-Commit-ID: AHh99sePoYj

--HG--
extra : rebase_source : 960a54f609e525cab41df5b98d0189648bd490d3
2016-08-05 18:05:45 +01:00
Andreas Tolfsen 6ac6b51209 Bug 1255955 - Fix event.sendMouseEvent to work in privileged space; r=automatedtester
Also fixes assumptions about permitted mouse events.

MozReview-Commit-ID: 33MKL60cKXi

--HG--
extra : rebase_source : 59f838c42a19b3bbedc42fa5a78d84c15ab176a2
2016-08-05 18:05:14 +01:00
Andreas Tolfsen 6cf2139f2d Bug 1255955 - Fix event.parseModifiers_ to not use module argument name; r=automatedtester
MozReview-Commit-ID: v79foxRjUV

--HG--
extra : rebase_source : eeb62400f1e4c1bec69d0b9bfcb5673003e940cc
2016-08-05 18:03:43 +01:00
Andreas Tolfsen a6a86c1771 Bug 1255955 - Rename a11y functions check* to assert*; r=automatedtester
"Check" is a fine word but with functions which primary purpose is to
throw an error internally we should use "assert" to make the reprecussions
of using them crystal clear.

MozReview-Commit-ID: Kef4R8y8fiV

--HG--
extra : rebase_source : eb22beb7a33e593f34b3d24ecdaaa7f99d8e5f87
2016-08-05 11:43:40 +01:00
Andreas Tolfsen a0e56a4788 Bug 1255955 - Perform click checks as part of promise; r=automatedtester
Some of the element interactability- and visibility checks were previously
done when interaction.clickElement was called, and not as part of the
resolution of the returned promise.  This could have caused a potential
race condition.

MozReview-Commit-ID: 691V86B4k5w

--HG--
extra : rebase_source : 7a6951d9c29aa5fa3eb3852d3d6d33e65f7d72c4
2016-08-05 11:38:23 +01:00
Andreas Tolfsen 1eec7ff342 Bug 1255955 - Recalculate visibility after scrolling; r=automatedtester
We want to redo the element interactability calculation after scrolling.
Determining if an element is not visible by the old location would
be wrong.

MozReview-Commit-ID: KGaPVmgcqSX

--HG--
extra : rebase_source : 12ac51e5c9947da1082351c4e382cfc95ea8f843
2016-08-05 11:00:19 +01:00
Andreas Tolfsen 26c6e26783 Bug 1255955 - Scroll element into view when not visible; r=automatedtester
The if-condition in the specification compatible interactability check
for interaction.clickElement is wrong.  It should scroll an element into
view when it is _not_ visible.  If it is visible it does not matter.

MozReview-Commit-ID: 2n34QddDkQv

--HG--
extra : rebase_source : efe079de9a1fa930ea2f3d9d8fff59fc9a4e269b
2016-08-05 10:53:06 +01:00
Andreas Tolfsen 38a5c89fb8 Bug 1255955 - Rename checkbox test to not conflict with select tests; r=automatedtester
MozReview-Commit-ID: 3SIFP3mUPhT

--HG--
rename : testing/marionette/harness/marionette/tests/unit/test_selected_chrome.py => testing/marionette/harness/marionette/tests/unit/test_checkbox_chrome.py
extra : rebase_source : 1db1e6816b9bf8efeffa64e77771d1f102b1a234
2016-08-05 10:52:07 +01:00
Wes Kocher a177bd0ff1 Merge m-c to inbound a=merge 2016-08-17 17:24:02 -07:00
Aaron Klotz b106295600 Bug 1295776: Disable test_accessibility.py on Windows e10s; r=automatedtester
MozReview-Commit-ID: 5fGIJFJABkb

--HG--
extra : rebase_source : 667f56e6216fd03ec50ad61596f4b00ce4cad8b0
2016-08-15 17:01:20 -06:00
Wes Kocher 021a12c86f Backed out changesets e4a39e456f89 (bug 1268544) for mass build bustage a=backout CLOSED TREE
***
Backed out changeset 119a4b187938 (bug 1268544)
***
Backed out changeset d83cba382cfe (bug 1268544)
***
Backed out changeset a0085eb5ffe7 (bug 1268544)
***
Backed out changeset eefa457c3680 (bug 1288843)
***
Backed out changeset 17dc46beb1a5 (bug 1288841)
***
Backed out changeset e76f58f328d4 (bug 1268544)
***
Backed out changeset ffc8ee715fdb (bug 1268544)
***
Backed out changeset 99f0ea19b8f5 (bug 1268544)
***
Backed out changeset 2bdfb9514317 (bug 1268544)
***
Backed out changeset e4b3a5e1756d (bug 1268544)

--HG--
rename : accessible/ipc/other/DocAccessibleChild.cpp => accessible/ipc/DocAccessibleChild.cpp
rename : accessible/ipc/other/DocAccessibleChild.h => accessible/ipc/DocAccessibleChild.h
rename : accessible/ipc/win/PDocAccessible.ipdl => accessible/ipc/PDocAccessible.ipdl
rename : accessible/ipc/win/ProxyAccessible.cpp => accessible/ipc/ProxyAccessible.cpp
rename : accessible/ipc/win/ProxyAccessible.h => accessible/ipc/ProxyAccessible.h
extra : amend_source : dc73ec117c7279539cab36af821637bb1b0236bd
extra : histedit_source : 438ce81f07a53af61b1cabf7620f30b090e7d5e2%2Ccb6472913fe0d7d2ec66bf0cedc18f2e4d00678e
2016-08-15 15:58:45 -07:00
Aaron Klotz fa62bcaaa9 Bug 1268544: Disable test_accessibility.py on Windows e10s; r=bustage a=kwierso CLOSED TREE
MozReview-Commit-ID: 40HYiG7O7tM

--HG--
extra : rebase_source : 847eb7c791099b51c2f9945ef703fb0a1c5a955d
2016-08-15 16:31:17 -06:00
André Reinald e81fed5386 Bug 1284268 - Add a local ping server; r=maja_zf
MozReview-Commit-ID: BprnSNceit9

--HG--
extra : rebase_source : a99ddb08115c5b84863458ed114803faaa4f64dc
2016-08-01 21:37:06 +02:00
Henrik Skupin 4ea0361cfa Bug 1293991 - Add remaining process/crash checks for methods of the Marionette class. r=automatedtester
MozReview-Commit-ID: 8FhjkRBxZXR

--HG--
extra : rebase_source : 261fc5693b35c28f25fc7baa204fd3db008540d4
2016-08-10 14:18:37 +02:00
Wes Kocher 60ecb86972 Backed out changeset 8e31e563790a (bug 1293991) for mass bustage a=backout 2016-08-11 14:17:31 -07:00
Henrik Skupin f51f406596 Bug 1293614 - Ensure that Wait().until() aligns as best as possible to the original interval sequence. r=automatedtester
MozReview-Commit-ID: 2JEQtLEsdux

--HG--
extra : rebase_source : dea1bed673326f10ef67a77546d221b82c8e4c53
2016-08-09 16:52:39 +02:00
Henrik Skupin 26e9a24e21 Bug 1293991 - Add remaining process/crash checks for methods of the Marionette class. r=automatedtester
MozReview-Commit-ID: 8FhjkRBxZXR

--HG--
extra : rebase_source : 632582e05d15369f47281fece203a173e276c59e
2016-08-10 14:18:37 +02:00
Carsten "Tomcat" Book 553a2da922 merge mozilla-inbound to mozilla-central a=merge 2016-08-10 15:54:26 +02:00
Yura Zenevich d79c789318 Bug 527003 - renaming all XPCOM uses of deprecated accessible retrieval to accessibility service. r=surkov
MozReview-Commit-ID: DDJmHOMfXLo
2016-08-09 15:38:54 -04:00
Anjana Vakil d71da06eb8 Bug 1291643 - Test cleanup after running (possibly empty) manifest; r=whimboo
Add tests to make sure that if an empty or nonempty manifest is run,
Marionette/Firefox are shut down as expected (previous behavior
was that the Marionette cleanup was never reached in this scenario).

MozReview-Commit-ID: 5hlUd0GQAQR

--HG--
extra : rebase_source : b7c4ca26710287bfb44f02474cb742dd56d821a3
2016-08-05 19:40:07 +02:00
Henrik Skupin d6f1d1fa99 Bug 1293093 - Fix failure message for socket errors in start_session. r=automatedtester
MozReview-Commit-ID: UorLkwG7Z8

--HG--
extra : rebase_source : 3958836ab43fa7f3eecb063f329a62c4ffc9804a
2016-08-08 11:05:02 +02:00
Andreas Tolfsen 7bc1cc3ef5 Bug 1290966 - Remove callback function argument from sync scripts; r=automatedtester
MozReview-Commit-ID: CaDSYA5PNFp

--HG--
extra : rebase_source : 1d85bd860359d511c58b546d19037a989196a43e
2016-08-04 18:20:18 +01:00
Andreas Tolfsen a925942b81 Bug 1290966 - Permit introspection into arguments; r=automatedtester
The callback function available to asynchronously evaluated scripts is
defined in a privileged content frame script, and is thus not readable
or introspectable in a sandboxed content script.  Attempting this will
yield a "Permission denied to access property" error.

To circumvent this problem we "hide" the callback function by wrapping
it before pushing it on the arguments object that is applied to the
injected script.

This allows introspection into the _immediate_ elements on the arguments
object available to executed scripts.

MozReview-Commit-ID: 9ZigPNYcYpf

--HG--
extra : rebase_source : 64e71886100f65dbd93f4857615f256edf4fc050
2016-08-02 14:50:59 +01:00
Henrik Skupin 64a2fdb7db Bug 1290375 - Marionette has to report the test name and not runner.py for crashes. r=ato
MozReview-Commit-ID: 5WZv4bppp28

--HG--
extra : rebase_source : e8cb8a9e7a74efb11e19699abcc246936d4baa27
2016-08-05 15:06:15 +02:00
Andreas Tolfsen 175975b04b Bug 1280300 - Support navigation by fragment; r=automatedtester
Adds support for navigating to a fragment on the currenty visible document
without waiting for a DOM event that the document has been fully loaded.

This addresses https://github.com/mozilla/geckodriver/issues/150.

MozReview-Commit-ID: 7uiPT5cjGQE

--HG--
extra : rebase_source : f9152a6623a25c17e10dc3bc6552b8e635c21317
2016-07-19 18:47:33 +01:00
David Burns 8ae5a3c2be Bug 1288863: Return platformName and browserVersion as lowercase r=ato
Currently Marionette returns directly from appInfo where the webdriver
specification mandates that we return lowercase for those. See
http://w3c.github.io/webdriver/webdriver-spec.html#capabilities

MozReview-Commit-ID: 4UrOcYRuREK

--HG--
extra : rebase_source : b47a4be6f4eb17e3bf9caf8542cc2f03582df946
2016-07-26 10:13:35 +01:00
Carsten "Tomcat" Book 6b13b3cde6 Merge mozilla-central to autoland 2016-08-03 17:08:48 +02:00
Carsten "Tomcat" Book 7d334fcb50 merge autoland to mozilla-central a=merge 2016-08-03 16:59:18 +02:00
Henrik Skupin 2429007a45 Bug 1291658 - Marionette should not assume that there is always a processId in the capabilities available. r=automatedtester, a=tomcat
Before Firefox 49.0 there is no processId property available. Given that Firefox ui update tests
have to use the Marionette version from the post build also for the pre build, we currently fail
during in_app restarts for Firefox 48.0 and below.

MozReview-Commit-ID: ILG7JLg0dcS
2016-08-03 14:10:53 +02:00
Henrik Skupin 6b1b17d479 Bug 1202392 - Improve exception handling and message details in Marionette. r=automatedtester
MozReview-Commit-ID: 5cvQDMlkMGn

--HG--
extra : rebase_source : 0b4019023cb1fb0ffaf236c5f3a8439fac1916ee
2016-07-28 15:00:25 +02:00
Andreas Tolfsen 0fd765af67 Bug 1230151 - Skip out of sync messages in Marionette client; r=automatedtester
The Marionette remote server sequences messages following bug 1211489.
In the client we can make advantage of this by skipping out-of-sync
messages.

This helps avoid issues such as bug 1207125, where a Python process
interrupt causes the receive() for the current command to be aborted,
and a new command to be issued to retrieve some debug information.
When the new command's receive() is called, it reads the response from
the previous command.

To get around this problem we must read through the data until we reach
the response we are expecting.  Only at that point should we return from
receive() and give the user the expected response.

MozReview-Commit-ID: 3qF9Xo3pb5W

--HG--
extra : rebase_source : dc5cfe7e5f25d7bbe38e1c85f396145bcea968f7
2016-08-02 15:04:44 +01:00
Andreas Tolfsen a61b1d798c Bug 1230151 - Fix skip_unless_protocol ignore decorator; r=automatedtester
This decorator was previously returning a reference of itself, rather
than executing the test item.  This caused it to always pass.

MozReview-Commit-ID: FbzIHqixHyz

--HG--
extra : rebase_source : f01fc3ce515e9e43c72309a2519429112673fa8f
2016-08-02 14:59:05 +01:00
Henrik Skupin 756831a9ce Bug 1125834 - Don't print class name of Marionette exceptions twice. r=automatedtester
MozReview-Commit-ID: 6ctHHB8uDZm

--HG--
extra : rebase_source : 61ef531649b45e77dd3cb8358b635e95c5e82253
2016-07-27 21:46:06 +02:00
Henrik Skupin 298a81fa15 Bug 1287591 - The application should not be started and left open if filtering of a single manifest file does not find any test r=automatedtester
MozReview-Commit-ID: BjkwyQilCEE

--HG--
extra : rebase_source : 7c4685492d9f474cb1bcf80e090a474890cab30f
2016-07-27 00:11:53 +02:00
Andreas Tolfsen 067bab944a Bug 1239552 - Disable frame script global scope; r=automatedtester
By default, frame scripts each have their own scope, so they can declare
global variables without causing conflicts with any other frame scripts.
The current code switches off that behaviour, meaning that the script's
scope is shared with any other frame scripts in the same frame.

This patch changes it so that each loaded frame script gets its own
scope.  This works around the problem that on Windows in officially
branded builds, IPC message handlers are registered twice causing a race
condition in the IPC communication between driver.js and listener.js.

This is not a solution for fixing the core of the problem.

MozReview-Commit-ID: Fcjmi7tq5eA

--HG--
extra : rebase_source : e60adf91a98bf9ca78392ca1da804d82a0d7b885
2016-07-26 13:35:01 +01:00
Andreas Tolfsen 251e781d9b Bug 1239552 - Disable additional welcome URL in automation; r=automatedtester
The preference startup.homepage_welcome_url.additional causes problems
with official branded builds and breaks certain Marionette tests, such as
testing/marionette/harness/marionette/tests/unit/test_window_handles.py
and testing/marionette/harness/marionette/tests/unit/test_selected.py.

Many Marionette tests make assumptions about the number of open windows,
and this aligns the test environment of the officially branded builds
to be more similar to that of Nightly builds.

There is another issue in Marionette, described in bug 1239552, that we
register the listener IPC message handlers twice.  This patch does not
directly address that problem.

MozReview-Commit-ID: KEdJEcOxyGy

--HG--
extra : rebase_source : 48c61804618c76dc0b69abf94421b7e45f4ddfb0
2016-07-19 12:54:54 +01:00
Mark Banner 0d47d718ce Bug 1287827 - Part 2. Build changes for removing Loop. r=glandium 2016-07-30 08:48:29 +01:00
Mark Banner 08ab3adda4 Backed out changeset 1a8114aa64c1 (bug 1287827) for breaking tests 2016-07-29 18:17:18 +01:00
Mark Banner 08a2b46865 Bug 1287827 - Part 2. Build changes for removing Loop. r=glandium 2016-07-29 12:00:25 +01:00
Henrik Skupin 421110bc7e Bug 1257476 - Marionette has to force close the process if it doesn't shut down itself. r=automatedtester
Under some circumstances Marionette currently fails to stop the application in case of socket issues. To
ensure that the application always gets closed - in the case when Marionette started it - the check for crashes
decorator gets updated to do a full process check.

MozReview-Commit-ID: DAiF2ZjAjT5

--HG--
extra : rebase_source : 9e959b4187ef959ee9b7262e8438a5aa84396723
2016-07-22 14:36:47 +02:00
Henrik Skupin 331c421dc0 Bug 1257476 - Ensure Marionette error classes use correct inheritance. r=ato,automatedtester
Custom Marionette error classes should not re-invent the message property which already exists in the
Exception class. This is fixed by calling constructor appropriately.

MozReview-Commit-ID: 1oWjg7MnrSe

--HG--
extra : rebase_source : 81a63c496f6bfbfda2565583edd18cbe1944fd99
2016-07-22 14:35:55 +02:00
Henrik Skupin 4b2c936794 Bug 1287723 - Fix test_screenshot.py for handling secondary chrome windows. r=automatedtester
MozReview-Commit-ID: G11xJFsGdRy

--HG--
extra : rebase_source : 5ebc3ca7dfb035e24459b25727515b646ad242ba
2016-07-25 12:17:06 +02:00
Henrik Skupin 54dc70b4e6 Bug 1284502 - Marionette harness should log exceptions from run() only once. r=maja_zf
Whenever an exception is raised while tests are executed, the log error message should only be
printed once. As best this should happen in `cli()`, so that subclasses can better set their
own behavior, and we safe us from re-raising the exception.

MozReview-Commit-ID: 5NLBnJAjUMQ

--HG--
extra : rebase_source : 17e1574c8671037912d85c0575db493c96f972b2
2016-07-25 18:23:26 +02:00
Carsten "Tomcat" Book f3cbadf7c4 merge autoland to mozilla-central a=merge 2016-07-25 15:46:37 +02:00
Carsten "Tomcat" Book c1c3140a2f Backed out changeset d93b95e192e9 (bug 1287723) on request from whimboo 2016-07-25 11:42:10 +02:00
Andreas Tolfsen c6cfc1c7ad Bug 1287751 - Remove logging in GeckoDriver#startBrowser; r=automatedtester
MozReview-Commit-ID: K7ZV3BajNS8

--HG--
extra : rebase_source : 3076a5b4299453f450a06bed7f4f260c768515cc
2016-07-19 13:25:56 +01:00
Mike Conley d9c28dead6 Bug 1261842 - Make sure Marionette can handle the redirect and error page cases. r=automatedtester
With the initial browser defaulting to remote, there's a greater likelihood
that the DOMContentLoaded event that is handled in the "get" function will
be fired by the initial about:blank instead of the actual desired page.

get() currently works around this by ensuring that the URL of the loaded
page matches the requested one when DOMContentLoaded fires. Unfortunately,
this doesn't work for pages that redirect via their HTTP headers (and will
therefore not fire DOMContentLoaded).

This patch fixes things by adding an nsIWebProgressListener that ensures
that the requested page has started to load before paying any attention
to the DOMContentLoaded events. This handles the redirect case. We also
compare against nsIChannel.originalURI for the about: redirect case.

For neterror pages (which never open channels, and therefore are not
seen by the nsIWebProgressListener), we just check that the page that
we attempted to reach was the one that was requested.

MozReview-Commit-ID: Gbbmfwat46s

--HG--
extra : rebase_source : 1848cd67757be8780f9e50253dc0ee1131467257
2016-07-20 10:03:52 -04:00
Mike Conley 69b9435ec3 Bug 1261842 - Make Marionette listener ensure that the loaded document is the one that was actually requested. r=ato
Before, it was assumed that the next load was the one that the Marionette client had
asked for, when this might not be the case. For example, when a new window opens,
it's possible for the initial about:blank load to be fired in content after the
parent has asked for a page to be loaded.

MozReview-Commit-ID: GPoJgbCvSju

--HG--
extra : rebase_source : 7b4c1638c2fe81a0a37d061a655e35aed0e2daa0
extra : source : b2e910bb1d726562548eba1148a81ec37300fb7b
2016-05-27 16:26:16 -04:00
Nelson João Morais b595c00f23 Bug 1284405 - Better handling of --socket-timeout cli argument value. r=maja_zf
MozReview-Commit-ID: A9LjNJRe2Vm

--HG--
extra : rebase_source : f9f22a77288a37a3a627045601f398bf03dad9b1
2016-07-19 23:34:46 +01:00
Tom Tromey 5538d692d3 Bug 1286877 - do not set c-basic-offset for python-mode; r=gps
This removes the unnecessary setting of c-basic-offset from all
python-mode files.

This was automatically generated using

    perl -pi -e 's/; *c-basic-offset: *[0-9]+//'

... on the affected files.

The bulk of these files are moz.build files but there a few others as
well.

MozReview-Commit-ID: 2pPf3DEiZqx

--HG--
extra : rebase_source : 0a7dcac80b924174a2c429b093791148ea6ac204
2016-07-14 10:16:42 -06:00
Carsten "Tomcat" Book bc1b31b01b Merge mozilla-central to autoland 2016-07-21 16:27:58 +02:00
Henrik Skupin faa2229a5e Bug 1287723 - Fix test_screenshot.py to properly wait for new chrome window to be loaded. r=automatedtester
MozReview-Commit-ID: KiFGbNdddJe

--HG--
extra : rebase_source : 87ccbb02cdb45531efc7fe948c57c10e9e03b547
2016-07-21 11:10:14 +02:00
Nelson J Morais e029d9b421 Bug 1279005 - Refactor BaseMarionetteTestRunner: added new method _is_filename_valid() centralizing test's file name validation logic.; r=maja_zf
MozReview-Commit-ID: 75IFA54QsWy

--HG--
extra : rebase_source : cb348db29f612cc1ce7f19b7ae41a016567bb0c6
2016-07-15 00:01:38 +01:00
Andreas Tolfsen 1b5fe25426 Bug 1284232 - Convert internal error list to a set; r=automatedtester
MozReview-Commit-ID: THj6qxvUus

--HG--
extra : rebase_source : 06c41b5387755edda487c67418c1575c8c639eee
2016-07-08 14:00:56 +01:00
Andreas Tolfsen 7e156be01e Bug 1284232 - Guard against ill-behaved objects on error check; r=automatedtester
It turns out that certain objects such as a DOMRectList have peculiarities
that cause string comparison to throw. This is normally not a problem
as error.isError is usually passed JSON serialisable data. But when it
is not, this try condition helps diagnose problems.

MozReview-Commit-ID: BLNSziwfxXs

--HG--
extra : rebase_source : 8bad973a20d8b69fa27f5de66e4ea287d4bcddcd
2016-07-08 13:58:04 +01:00
Andreas Tolfsen ddc9f80240 Bug 1284232 - Marshal all HTML and JS collections; r=automatedtester
This patch adds marshaling of HTMLFormControlsCollection,
HTMLAllCollection, and HTMLOptionsCollection element collections to
Marionette.

It will allow us you to return from HTMLSelectElement.options,
document.forms[0].elements, and document.all. This is in
addition to the already supported document.querySelector
(NodeList), document.getElementsBy* (HTMLCollection), and
Array.from(ELEMENT...) collections.

MozReview-Commit-ID: 71a65lZRn4S

--HG--
extra : rebase_source : aff3490ceb0db110f392956baaacbd5e2e7acb62
2016-07-04 17:34:06 +01:00
André Reinald bcee2574be Bug 1279243 - Add quit_in_app() to marionette driver. r=maja_zf
MozReview-Commit-ID: 4O1hnYVsUWX

--HG--
extra : transplant_source : %23%0B%D9%D1%E8%98%C2%C7G%0F%06%11%BF%40%E9%3FhX%AC%5C
2016-07-19 17:13:43 +02:00
Nelson J Morais 526a2c53b7 Bug 1282331 - Refactor GetActiveFrame to return WebElement r=automatedtester
MozReview-Commit-ID: 6LiBOXSEPtz

--HG--
extra : rebase_source : 7143f5b41e69146086218c015074370e317d2db5
2016-07-12 22:56:34 +01:00
Nelson João Morais 65b0fd2d1d Bug 1283959 - Add SetWindowSize to return new width and height to comply with WD Spec r=automatedtester
MozReview-Commit-ID: AGnJuLqyULY

--HG--
extra : rebase_source : a77d4f7ab84c023f78a1e927a155626add26af6c
2016-07-14 01:11:07 +01:00