TDD by example