acceptance test driven development examples