about summary refs log tree commit diff
path: root/spec/services
diff options
context:
space:
mode:
authorEugen Rochko <eugen@zeonfederated.com>2018-08-20 13:28:05 +0200
committerGitHub <noreply@github.com>2018-08-20 13:28:05 +0200
commit6226aa83d7eb0e03cc7d577eee1fe129cf0f36fc (patch)
tree8fde90bb7c1ca11141caf4a6af664b4ef2cb33b7 /spec/services
parent25f6f41052b52a765a74e9e16d7411750ae46221 (diff)
Increase reach of Delete->Actor activities (#8305)
Fix #7316
Diffstat (limited to 'spec/services')
-rw-r--r--spec/services/suspend_account_service_spec.rb13
1 files changed, 13 insertions, 0 deletions
diff --git a/spec/services/suspend_account_service_spec.rb b/spec/services/suspend_account_service_spec.rb
index fd303a9d5..8a5bd3301 100644
--- a/spec/services/suspend_account_service_spec.rb
+++ b/spec/services/suspend_account_service_spec.rb
@@ -2,6 +2,11 @@ require 'rails_helper'
 
 RSpec.describe SuspendAccountService, type: :service do
   describe '#call' do
+    before do
+      stub_request(:post, "https://alice.com/inbox").to_return(status: 201)
+      stub_request(:post, "https://bob.com/inbox").to_return(status: 201)
+    end
+
     subject do
       -> { described_class.new.call(account) }
     end
@@ -14,6 +19,8 @@ RSpec.describe SuspendAccountService, type: :service do
     let!(:active_relationship) { Fabricate(:follow, account: account) }
     let!(:passive_relationship) { Fabricate(:follow, target_account: account) }
     let!(:subscription) { Fabricate(:subscription, account: account) }
+    let!(:remote_alice) { Fabricate(:account, inbox_url: 'https://alice.com/inbox', protocol: :activitypub) }
+    let!(:remote_bob) { Fabricate(:account, inbox_url: 'https://bob.com/inbox', protocol: :activitypub) }
 
     it 'deletes associated records' do
       is_expected.to change {
@@ -29,5 +36,11 @@ RSpec.describe SuspendAccountService, type: :service do
         ].map(&:count)
       }.from([1, 1, 1, 1, 1, 1, 1, 1]).to([0, 0, 0, 0, 0, 0, 0, 0])
     end
+
+    it 'sends a delete actor activity to all known inboxes' do
+      subject.call
+      expect(a_request(:post, "https://alice.com/inbox")).to have_been_made.once
+      expect(a_request(:post, "https://bob.com/inbox")).to have_been_made.once
+    end
   end
 end