about summary refs log tree commit diff
path: root/spec
diff options
context:
space:
mode:
Diffstat (limited to 'spec')
-rw-r--r--spec/models/block_spec.rb25
1 files changed, 25 insertions, 0 deletions
diff --git a/spec/models/block_spec.rb b/spec/models/block_spec.rb
index cabb41c3e..acbdc77f5 100644
--- a/spec/models/block_spec.rb
+++ b/spec/models/block_spec.rb
@@ -19,4 +19,29 @@ RSpec.describe Block, type: :model do
       expect(block).to model_have_error_on_field(:target_account)
     end
   end
+
+  it 'removes blocking cache after creation' do
+    account = Fabricate(:account)
+    target_account = Fabricate(:account)
+    Rails.cache.write("exclude_account_ids_for:#{account.id}", [])
+    Rails.cache.write("exclude_account_ids_for:#{target_account.id}", [])
+
+    Block.create!(account: account, target_account: target_account)
+
+    expect(Rails.cache.exist?("exclude_account_ids_for:#{account.id}")).to eq false
+    expect(Rails.cache.exist?("exclude_account_ids_for:#{target_account.id}")).to eq false
+  end
+
+  it 'removes blocking cache after destruction' do
+    account = Fabricate(:account)
+    target_account = Fabricate(:account)
+    block = Block.create!(account: account, target_account: target_account)
+    Rails.cache.write("exclude_account_ids_for:#{account.id}", [target_account.id])
+    Rails.cache.write("exclude_account_ids_for:#{target_account.id}", [account.id])
+
+    block.destroy!
+
+    expect(Rails.cache.exist?("exclude_account_ids_for:#{account.id}")).to eq false
+    expect(Rails.cache.exist?("exclude_account_ids_for:#{target_account.id}")).to eq false
+  end
 end