Sean Kelly, el 15 de julio a las 19:52 me escribiste:
> On Jul 15, 2010, at 5:04 PM, Andrei Alexandrescu wrote:
>
> > On 07/15/2010 06:59 PM, Benjamin Shropshire wrote:
> >> Beside, I don't now nor will I ever care about ANYTHING after the first
> >> failed assert in any given block.
> >
> > Walter, it would be great if you could substantiate some concrete examples
> > by pasting from your tests. Thanks!
>
> I've been thinking about this, and I realized that I'd really like different
> behaviors for different types of tests. For testing stateless code, the most
> convenient thing would be Walter's behavior. For stateful code, throwing on
> error is preferable, since once the state is invalid further testing is
> useless. I wondered whether one could argue that with testing stateful code,
> when something fails an exception would likely be thrown from inside the
> object and abort the test anyway, but I think this isn't true. For boundary
> testing, I'd typically want to ensure that AssertErrors were thrown when a
> contract was violated, etc, so I'm still likely to do something like:
>
> unittest {
> auto o = MyObject;
> assert(throws!AssertError(o.divide(1,0)));
> ...
> }
>
> It wouldn't be terribly onerous to me to break stateless tests into multiple
> unittest blocks, but it's probably more readable to simply have:
>
> unittest {
> verify(sort("bac") == "abc");
> verify(sort("bba") == "abb");
> ...
> }
check() check() check()! =)
--
Leandro Lucarella (AKA luca) http://llucax.com.ar/
----------------------------------------------------------------------
GPG Key: 5F5A8D05 (F8CD F9A7 BF00 5431 4145 104C 949E BFB6 5F5A 8D05)
----------------------------------------------------------------------
No existiría el sonido del mar si faltara en la vida oreja y caracol.
-- Ricardo Vaporeso. Cosquín, 1908.
_______________________________________________
phobos mailing list
[email protected]
http://lists.puremagic.com/mailman/listinfo/phobos