Change interaction modal in web UI (#26075)
Co-authored-by: Eugen Rochko <eugen@zeonfederated.com>
This commit is contained in:
		
							parent
							
								
									1e4ccc655a
								
							
						
					
					
						commit
						b4e739ff0f
					
				
					 111 changed files with 682 additions and 1091 deletions
				
			
		|  | @ -24,7 +24,7 @@ describe AuthorizeInteractionsController do | |||
|       it 'renders error without acct param' do | ||||
|         get :show | ||||
| 
 | ||||
|         expect(response).to render_template(:error) | ||||
|         expect(response).to have_http_status(404) | ||||
|       end | ||||
| 
 | ||||
|       it 'renders error when account cant be found' do | ||||
|  | @ -34,7 +34,7 @@ describe AuthorizeInteractionsController do | |||
| 
 | ||||
|         get :show, params: { acct: 'acct:missing@hostname' } | ||||
| 
 | ||||
|         expect(response).to render_template(:error) | ||||
|         expect(response).to have_http_status(404) | ||||
|         expect(service).to have_received(:call).with('missing@hostname') | ||||
|       end | ||||
| 
 | ||||
|  | @ -46,7 +46,7 @@ describe AuthorizeInteractionsController do | |||
| 
 | ||||
|         get :show, params: { acct: 'http://example.com' } | ||||
| 
 | ||||
|         expect(response).to have_http_status(200) | ||||
|         expect(response).to have_http_status(302) | ||||
|         expect(assigns(:resource)).to eq account | ||||
|       end | ||||
| 
 | ||||
|  | @ -58,52 +58,9 @@ describe AuthorizeInteractionsController do | |||
| 
 | ||||
|         get :show, params: { acct: 'acct:found@hostname' } | ||||
| 
 | ||||
|         expect(response).to have_http_status(200) | ||||
|         expect(response).to have_http_status(302) | ||||
|         expect(assigns(:resource)).to eq account | ||||
|       end | ||||
|     end | ||||
|   end | ||||
| 
 | ||||
|   describe 'POST #create' do | ||||
|     describe 'when signed out' do | ||||
|       it 'redirects to sign in page' do | ||||
|         post :create | ||||
| 
 | ||||
|         expect(response).to redirect_to(new_user_session_path) | ||||
|       end | ||||
|     end | ||||
| 
 | ||||
|     describe 'when signed in' do | ||||
|       let!(:user) { Fabricate(:user) } | ||||
|       let(:account) { user.account } | ||||
| 
 | ||||
|       before do | ||||
|         sign_in(user) | ||||
|       end | ||||
| 
 | ||||
|       it 'shows error when account not found' do | ||||
|         service = instance_double(ResolveAccountService) | ||||
| 
 | ||||
|         allow(ResolveAccountService).to receive(:new).and_return(service) | ||||
|         allow(service).to receive(:call).with('user@hostname').and_return(nil) | ||||
| 
 | ||||
|         post :create, params: { acct: 'acct:user@hostname' } | ||||
| 
 | ||||
|         expect(response).to render_template(:error) | ||||
|       end | ||||
| 
 | ||||
|       it 'follows account when found' do | ||||
|         target_account = Fabricate(:account) | ||||
|         service = instance_double(ResolveAccountService) | ||||
| 
 | ||||
|         allow(ResolveAccountService).to receive(:new).and_return(service) | ||||
|         allow(service).to receive(:call).with('user@hostname').and_return(target_account) | ||||
| 
 | ||||
|         post :create, params: { acct: 'acct:user@hostname' } | ||||
| 
 | ||||
|         expect(account.following?(target_account)).to be true | ||||
|         expect(response).to render_template(:success) | ||||
|       end | ||||
|     end | ||||
|   end | ||||
| end | ||||
|  |  | |||
		Reference in a new issue