about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAkihiko Odaki (@fn_aki@pawoo.net) <akihiko.odaki.4i@stu.hosei.ac.jp>2017-06-19 18:31:37 +0900
committerEugen Rochko <eugen@zeonfederated.com>2017-06-19 11:31:37 +0200
commit3d13f6ea0c6cf0022c9fa57c570f93462647dd12 (patch)
treec9413ec4c73caadc857cf44c50c41edfbd1bf2aa
parent6eefccdacc96161d06ce38070002b7d0ce582aee (diff)
Cover Block more (#3837)
-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