Cover AccountUnfollowController more in spec (#3228)

signup-info-prompt
Akihiko Odaki 2017-05-23 00:58:49 +09:00 committed by Eugen Rochko
parent 7966d3a872
commit b9e8ffbd12
1 changed files with 13 additions and 6 deletions

View File

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