Commit Graph

137 Commits

Author SHA1 Message Date
Geoff Brown
79f5bdc311 Bug 1481449 - Require at least one test argument for 'mach test'; r=ahal 2018-08-31 09:59:07 -06:00
Geoff Brown
ee452067ce Bug 1329286 - Remove 'mach find-test-chunk'; r=ahal 2018-08-27 07:19:02 -06:00
Geoff Brown
24afcca748 Bug 1469720 - Add a 'mach test-info' subcommand to find long-running tasks; r=jmaher 2018-08-07 10:05:37 -06:00
Andrew Halberstadt
44f4128a40 Bug 1477276 - Fix regression preventing |mach help| without an objdir r=bhearsum
Differential Revision: https://phabricator.services.mozilla.com/D2267

--HG--
extra : moz-landing-system : lando
2018-07-20 14:58:06 +00:00
Geoff Brown
dfb845682a Bug 1476363 - Add --show-tasks support to 'mach test-info'; r=jmaher 2018-07-17 12:54:19 -06:00
Ms2ger
3787678d13 Bug 1460546 - Add a mach jstests command; r=dminor 2018-07-05 14:42:52 +02:00
Andrew Halberstadt
851c87fc61 Bug 1445975 - Add a basic mach command for running jsshell benchmarks, r=jmaher
Run with:
./mach jsshell-bench ares6

This requires a non-artifact build with ac_add_options --enable-js-shell. Otherwise,
a custom JS shell can be specified with --binary.

MozReview-Commit-ID: C8WAxG9pIkk

--HG--
extra : rebase_source : 99163261b771bfb2f903892f4c1260c8b241ce71
2018-05-15 14:41:16 -04:00
Jan de Mooij
d047348566 Bug 1063728 - Run SpiderMonkey style checkers as part of the build instead of make check. r=chmanchester 2018-04-26 09:09:51 +02:00
Jan de Mooij
2c4c4c3296 Bug 1064316 part 3 - Fix |mach check-spidermonkey| to use correct cwd. r=gps 2018-04-24 16:17:50 +02:00
Andrew Halberstadt
20f38147c2 Bug 1445624 - [test] Make sure verbose logging is enabled when running a single test, r=gbrown
This sets verbose=True (used by the mach formatter) and compact=False (used by tbplformatter) if
only a single test is specified with either |mach test| or |mach mochitest|.

This way all TEST_STATUS and log lines will be visible when developers are writing a new test.

MozReview-Commit-ID: 2nuKs9DLnx0

--HG--
extra : rebase_source : 1fc594b465a2a94dfcd85d56d042969af47f6f65
2018-03-19 16:04:02 -04:00
Andrew Halberstadt
be2e6d661c Bug 1443557 - Start using the 'mach' formatter by default in |mach test| and |mach mochitest|, r=gbrown
This was originally supposed to be fixed in bug 1421799, but I either forgot to
switch the flag, or accidentally clobbered it while resolving conflicts.

MozReview-Commit-ID: Im8OKbswEf0

--HG--
extra : rebase_source : 1104969aca56b62f8f302225fd11a509a73a3960
2018-03-12 16:46:53 -04:00
Andrew Halberstadt
af02603e3d Bug 1440405 - Fix faulty assumption that only one log handler can be installed in |mach test/mochitest|, r=froydnj
MozReview-Commit-ID: AzKLAgW5agx

--HG--
extra : rebase_source : 34cebcc49435a3c5875b4805d00aeff2c7530b9c
2018-02-23 09:40:06 -05:00
Andrew Halberstadt
f249b70e43 Bug 1437912 - [moztest] Map flavors and subsuites to a suite definition, r=gbrown
The end goal here is to be able to use |mach try fuzzy <path>| with tests that
belong to a subsuite. To do this, we need a unique 'task_regex' value for each
subsuite so that we can map a test path back to a set of tasks.

This removes the TEST_FLAVORS dict (which was mostly just a redefinition of the
data in TEST_SUITES), and instead provides two new private mappings:

