End of TDD by Example: Part II, chapter 5: Dealing With Failure.