Refactor with macros and shared examples
Add shared example for user_controller spec