Sean Kelly wrote:
On May 3, 2010, at 1:45 PM, Walter Bright wrote:
Sean Kelly wrote:
I tried modifying the unit testing code to eat the exception and continue, but
then it simply prints:
test.d(9): unittest 1
test.d(10): unittest 2
So the best we can currently do is move on to test another module--there's no
way to execute the remaining unit tests within the module. Could we perhaps
have an array of unittests within the ModuleInfo struct instead of just a
single function pointer? Or is the rationale really that if implementation
code throws, the app should assume it's in an invalid state and exit?
It's simpler than that. The idea is if an assert fails within a unittest block,
the unittests should continue. If an assert fails outside, then the app should
stop.
So let's say I'm doing boundary testing for code that has 'in' contracts. I
guess if I want to test that it rejects out of range values then I should
explicitly catch the AssertError?
I'd say yes, though note that the d_assertm() function cannot return, as
the code gen for it assumes it never does.
_______________________________________________
dmd-internals mailing list
[email protected]
http://lists.puremagic.com/mailman/listinfo/dmd-internals