Documentation
README
test-driven-development — red, green, refactor
The rule: no production code without a failing test first. A test written after the code passes immediately — and a test you never saw fail proves nothing: it may test the wrong thing, test the implementation instead of the behavior, or miss the exact case you got wrong.
Already wrote code before the test? Stash or delete it, write the test, watch it fail, then re-implement. Don't keep it open "as reference" — that is writing tests after, with extra steps.
The cycle
1. RED — write one failing test
One behavior per test, named for the behavior
("rejects a receipt line with zero quantity", not "test1"). Test real code;
mock only what you cannot run (network, clock). Copy setup from a sibling test
file in the same package.
This is the opening of the README. Read the full README on GitHub.