Am 14.04.2011 17:47, schrieb Steven Schveighoffer: > On Thu, 14 Apr 2011 11:28:39 -0400, spir <denis.s...@gmail.com> wrote: > >> On 04/14/2011 04:03 PM, Steven Schveighoffer wrote: >>> Sometimes, I worry that my unit tests or asserts aren't running. >>> Every once in >>> a while, I have to change one to fail to make sure that code is >>> compiling (this >>> is especially true when I'm doing version statements or templates). >>> It would >>> be nice if there was a -assertprint mode which showed asserts >>> actually running >>> (only for the module compiled with that switch, of course). >> >> Man, I'm very pleased to read someone else advocating for optionally >> verbose assertions. >> This could use 2 arguments instead of a predicate: >> assert(expressions, value); >> Example use: > > [snip] > > I don't think we can change assert syntax now. What I was looking was > for something more like: > > assert(x == y); > > prints out > > "asserting x == y: true" > > for asserts that pass when you have the 'verbose assert' flag turned > on. This should be easy to do in the compiler by just translating > > assert(expr); > > to something like: > > auto result = evaluateAssert(expr); > print("asserting expr: ", result ? "true" : "false"); > assert(result); > > -Steve
Another possibility are named unittests and printing out "running test 'foobar' was successful". One message for every assert is too verbose IMHO. Cheers, - Daniel