<flavor> -> suite definition
(<flavor>, <subsuite>) -> suite definition

To retrieve a suite definition given a flavor/subsuite, consumers can now call
get_suite_definition.

MozReview-Commit-ID: 2pe1v1IHUVy

--HG--
extra : rebase_source : 6fff947ba214112ccf16c894174a6a0e2487111a
2018-02-13 14:16:46 -05:00
Andrew Halberstadt
0c637cdc6c Bug 1421799 - [test] Add mozlog logging arguments to |mach test| and |mach mochitest| r=gbrown
MozReview-Commit-ID: CaysVHzNTWo

--HG--
extra : rebase_source : f6e1375e1de7e80f2583ac89f78ff90afe01934f
2017-12-06 17:29:23 -05:00
Sebastian Hengst
e6dbbae0aa Backed out 5 changesets (bug 1421799) for failing firefox ui functional tests. r=backout on a CLOSED TREE
Backed out changeset f9f32474fdaf (bug 1421799)
Backed out changeset 18b4fa241936 (bug 1421799)
Backed out changeset 88dca5c8cfac (bug 1421799)
Backed out changeset 8c1f1ab754a5 (bug 1421799)
Backed out changeset e028f677bc80 (bug 1421799)
2018-01-03 20:21:28 +02:00
Andrew Halberstadt
89c4f8acbc Bug 1421799 - [test] Add mozlog logging arguments to |mach test| and |mach mochitest| r=gbrown
MozReview-Commit-ID: CaysVHzNTWo

--HG--
extra : rebase_source : 005949ca4a91b4610837a7dd041f26a25559049a
2017-12-06 17:29:23 -05:00
Dorel Luca
61983e9ada Backed out 5 changesets (bug 1421799) for failing browser-chrome on Linux and OSX and for failing autophone-mochitest on Android r=backout on a CLOSED TREE
Backed out changeset 7fb20bced076 (bug 1421799)
Backed out changeset 629e467a07be (bug 1421799)
Backed out changeset 2de335c0287a (bug 1421799)
Backed out changeset afe14ec646ab (bug 1421799)
Backed out changeset bbe4d2292f86 (bug 1421799)
2017-12-14 15:41:22 +02:00
Andrew Halberstadt
b7c836bd6d Bug 1421799 - [test] Make the 'mach' formatter the default when running |mach test| and |mach mochitest| r=gbrown
MozReview-Commit-ID: 17ENkMhLTYc

--HG--
extra : rebase_source : 9d3bda2855cb6a966e53c19c1443b5952da5a4a9
2017-12-06 14:13:40 -05:00
Andrew Halberstadt
d27d62788b Bug 1421799 - [test] Add mozlog logging arguments to |mach test| and |mach mochitest| r=gbrown
MozReview-Commit-ID: CaysVHzNTWo

--HG--
extra : rebase_source : a5ffb00e0fae1a70a6d01d629710db6ea042260f
2017-12-06 17:29:23 -05:00
Andrew Halberstadt
bc48fbb9ae Bug 1209463 - [mozlog] Add a 'summary_on_shutdown' attribute to MachFormatter, r=jgraham
When 'summary_on_shutdown' is True (which is the case for |mach test| and |mach
mochitest|), BaseSummaryFormatters will save the summary information until the
'shutdown' action is received at the end of the logger's lifetime.

Summary information will no longer be dumped on 'suite_end'.

MozReview-Commit-ID: HKtVr5PxfOy

--HG--
extra : rebase_source : f350f09111deb510b27a4e55797243dda3160869
2017-11-29 12:02:19 -05:00
Andrew Halberstadt
3e46924759 Bug 1209463 - [test] Use a common logger across suites from |mach test| and other test commands, r=gbrown
In order for |mach test| and |mach mochitest| to log an overall summary,
every test harness invocation they make needs to use the same structured
logger (otherwise the affected suite will be missing from the summary).

MozReview-Commit-ID: 8LJw7r8SItk

--HG--
extra : rebase_source : 1417dce3817bae94ad61a5250065c6cbc35857e4
2017-11-23 13:04:19 -05:00
Sebastian Hengst
a353221537 merge mozilla-inbound to mozilla-central. r=merge a=merge 2017-11-09 00:00:16 +02:00
Geoff Brown
74ddbdda93 Bug 1414960 - Improve formatting of |mach test-info| output; r=jmaher 2017-11-08 09:32:09 -07:00
Andrew Halberstadt
52dad304bf Bug 1414399 - [moztest] Refactor |mach test|'s resolving logic into moztest.resolve r=gps
The code in |mach test| for test resolving, should get merged with the TestResolver
class in moztest.resolve. This way it can be shared with other modules and we'll
have a single canonical place for all our test resolving logic.

MozReview-Commit-ID: IHRXXi5mB4G

--HG--
extra : rebase_source : 6f96d06412ab8fa152ac5d9bdd15acbcdc9695c4
2017-11-08 09:59:51 -05:00
Andrew Halberstadt
a69182174e Bug 1414399 - [mozbuild/moztest] Move mozbuild.testing.TestResolver to moztest.resolve r=gps
The TestMetadata and TestResolver classes aren't technically part of the build
system. The only connection is that they consume some build system output.

The next patch in this series is going to be merging in a bunch of other test
resolving logic from other parts of the tree. Moving this out first allows us
to keep that extra logic out of mozbuild.

MozReview-Commit-ID: 1eq4SjFVCyW

--HG--
rename : python/mozbuild/mozbuild/test/test_testing.py => testing/mozbase/moztest/tests/test_resolve.py
extra : rebase_source : 7ff11f9ec455547533082d20cb5371845f7a4f21
2017-11-06 08:41:42 -05:00
Attila Craciun
7bcf901c3b Merge inbound to mozilla-central r=merge a=merge 2017-10-25 12:30:28 +03:00
Geoff Brown
5facbdc255 Bug 1410714 - Help mach tests find adb when running Android tests; r=jmaher 2017-10-24 15:17:25 -06:00
Gregory Szorc
a56fef0fd4 Bug 1410969 - Consolidate code for resolving path metadata; r=ahal
find_paths_and_tags() can instantiate a BuildReader to read moz.build
metadata. We switch `mach test` to call this to avoid some redundant
code.

To facilitate `mach try`'s use case, we add test flavors to the
result of find_paths_and_metadata() and change the function name to
reflect its more generic purpose.

MozReview-Commit-ID: Lcz05W8g2dt

--HG--
extra : rebase_source : 17d6f23275f4eed1bd544a9b2cd991214625dabc
2017-10-23 10:42:41 -07:00
Gregory Szorc
9a4d779385 Bug 1410969 - Return dict from find_paths_and_tags(); r=ahal
This will make the return value more easily extensible and will help
consumers know what the data structures represent.

MozReview-Commit-ID: DaeYsqfMW37

--HG--
extra : rebase_source : 440d16f0604b21f0ec885e1bca5066c32b18f641
2017-10-23 10:36:38 -07:00
Gregory Szorc
5c70c4e281 Bug 1410969 - Properly import AutoTry; r=ahal
The AutoTry code got moved around in 27b5181a3c77 and c94bf66df122
(bug 1382775). This broke `mach test` without arguments.

This commit imports the new location and uses the new API. As the
inline TODO states, there is still room for improvement. This will
be done in a separate commit.

MozReview-Commit-ID: AKHfdNnfOhl

--HG--
extra : rebase_source : dedd0171bafc1897c71f0710addb1f692c9f4844
2017-10-23 10:33:37 -07:00
Kris Maglione
e99cced382 Bug 1371065: Part 1 - Remove external references to the add-on SDK. r=Mossop,glandium
MozReview-Commit-ID: D5KyHcg8Ujk

--HG--
extra : rebase_source : 1a74ccb2963f2946a49c8bf720af595151b48fd1
2017-09-12 11:54:47 -07:00
Gregory Szorc
de71bdab2d Bug 1397406 - Use BuildReader helper in mach test; r=dustin
Now that we have a helper function to obtain a BuildReader, let's
put it to use.

