unit-threaded v0.3.1, dtest v0.2.0 and dub test
Atila Neves
atila.neves at gmail.com
Mon Mar 17 11:25:56 PDT 2014
unit-threaded is now at version 0.3.1:
https://github.com/atilaneves/unit-threaded
http://code.dlang.org/packages/unit-threaded
New @SingleThreaded UDA causes all tests with it in a module to
run sequentially. Sometimes you're testing code that changes
global state or isn't thread-safe in some other way and it comes
in handy.
The package.json now works with `dub test`, which makes the
framework test itself and run the passing examples source file.
As before, the only "problem" is generating the file listing all
modules to be tested, which leads me to dtest version 0.2.0:
https://github.com/atilaneves/dtest
http://code.dlang.org/packages/dtest
It used to be in a subdirectory of unit-threaded but now is its
own package. Most of the reason why was to get dub to use it to
automatically generate the main source file via `dub fetch dtest;
dub run dtest`. Unfortunately due to how the CWD works with `dub
run` that doesn't work right now but it will in the future.
dtest can be run without arguments, it will run `dub fetch
unit-threaded` and use rdmd to execute every (unit-threaded) test
it finds in a directory called `tests` by default. It can also be
used to generate the main source file that includes all testable
modules. Right now that means that if using an alternate build
system such as CMake it can be run from there and have all tests
be executed. If using dub, it can be used to update the file (by
using dtest -f `my_main_test_file.d`) whenever a test module is
added or deleted and `dub test` can then run it.
Atila
More information about the Digitalmars-d-announce
mailing list