Refactoring tests and added more business rules