MozReview-Commit-ID: 7V3RsWs5TPu

--HG--
extra : rebase_source : 23193a1482ebb2fc4d1bdc588d8cd31c4d458645
2017-09-06 12:26:15 -07:00
Andrew Halberstadt
d3806e8077 Bug 1289444 - Forward extra arguments in |mach test| to the underlying test commands, r=chmanchester
MozReview-Commit-ID: 631K2n0wB1a

--HG--
extra : rebase_source : d5aa8c59e16e811915ff24100fd1fe7a49604304
2017-08-29 16:20:47 -04:00
Andrew Halberstadt
67e137395b Bug 1311991 - Add a basic cramtest mach command, r=gps
This is a pretty bad runner. My goal for now is to get something really
basic working and then improve it over time as more tests get added.

Run tests with:
./mach cramtest path/to/dir

Any extra args will be forwarded to the cram binary, e.g:
./mach cramtest -i path/to/dir

Cram help can be seen with:
./mach python -m cram -- -h

MozReview-Commit-ID: 67jYHfYQjWu

--HG--
extra : rebase_source : 1ee1dc5ddcdc4559402be019996bd757afe824ab
2017-01-20 11:15:25 -05:00
Andrew Halberstadt
57303dc36f Bug 1311991 - Add testing/mach_commands.py to flake8 linter, r=gps
This was mostly generated with autopep8 v1.3.2. A few left over errors
were fixed by hand.

MozReview-Commit-ID: 5crfUz0xj3O

--HG--
extra : rebase_source : 1fa9f550dbdca35ce4f2d8f9848dc3061b7fe01b
2017-08-17 15:50:39 -04:00
Gregory Szorc
a9bab5de7c Bug 1384665 - Use virtualenv Python in mach check-spidermonkey; r=jimb
Recent changes in bug 1377216 introduced some new Python imports
to some SpiderMonkey test scripts. These modules likely won't be on
sys.path by default.

To ensure these Python processes always work, this commit changes
them to be executed with the Python binary from the build system's
virtualenv.

In the case of jit_test.py and jstests.py, we switch from relying on
the shebang Python (`/usr/bin/env python`). In other cases, we switch
from mach's python (essentially `which python2.7` or `python`).
Previously, some clients may have been using Python 3 via shebang
discovery. This change will force them to Python 2. This might be
unfortunate. But proper Python 3 support in mach and the build system
is a bit of a mess right now. I'd rather we just consistently use
the virtualenv Python because it is more well-defined and it
eliminates a class of bugs around the Python environment being
undefined.

MozReview-Commit-ID: 4NHzWisIgDC

--HG--
extra : rebase_source : cb79fe457daf7780aabcef902718429fdd5072a5
2017-07-26 18:02:51 -07:00
Andrew Halberstadt
88348cfd21 Bug 1382775 - Move testing/tools/autotry to tools/tryselect/selectors/syntax.py, r=chmanchester
The |mach try| implementation isn't really testing specific so figured while doing this refactor
anyway we could take the opportunity to move it to /tools. This renames the "autotry" module to
"syntax" as one of the 'selectors' under the newly created tryselect module.

MozReview-Commit-ID: DmnGU5sKuCk

--HG--
rename : testing/tools/autotry/autotry.py => tools/tryselect/selectors/syntax.py
extra : rebase_source : 52f2a61d97107b8d50e3894ea0f5cd9c24d4108d
2017-07-17 21:36:23 -04:00
Geoff Brown
adeec452ba Bug 1371833 - In 'mach test-info', use posix paths for queries; r=jmaher 2017-06-21 13:59:28 -06:00
Andrew Halberstadt
a3a1865e5a Bug 1368438 - Add -j to mach try, r=chmanchester
The -j try syntax specifies a "job" task. Job tasks are different from
unittests in that they typically don't require a build and run from the
source tree. Examples include linters (eslint, flake8, etc), python tests
(mozbase, mochitest, etc) and misc things like doc generation.

