Policies specs (#23924)

This commit is contained in:
Matt Jankowski 2023-03-04 10:57:22 -05:00 committed by GitHub
parent 6a57c42316
commit 00eb2269b6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
17 changed files with 393 additions and 3 deletions

View file

@ -116,4 +116,44 @@ RSpec.describe AccountPolicy do
end
end
end
permissions :review? do
context 'admin' do
it 'permits' do
expect(subject).to permit(admin)
end
end
context 'not admin' do
it 'denies' do
expect(subject).to_not permit(john)
end
end
end
permissions :destroy? do
context 'admin' do
context 'with a temporarily suspended account' do
before { allow(alice).to receive(:suspended_temporarily?).and_return(true) }
it 'permits' do
expect(subject).to permit(admin, alice)
end
end
context 'with a not temporarily suspended account' do
before { allow(alice).to receive(:suspended_temporarily?).and_return(false) }
it 'denies' do
expect(subject).to_not permit(admin, alice)
end
end
end
context 'not admin' do
it 'denies' do
expect(subject).to_not permit(john, alice)
end
end
end
end