Cover AccountFollowController more in spec (#3227)

This commit is contained in:
Akihiko Odaki 2017-05-22 23:29:48 +09:00 committed by Eugen Rochko
parent cb2707776f
commit 422e4d897b

View File

@ -7,16 +7,23 @@ describe AccountFollowController 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(FollowService).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(FollowService).not_to receive(:new)
end end
it 'redirects to account path' do it 'redirects to account path' do
service = double sign_in(user)
allow(FollowService).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))