[dmd-internals] changeset 455
Sean Kelly
sean at invisibleduck.org
Mon May 3 14:13:54 PDT 2010
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?
More information about the dmd-internals
mailing list