refactored reservation_spec and user_spec