Rubies:

I don't like assert_raise because the first thing I wanted to check was the
e.message was correct. So I wrote assert_raise_message, and wrote that up
as a tutorial on how to use assert_raise in general:

http://www.oreillynet.com/onlamp/blog/2007/07/assert_raise_on_ruby_dont_just.html

AKA: http://tinyurl.com/23tlu5

assert_raise_message works great for test-firsting new assertions, because
assertions should have comprehensive (and comprehensible) diagnostics. All
new assertions should come with tests that they raise the correct messages.

-- 
 Phlip
 http://www.oreilly.com/catalog/9780596510657/
 ^ assert_xpath
 http://tinyurl.com/23tlu5  <-- assert_raise_message