Thursday, May 14, 2009

Test::Able v0.07

The last time I posted about Test::Able it was about the 0.05 release.
Version 0.07 just made it out the door. Some of the more interesting changes since 0.05 are:

  • more documentation

  • added exception handling

  • added Test::Able::Role

Of course the changelog has more.

I'll just say a few things about the exception handling.

The design goal was to try to capture the few broad, and common, usage patterns while still having the ability to be more specific when desired.

The Broad

So there are three exception handling modes. The default of which is to die as usual. The other two offer a way to silently ignore yet record exceptions. And one of them affords a more sane way to cleanup after a disaster.

The Specific

Since all exceptions are stored when silently ignoring them anything can observe and react to them. Also, Test::Able::FatalException, as the name might hint at, provides a way to really die when all other exceptions would be rendered non-fatal.

This is all documented in Test::Able::Role::Meta::Class under on_method_exception and method_exceptions. It might help to look at the exception tests as well.