Feature/refactoring spec