Make the test paths relative to topsrcdir before passing them to
TestResolver. Also do not passing cwd to TestResolver since it will
filter out tests that do not live under the directory where the mach
command is executed.
Verification steps:
Execute a mach test command from any subdirectory. For example:
$ cd testing/tps/
$ ../../mach xpcshell-test ../../services/fxaccounts/tests/xpcshell/
$ ../../mach test ../../services/fxaccounts/tests/xpcshell/
Similar to the previous patch, we now teach `mach mochitest` how to
execute test objects directly.
--HG--
extra : rebase_source : b69b5b74bcf6c81cff5deb28a1156ab2fcc691f7
`mach mochitest` now accepts a --flavor argument to limit execution to
tests of a certain flavor. Executing `mach mochitest --flavor=X` should
be equivalent to executing `mach mochitest-X`.
This paves the road to deprecating the various `mach mochitest-X`
commands.
--HG--
extra : rebase_source : 0f8370425f54a4ec86e7f668bcbff69362e017f7
The `mach mochitest` command is now implemented. Given test path
arguments, it will identify mochitests of any flavor and run the
appropriate mochitest suite.
If tests from multiple suites are present, it will invoke each suite
separately. Although, the output in this mode isn't very friendly.
There are a number of enhancements that could be made to this command,
including the abilities to filter by flavor and sub-suite. These will
come in another patch.
--HG--
extra : rebase_source : 9be6000e6bb508ef0c980eda9f9ebe03a4c0f02a
Previously, mach xpcshell-test and mochitest-* were limited to a single
test "path" argument. This patch enables multiple arguments to be passed
in.
TestResolver in the build system has gained the ability to process
multiple paths in a single invocation. The mach commands have been
modified to utilize this new feature.
Only mach code paths that pass manifestdestiny.TestManifest instances
into the test runner can accept multiple arguments. This is because
there is no other way to pass a custom set of tests into the test
runner. If multiple test arguments are used but not supported, a warning
is emitted.
--HG--
extra : rebase_source : 1ce1328a969f654e7b43a7a0bdd15ed86f5ceb21
The mochitest mach commands now consult the all-tests.json file for
resolving the test argument/path. The mochitest runner has been modified
to accept a manifestdestiny.TestManifest instance instead of a path to a
manifest file. The mach commands construct an in-memory TestManifest and
pass it to the mochitest runner.
While I was here, I cleaned up some old JSON serializing code.
--HG--
extra : rebase_source : 886b13d4cb35992c132bc3051925424609a5fdf8