Spec AccountControllerConcern (#3349)
This commit is contained in:
		
							parent
							
								
									34157d118c
								
							
						
					
					
						commit
						11e5c965c3
					
				
							
								
								
									
										45
									
								
								spec/controllers/concerns/account_controller_concern_spec.rb
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										45
									
								
								spec/controllers/concerns/account_controller_concern_spec.rb
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,45 @@ | ||||
| # frozen_string_literal: true | ||||
| 
 | ||||
| require 'rails_helper' | ||||
| 
 | ||||
| describe ApplicationController, type: :controller do | ||||
|   controller do | ||||
|     include AccountControllerConcern | ||||
| 
 | ||||
|     def success | ||||
|       head 200 | ||||
|     end | ||||
|   end | ||||
| 
 | ||||
|   before do | ||||
|     routes.draw { get 'success' => 'anonymous#success' } | ||||
|   end | ||||
| 
 | ||||
|   context 'when account is suspended' do | ||||
|     it 'returns http gone' do | ||||
|       account = Fabricate(:account, suspended: true) | ||||
|       get 'success', params: { account_username: account.username } | ||||
|       expect(response).to have_http_status(410) | ||||
|     end | ||||
|   end | ||||
| 
 | ||||
|   context 'when account is not suspended' do | ||||
|     it 'assigns @account' do | ||||
|       account = Fabricate(:account) | ||||
|       get 'success', params: { account_username: account.username } | ||||
|       expect(assigns(:account)).to eq account | ||||
|     end | ||||
| 
 | ||||
|     it 'sets link headers' do | ||||
|       account = Fabricate(:account, username: 'username') | ||||
|       get 'success', params: { account_username: 'username' } | ||||
|       expect(response.headers['Link'].to_s).to eq '<http://test.host/.well-known/webfinger?resource=acct%3Ausername%40cb6e6126.ngrok.io>; rel="lrdd"; type="application/xrd+xml", <http://test.host/users/username.atom>; rel="alternate"; type="application/atom+xml"' | ||||
|     end | ||||
| 
 | ||||
|     it 'returns http success' do | ||||
|       account = Fabricate(:account) | ||||
|       get 'success', params: { account_username: account.username } | ||||
|       expect(response).to have_http_status(:success) | ||||
|     end | ||||
|   end | ||||
| end | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user