about summary refs log tree commit diff
path: root/spec/services/block_domain_from_account_service_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/services/block_domain_from_account_service_spec.rb')
-rw-r--r--spec/services/block_domain_from_account_service_spec.rb19
1 files changed, 19 insertions, 0 deletions
diff --git a/spec/services/block_domain_from_account_service_spec.rb b/spec/services/block_domain_from_account_service_spec.rb
new file mode 100644
index 000000000..e7ee34372
--- /dev/null
+++ b/spec/services/block_domain_from_account_service_spec.rb
@@ -0,0 +1,19 @@
+require 'rails_helper'
+
+RSpec.describe BlockDomainFromAccountService do
+  let!(:wolf) { Fabricate(:account, username: 'wolf', domain: 'evil.org') }
+  let!(:alice) { Fabricate(:account, username: 'alice') }
+
+  subject { BlockDomainFromAccountService.new }
+
+  it 'creates domain block' do
+    subject.call(alice, 'evil.org')
+    expect(alice.domain_blocking?('evil.org')).to be true
+  end
+
+  it 'purge followers from blocked domain' do
+    wolf.follow!(alice)
+    subject.call(alice, 'evil.org')
+    expect(wolf.following?(alice)).to be false
+  end
+end