about summary refs log tree commit diff
path: root/spec/controllers/api
diff options
context:
space:
mode:
authorClaire <claire.github-309c@sitedethib.com>2021-10-25 21:31:10 +0200
committerGitHub <noreply@github.com>2021-10-25 21:31:10 +0200
commite0f39626973fd9f5cce2d4cd3b166fb47e9c9059 (patch)
treee02d1e9a448960a68652f75baebb5921211ee7a1 /spec/controllers/api
parentc647fa99cab9b9db81d36223cf2c2c27e065b648 (diff)
parenta30ac454b2ceb381c50f5b9323e25817d784a476 (diff)
Merge pull request #1625 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes
Diffstat (limited to 'spec/controllers/api')
-rw-r--r--spec/controllers/api/v1/accounts_controller_spec.rb20
1 files changed, 20 insertions, 0 deletions
diff --git a/spec/controllers/api/v1/accounts_controller_spec.rb b/spec/controllers/api/v1/accounts_controller_spec.rb
index d9ee37ffa..9a5a7c72a 100644
--- a/spec/controllers/api/v1/accounts_controller_spec.rb
+++ b/spec/controllers/api/v1/accounts_controller_spec.rb
@@ -168,6 +168,26 @@ RSpec.describe Api::V1::AccountsController, type: :controller do
     it_behaves_like 'forbidden for wrong scope', 'read:accounts'
   end
 
+  describe 'POST #remove_from_followers' do
+    let(:scopes) { 'write:follows' }
+    let(:other_account) { Fabricate(:user, email: 'bob@example.com', account: Fabricate(:account, username: 'bob')).account }
+
+    before do
+      other_account.follow!(user.account)
+      post :remove_from_followers, params: { id: other_account.id }
+    end
+
+    it 'returns http success' do
+      expect(response).to have_http_status(200)
+    end
+
+    it 'removes the followed relation between user and target user' do
+      expect(user.account.followed_by?(other_account)).to be false
+    end
+
+    it_behaves_like 'forbidden for wrong scope', 'read:accounts'
+  end
+
   describe 'POST #block' do
     let(:scopes) { 'write:blocks' }
     let(:other_account) { Fabricate(:user, email: 'bob@example.com', account: Fabricate(:account, username: 'bob')).account }