Advertisement
Guest User

Untitled

a guest
Aug 17th, 2016
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.19 KB | None | 0 0
  1. def update
  2. user = User.find(params[:id])
  3. authorize user
  4.  
  5. if user.update_with_password(user_params)
  6. head :no_content
  7. else
  8. render json: { errors: user.errors.full_messages }, status: 422
  9. end
  10. end
  11.  
  12. require 'rails_helper'
  13.  
  14. describe 'PUT /api/users/:id' do
  15. let(:current_user) { create(:user) }
  16. let!(:user_1) { create(:user) }
  17. let!(:token) { http_authorization_header(current_user) }
  18.  
  19. context 'when authorize is successfull' do
  20. context 'when params are invalid' do
  21. let(:params) do
  22. {
  23. user: {
  24. first_name: nil,
  25. last_name: nil,
  26. password: nil,
  27. password_confirmation: nil,
  28. current_password: nil
  29. }
  30. }
  31. end
  32.  
  33. before do
  34. expect_any_instance_of(Api::UsersController).to receive(:authorize).with(user_1))
  35.  
  36. put api_user_path(user_1), params, token
  37. end
  38.  
  39. it 'returns 200 http status code' do
  40. expect(response.status).to eq 200
  41. end
  42. end
  43. end
  44. end
  45.  
  46. expect_any_instance_of(Api::UsersController).to receive(:authorize).with(user_1))
  47.  
  48. expect_any_instance_of(Api::UsersController).to receive(:authorize).with(create(:user))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement