ensuring moz.build files have BUG_COMPONENTS for all files
in the testing/ subdirectory is a win. There are a lot of
older files and some files used in many harnesses. If the
files are primarily used for mochitest, they are associated
with the testing::mochitest component, otherwise I chose
the testing::general component.
There is an exception web-platform-tests, these have many
test files that need to be matched to proper components.
MozReview-Commit-ID: IIv9W2kEqeN
Information in the ALL_FLAVORS dict is needed by interactive loaners (in the mach_test_package_commands.py
file). Because the normal mach_commands.py file doesn't get copied to the tests.zip, this commit refactors
ALL_FLAVORS into mochitest_options.py (which is copied to tests.zip) to avoid duplicating it. A side
benefit of moving ALL_FLAVORS to mochitest_options.py, is that mochitest_options.py itself can make use of
this dict. This means we no longer need to redefine the --flavor argument in the mach command.
The __init__.py file is added to turn the testing/mochitest directory into a python module. This allows
things like mach_commands.py to do things like 'from mochitest import runtests'. Mach commands are able to
find this module because the 'testing' directory is already added to sys.path in the mach bootstrap.
In the future, having mochitest as an importable module should help with running it from the srcdir. So this
is a change we should start making anyway. Unfortunately, we still need to import the main runtests.py file
from the objdir, as lots of things depend on the SCRIPT_DIR variable being in the objdir. We could probably
fix this with minimal work, but that is scope bloat for this bug.
MozReview-Commit-ID: KtWCk91bX0K
--HG--
extra : rebase_source : 891b9e138cb53b040387369568d8b45987b59ddd
In bug 1320073, the marionette package structure was refactored a bit. This made the SEARCH_PATHS
in the mach test package bootstrap outdated. While this didn't end up causing any errors due to
marionette also appearing in an activated virtualenv, it should still be fixed. Figured since I was
in the area, I would just piggy-back off this commit series rather than filing a new bug.
MozReview-Commit-ID: DCNz3xEVJfY
--HG--
extra : rebase_source : 56f37475770fb4848a6413111e15b37f94164e04
The test was accidentally committed at some earlier
point (hard to research due to hg not tracking file
renamings) and the functionality is sufficiently tested by
testing/marionette/harness/marionette_harness/tests/unit/test_navigation.py:170.
MozReview-Commit-ID: D0lAAGDm22z
--HG--
extra : rebase_source : 2f3bfce3f42be111f51442eec7d144640a540984
Commands which are not (yet) supported in chrome context have to throw an
UnsupportedOperationError to indicate that they cannot be used instead of
silently eating failures.
MozReview-Commit-ID: 2eFYAfKaQpD
--HG--
extra : rebase_source : e84c0cde92075a1a5fd91b7e75f0e8c1cace00fa
Cookie handling should be restricted to content scope and will be
enforced with a following patch. This patch fixes the unit test.
MozReview-Commit-ID: LpbBMH5refy
--HG--
extra : rebase_source : f94dfc382589358b054688fbaa2caab0b937f4da
Fix for a regression as introduced by bug 1277090. get_attribute() no longer returns
values of Element properties. For the latter get_property() has to be used now.
MozReview-Commit-ID: K45rcHDM6YC
--HG--
extra : rebase_source : d35ea60aa41fad0e84c967cd1042c61106f9a442
Commands which are not (yet) supported in chrome context have to throw an
UnsupportedOperationError to indicate that they cannot be used instead of
silently eating failures.
MozReview-Commit-ID: 2eFYAfKaQpD
--HG--
extra : rebase_source : cbf8ded1ad5ea0b0e902f74831416bc3b7921856
Fix for a regression as introduced by bug 1277090. get_attribute() no longer returns
values of Element properties. For the latter get_property() has to be used now.
MozReview-Commit-ID: K45rcHDM6YC
--HG--
extra : rebase_source : 8ca27167b364832a99c29eb9cf1f16181493d950
Commenting out test methods is not the way how we should mark tests
as being skipped. The correct skip methods have to be used instead so
that the final results also show the correct skip count.
MozReview-Commit-ID: LKL4YQCyFko
--HG--
extra : rebase_source : 4c50596a6477e2afa0926b5dd787466d2b6ce89a
Marionette's skip decorators are currently not conform with the ones from the
Python's unittest module, which require a reason as parameter. As such Marionette
should behave the same and should also require a reason for more detailed skip
messages. This is done by wrapping the actual decorator with another enclosing
method.
With the changes we also ensure that the wrapper has the same attributes as the
wrapped function by using functools.wraps(). This hasn't used so far and makes
debugging harder.
Further a couple of skip methods and classes were copied from the unittest module,
which should be better imported instead to reduce code duplication.
MozReview-Commit-ID: 6XT6M6cbCFW
--HG--
extra : rebase_source : 2fb8bce0f17eade182eb5f61479548d0f6ef8ecc
Taking screenshots for skipped tests is useless and should be avoided to
reduce the size of the test logs.
MozReview-Commit-ID: 9HPH7pSXTj9
--HG--
extra : rebase_source : 41ea609a285e037160b1be535dac35de643f31c1
Registered callback handlers for tests should receive the correct
test status when the test has been finished, and not always "Error".
This change allows those callbacks to run specific code for individual
test results, eg. only do screenshots for failures.
MozReview-Commit-ID: FfbCRR0Jvjb
--HG--
extra : rebase_source : c73253acbb666ca62b23f806145c20f0a70c934c
Giving the value 0 indicates we should wait forever for the page load
to finish. This change significantly speeds up the tests.
MozReview-Commit-ID: 8hvqxGNR7B7
--HG--
extra : rebase_source : d224561fc3feeb40116bab9f25bb7710eec399e1
Image documents do not fire DOMContentLoaded events, but we can use the
web progress listener to call the ready state checks when the document's
progress state reaches `nsIWebProgressListener.STATE_STOP`.
This change makes it possible to navigate to image documents, such as
.jpg and .gif images with Marionette.
Documents with the text/html MIME are not affected by this because they
are parsed as HTML documents with a special style.
MozReview-Commit-ID: I92FDXDIdz9
--HG--
extra : rebase_source : 01fa5826badc806ef5ac2de35d88452a0df15201
In bug 1308472 we are seeing 'make -k check' fail intermittently with
the only apparent error message something like:
make: *** [check] Error 245
This debug should make it more clear which test (if any) is responsible
for setting the return code in 'mach python-test', and whether or not
'mach python-test' is actually reaching the end of the function.
MozReview-Commit-ID: 6IQrZQqs8ij
--HG--
extra : rebase_source : 4d2d4b8b139d7f16bda2b22ce79ab2c84e8fe4c7
Leak checking in mochitest was failing to turn the jobs orange for a period of time. Several leaks slipped
through in the interim. In order to land the fix ASAP to avoid further bustage, these leaks are being
whitelisted. See the patch or the dependency graph of bug 1325148 for the list of leaks/bugs that are being
disabled.
While these bugs won't show up in treeherder, they are a priority to fix, as they could represent leaks that
are already landed in the code.
MozReview-Commit-ID: JY7Gpvswp4r
--HG--
extra : rebase_source : 0d75d80eccddca31a7d2d1c997a85efdb5a4858c
This fixes a regression when switching to the StructuredOutputParser in mozharness.
Previously, mozleak was relying on the string "TEST-UNEXPECTED-FAIL" to turn the jobs
orange, but it was doing so at the "warning" level. The StructuredOutputParser requires
the "error" level to set the appropriate tbpl_status.
MozReview-Commit-ID: 9u9mwqrkA6E
--HG--
extra : rebase_source : d31ece08232a87713702e713076071fa10fb8324
By the webdriver spec the code has to fail with a NoSuchWindowError if the
active window is no longer present.
MozReview-Commit-ID: HFl7yO5ErRn
--HG--
extra : rebase_source : d170e400c1624e680745e7023041413055ef9bd0
The screenshot code in chrome scope is updated to use the generic capture module,
which is already used for content scope. By that change the code which captures
the canvas makes use of devicePixelRatio now. It means the screenshot will be
scaled depending on the screen configuration, eg. on Andoid this mostly 2.
MozReview-Commit-ID: EBKmJEKVXPQ
--HG--
extra : rebase_source : cd399eb3ee012516b218b9d1a5fd26422ebc9be0
Formerly getElementAttribute() has returned a mix of attributes and
properties. Since getElementProperty() has been added, there is no
need anymore for getElementAttribute() to return conflated data.
MozReview-Commit-ID: 29saWd9PsOX
--HG--
extra : rebase_source : e1dece7586c9b22320db406cfd60d211195f5f18
Given that Marionette supports the get_property() method, all the calls to
get_attribute() have to be audited and updated to get_property() if needed.
It's necessary because get_attribute() will only retrieve attributes from now on.
MozReview-Commit-ID: 8SmdNoiG8uP
--HG--
extra : rebase_source : 07a4b71baeaeac13bc29d9b0e1bcf6c4c611ee39
The target node of HTMLEditRules::ReapplyCachedStyles() may be styled with its parent. When HTMLEditRules::ReapplyCachedStyles() is called, it shouldn't restore another style cache if it's already specified in current DOM tree.
MozReview-Commit-ID: DKCpQ8YyW7
--HG--
extra : rebase_source : 5aad5caeee98301a1ad0035b5d2efa3cd545a0d0
Leak checking in mochitest was failing to turn the jobs orange for a period of time. Several leaks slipped
through in the interim. In order to land the fix ASAP to avoid further bustage, these leaks are being
whitelisted. See the patch or the dependency graph of bug 1325148 for the list of leaks/bugs that are being
disabled.
While these bugs won't show up in treeherder, they are a priority to fix, as they could represent leaks that
are already landed in the code.
MozReview-Commit-ID: JY7Gpvswp4r
--HG--
extra : rebase_source : 6227c59df4ee3c0ffd9baf721c3081867c98899a
This fixes a regression when switching to the StructuredOutputParser in mozharness.
Previously, mozleak was relying on the string "TEST-UNEXPECTED-FAIL" to turn the jobs
orange, but it was doing so at the "warning" level. The StructuredOutputParser requires
the "error" level to set the appropriate tbpl_status.
MozReview-Commit-ID: 9u9mwqrkA6E
--HG--
extra : rebase_source : 4d975e481c8257b178a145497bc53eabc28ed182
Actually this is the same as color accumulation. Now we can pass test cases
that interpolation with overflowed values.
MozReview-Commit-ID: L4RqBhG5n3l
--HG--
extra : rebase_source : e80f1c135b33703dcda7c99df897aa7097030f05
This includes some failure test cases:
1) Color interpolation with overflowed colors.
Additive color needs to be with overflowed color components that are produced
by additive calculation. For example:
an additive color animation between rgb(100, 100, 100) and rgb(200, 200, 200)
on rgb(100, 100, 100) element should be an animation of colors;
from rgb(200, 200, 200) to rgb(300, 300, 300).
This will be fixed in the next patch (part 8).
2) All transform tests.
Additive transform list has to be concatinated, it will be done in a subsequent
patch (part 9).
MozReview-Commit-ID: 5OoT6icVMcC
--HG--
extra : rebase_source : ad572953c6e986efb85faf07e385b8a8f3b3d968
From spec <https://w3c.github.io/web-animations/#dom-keyframeeffectreadonly-getkeyframes>:
composite
The keyframe-specific composite operation used to combine the values
specified in this keyframe with the underlying value.
This member will be absent if the composite operation specified on
the keyframe effect is being used.
MozReview-Commit-ID: 8ob59Xv6DRL
--HG--
extra : rebase_source : cf88254e6acb1a2d56b7c50ef46db7ef3a692947
This patch also fixes expected computed offset values in frame at 0.5 offset for
add composite.
MozReview-Commit-ID: 8PNp237NoV4
--HG--
extra : rebase_source : 7bdf83741198fb81c6721cad1764e6464033c240