Test driven development part 1