Cover AccountUnfollowController more in spec (#3228)

lolsob-rspec
Akihiko Odaki 2017-05-23 00:58:49 +09:00 committed by Eugen Rochko
parent 323eeb096c
commit 387e8449a8
1 changed files with 13 additions and 6 deletions

View File

@ -7,16 +7,23 @@ describe AccountUnfollowController do
let(:alice) { Fabricate(:account, username: 'alice') }
describe 'POST #create' do
let(:service) { double }
subject { post :create, params: { account_username: alice.username } }
before do
sign_in(user)
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
it 'redirects to account path' do
service = double
allow(UnfollowService).to receive(:new).and_return(service)
allow(service).to receive(:call)
post :create, params: { account_username: alice.username }
sign_in(user)
subject
expect(service).to have_received(:call).with(user.account, alice)
expect(response).to redirect_to(account_path(alice))