working on BDD and TDD