It was merge when it needed to be deep_merge. And added some tests
This commit is contained in:
		
							parent
							
								
									61ed133fea
								
							
						
					
					
						commit
						4bc625166e
					
				
					 3 changed files with 24 additions and 2 deletions
				
			
		|  | @ -21,6 +21,6 @@ class Api::V1::Accounts::RelationshipsController < Api::BaseController | ||||||
|   end |   end | ||||||
| 
 | 
 | ||||||
|   def account_ids |   def account_ids | ||||||
|     @_account_ids ||= Array(params[:id]).map(&:to_i) |     Array(params[:id]).map(&:to_i) | ||||||
|   end |   end | ||||||
| end | end | ||||||
|  |  | ||||||
|  | @ -45,7 +45,7 @@ class AccountRelationshipsPresenter | ||||||
|       maps_for_account = Rails.cache.read("relationship:#{@current_account_id}:#{account_id}") |       maps_for_account = Rails.cache.read("relationship:#{@current_account_id}:#{account_id}") | ||||||
| 
 | 
 | ||||||
|       if maps_for_account.is_a?(Hash) |       if maps_for_account.is_a?(Hash) | ||||||
|         @cached.merge!(maps_for_account) |         @cached.deep_merge!(maps_for_account) | ||||||
|       else |       else | ||||||
|         @uncached_account_ids << account_id |         @uncached_account_ids << account_id | ||||||
|       end |       end | ||||||
|  |  | ||||||
|  | @ -66,6 +66,28 @@ describe Api::V1::Accounts::RelationshipsController do | ||||||
|         expect(json.second[:requested]).to be false |         expect(json.second[:requested]).to be false | ||||||
|         expect(json.second[:domain_blocking]).to be false |         expect(json.second[:domain_blocking]).to be false | ||||||
|       end |       end | ||||||
|  | 
 | ||||||
|  |       it 'returns JSON with correct data on cached requests too' do | ||||||
|  |         get :index, params: { id: [simon.id] } | ||||||
|  | 
 | ||||||
|  |         json = body_as_json | ||||||
|  | 
 | ||||||
|  |         expect(json).to be_a Enumerable | ||||||
|  |         expect(json.first[:following]).to be true | ||||||
|  |         expect(json.first[:showing_reblogs]).to be true | ||||||
|  |       end | ||||||
|  | 
 | ||||||
|  |       it 'returns JSON with correct data after change too' do | ||||||
|  |         user.account.unfollow!(simon) | ||||||
|  | 
 | ||||||
|  |         get :index, params: { id: [simon.id] } | ||||||
|  | 
 | ||||||
|  |         json = body_as_json | ||||||
|  | 
 | ||||||
|  |         expect(json).to be_a Enumerable | ||||||
|  |         expect(json.first[:following]).to be false | ||||||
|  |         expect(json.first[:showing_reblogs]).to be false | ||||||
|  |       end | ||||||
|     end |     end | ||||||
|   end |   end | ||||||
| end | end | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue