About
etest allows to control behaviour of #[test] like functions:
-
it allows to specify the maximum runtime of a test (
timeoutparameter) -
it allows to skip a test based on the result of another function (
skip_*parameter class) -
it allows to limit parallel execution of tests by making it dependend on resources which are simply used ("shared" usage) or consumed for the duration of test ("exclusive" usage)
Example
This test will:
-
be skipped at monday
-
will be aborted after 2 seconds
-
will use "video" and "audio" resources exclusively; e.g. there will be no other test running which uses one or both of these resources
-
will share the "network" resource; e.g. other tests which share this resource are allowed at the same time, but no tests which use it exclusively.
License
The code of the toplevel etest crate (content of src folder) is
licensed under LGPL-3.0-or-later with an exception which removes
restrictions regarding static linking.
Implementation details (crates in the etest-derive + etest-impl
folders) are licensed under GPL-3.0-or-later with the explicit
permission to use and distribute the generated code (the expanded
macro) under terms of your choice.
Independent tests (etest-tests) are licensed under GPL-3.0-or-later.