about summary refs log tree commit diff
path: root/spec/policies/status_policy_spec.rb
diff options
context:
space:
mode:
authorClaire <claire.github-309c@sitedethib.com>2022-02-10 19:09:27 +0100
committerClaire <claire.github-309c@sitedethib.com>2022-02-10 19:09:27 +0100
commitf1a6f9062e00c0651680bf4d5d750ec0b078ac5a (patch)
tree30d40f0b5df56e955f80a91ae3b44090bd918ed9 /spec/policies/status_policy_spec.rb
parentd602c92b310545eb733a58caed49717341abe27c (diff)
parent3dc1e3cfc3928ce709c3e60e98ecbd1edd6e2a7d (diff)
Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `app/controllers/api/v1/statuses_controller.rb`:
  Upstream moved things around in a place where glitch-soc had support for
  an extra parameter (`content_type`).
  Follow upstream but reintroduce `content_type`.
Diffstat (limited to 'spec/policies/status_policy_spec.rb')
-rw-r--r--spec/policies/status_policy_spec.rb16
1 files changed, 15 insertions, 1 deletions
diff --git a/spec/policies/status_policy_spec.rb b/spec/policies/status_policy_spec.rb
index 8bce29cad..865c693aa 100644
--- a/spec/policies/status_policy_spec.rb
+++ b/spec/policies/status_policy_spec.rb
@@ -137,7 +137,7 @@ RSpec.describe StatusPolicy, type: :model do
     end
   end
 
-  permissions :index?, :update? do
+  permissions :index? do
     it 'grants access if staff' do
       expect(subject).to permit(admin.account)
     end
@@ -146,4 +146,18 @@ RSpec.describe StatusPolicy, type: :model do
       expect(subject).to_not permit(alice)
     end
   end
+
+  permissions :update? do
+    it 'grants access if staff' do
+      expect(subject).to permit(admin.account, status)
+    end
+
+    it 'grants access if owner' do
+      expect(subject).to permit(status.account, status)
+    end
+
+    it 'denies access unless staff' do
+      expect(subject).to_not permit(bob, status)
+    end
+  end
 end