Sometimes, developers might only want to run a specific "job" task with a
syntax like "./mach try -j mozbase".

This means a few assumptions need to be broken in |mach try|. Platforms
and unittests should no longer be required if -j was specified. Most of
the changes in this patch revolve around dealing with those broken
assumptions.

MozReview-Commit-ID: O0y6V2Wwej

--HG--
extra : rebase_source : d003380317cbb688fcc7113c454a5c0543ade40c
2017-06-15 08:14:22 -04:00
Andrew Halberstadt
556a61bdeb Bug 1368438 - Make it possible to only schedule builds with |mach try|, r=chmanchester
Currently if no unittests, paths or tags are specified it will error out.

MozReview-Commit-ID: O0y6V2Wwej

--HG--
extra : rebase_source : e7a438aa1131e3d473459c46fbe9f23c3c06bae1
2017-06-15 08:14:17 -04:00
Geoff Brown
04a5ab1720 Bug 1365621 - Allow specification of info categories for |mach test-info|; r=jmaher 2017-05-17 10:30:37 -06:00
Geoff Brown
d3531a3682 Bug 1365621 - Display manifest info in |mach test-info|; r=jmaher 2017-05-17 10:30:36 -06:00
Geoff Brown
2006363898 Bug 1365621 - Allow multiple test arguments for |mach test-info|; r=jmaher 2017-05-17 10:30:34 -06:00
Geoff Brown
df122d5bfa Bug 1340584 - Remove devicemanagerSUT and references to sutagent; r=wlach
sutagent is no longer built or used; devicemanagerSUT is completely
unused. After this change, devicemanagerADB is the only implementation of
devicemanager, and test harness options like --dm_trans are eliminated.
2017-03-21 12:20:01 -06:00
Geoff Brown
54d1066977 Bug 1345572 - Enhance 'mach test-info' with total and worst failure rates; r=jmaher 2017-03-08 16:01:44 -07:00
Chris Manchester
2ef1eb0c60 Bug 1344281 - Don't accidentally require config.status when running |./mach try|. r=nalexander
MozReview-Commit-ID: Ez8GI46kv7z

--HG--
extra : rebase_source : eb1a038e57dd40940d6bd648728942e26919a5cb
2017-03-03 11:17:11 -08:00
Chris Manchester
b8149e55c0 Bug 1344117 - Always print a message when adding --artifact to a try push automatically. r=nalexander
MozReview-Commit-ID: 7pVIG4v7DHq

--HG--
extra : rebase_source : c966d73c3d7c6f97a235ec8597076fc2ea4d95bb
2017-03-02 21:21:52 -08:00
Nick Alexander
b331a50e0f Bug 1315032 - Make |mach try| set --artifact flag when --enable-artifact-builds is set. r=chmanchester
Tri-state flags: I hate them.  I don't want to default "--artifact" in
the autotry parser, since not all consumers of that code have a
mozconfig.  However, we also can't overwrite the `artifact` value from
a "--no-artifact" flag without knowing if we're changing anything.
Therefore, we add a new "--no-artifact" flag and manage the tri-state
ourselves.

MozReview-Commit-ID: 19gl3mM4YO0

--HG--
extra : rebase_source : a92e6e85f37c83402cac2d9b3327fc536553b7a9
2016-11-20 14:31:52 -08:00
Andrew Halberstadt
f1ceb4a895 Bug 1342937 - Error out of |mach try| when using test paths and no build config is detected, r=chmanchester
MozReview-Commit-ID: 2RE3vc1Kxvc

--HG--
extra : rebase_source : 420482aa7603077c2fef0ecb903e127478dad3f3
2017-02-27 09:42:25 -05:00
Geoff Brown
19850b6203 Bug 1324470 - Add support for |mach test-info|; r=gps,ekyle
The test-info command provides a report of test results for a named
test on a set of branches over a time period. Test results include
a pass/fail summary, average/min/max duration, and open bugs.
Branches and time period can be modified with optional parameters.
2017-02-07 09:42:29 -07:00