practise tdd use a series of requirements