On Monday, 21 October 2013 at 12:24:18 UTC, Jonathan M Davis
I know that you can extend the built-in facilities by
overriding how assert
works and the like.
Overriding assert is dangerous because changes behavior of
program itself and lacks context data. Own test runner
implemented using __traits(getUnittests) is perfectly safe.
since it's frequently for nonsense like making it so that the
after an assertion fails (which is outright bad practice IMHO),
It is absolutely necessary feature in any big project of you want
to keep reasonable edit-build cycle times. Tests are always
hierarchical naturally, there is no reason to stop the world if
completely unrelated ones fail.
I have a very
low opinion of attempts to override the built-in assert for
You are right here but it is not needed anymore.
But I really don't see any problem with the built-in
unit tests facilities and would expect to be against any such
There is nothing wrong with built-in ones, just some higher-level
tools on top of them are lacking.
But I guess
that we'll just have to wait and see what gets submitted for
Exactly, lets argue in time ;)