Domanda di colloquio di Thoughtworks

Coding challenge. Use OOP and TDD to succeed.