The testing rules I code by:
- will someone else be touching the code? If yes then I TDD
- Am I likely to be touching the code six months from now? If yes then I at least document with tests.
- Is it a crucial piece of code who's specs I want documented? If yes then I document with tests.