Integration testing, unit-threaded, and threads

drug drug2004 at bk.ru
Thu Apr 23 11:41:40 UTC 2020


23.04.2020 14:01, Russel Winder пишет:
> Hi,
> 
> I need to start a process before the tests run, and terminate it after
> the tests run. A module with a shared static constructor and shared
> static destructor sounds like the way of doing this since the
> constructor is run before main and the destructor after main. However I
> am using unit-threaded, not for the threads but because it is great for
> a whole load of other reasons. In fact the threads are becoming a
> problem.
> 
> As far as I can tell main is terminating before all the tests are
> complete which means the shared static destructor is executing before
> all the tests are complete.

I would use Fixture (a class derived form TestCase) here and derive all 
tests from it. It allows you to start your process before all test in 
`setup()` Fixture member and terminate it after in `` and probably lets 
you run the tests simultaneously.

> To test this hypothesis I want to run single threaded. unit-threaded
> says this is possible using a command line option -s. The question is
> which command line? dub test doesn't accept it and neither does the dub
> command creating ut_main.d
> 

Did you try `dub test -- -s`?


More information about the Digitalmars-d-learn mailing list