Fix POST /api/v1/follows error when already following (#4878)
This commit is contained in:
		
							parent
							
								
									15b886a6f0
								
							
						
					
					
						commit
						c450ddb613
					
				
					 2 changed files with 11 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -10,6 +10,12 @@ class Api::V1::FollowsController < Api::BaseController
 | 
			
		|||
    raise ActiveRecord::RecordNotFound if follow_params[:uri].blank?
 | 
			
		||||
 | 
			
		||||
    @account = FollowService.new.call(current_user.account, target_uri).try(:target_account)
 | 
			
		||||
 | 
			
		||||
    if @account.nil?
 | 
			
		||||
      username, domain = target_uri.split('@')
 | 
			
		||||
      @account         = Account.find_remote!(username, domain)
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
    render json: @account, serializer: REST::AccountSerializer
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -42,5 +42,10 @@ RSpec.describe Api::V1::FollowsController, type: :controller do
 | 
			
		|||
    it 'subscribes to remote hub' do
 | 
			
		||||
      expect(a_request(:post, "https://quitter.no/main/push/hub")).to have_been_made
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
    it 'returns http success if already following, too' do
 | 
			
		||||
      post :create, params: { uri: 'gargron@quitter.no' }
 | 
			
		||||
      expect(response).to have_http_status(:success)
 | 
			
		||||
    end
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		
		Reference in a new issue