Refactored and created complete test suite with TDD :relaxed: