From 422e4d897bf77bcf2f30e04f7b537608e4674002 Mon Sep 17 00:00:00 2001
From: Akihiko Odaki <akihiko.odaki.4i@stu.hosei.ac.jp>
Date: Mon, 22 May 2017 23:29:48 +0900
Subject: [PATCH] Cover AccountFollowController more in spec (#3227)

---
 .../account_follow_controller_spec.rb         | 19 +++++++++++++------
 1 file changed, 13 insertions(+), 6 deletions(-)

diff --git a/spec/controllers/account_follow_controller_spec.rb b/spec/controllers/account_follow_controller_spec.rb
index b0e646c1fb..ac15499be2 100644
--- a/spec/controllers/account_follow_controller_spec.rb
+++ b/spec/controllers/account_follow_controller_spec.rb
@@ -7,16 +7,23 @@ describe AccountFollowController 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(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
 
-      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))