diff options
-rw-r--r-- | spec/controllers/account_unfollow_controller_spec.rb | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/spec/controllers/account_unfollow_controller_spec.rb b/spec/controllers/account_unfollow_controller_spec.rb index a6c86d4b9..bdebcfa94 100644 --- a/spec/controllers/account_unfollow_controller_spec.rb +++ b/spec/controllers/account_unfollow_controller_spec.rb @@ -7,16 +7,23 @@ describe AccountUnfollowController do let(:alice) { Fabricate(:account, username: 'alice') } describe 'POST #create' do - before do - sign_in(user) - end + let(:service) { double } - it 'redirects to account path' do - service = double + subject { post :create, params: { account_username: alice.username } } + + before do allow(UnfollowService).to receive(:new).and_return(service) allow(service).to receive(:call) + end + + it 'does not create for user who is not signed in' do + subject + expect(UnfollowService).not_to receive(:new) + end - post :create, params: { account_username: alice.username } + it 'redirects to account path' do + sign_in(user) + subject expect(service).to have_received(:call).with(user.account, alice) expect(response).to redirect_to(account_path(alice)) |