1
0
Fork 0

Add specs for MembershipAppPolicy

This commit is contained in:
Alex Kotov 2018-12-13 10:16:24 +05:00
parent 84ae1cdce3
commit 22addd9770
No known key found for this signature in database
GPG Key ID: 4E831250F47DE154
1 changed files with 33 additions and 1 deletions

View File

@ -3,5 +3,37 @@
require 'rails_helper'
RSpec.describe MembershipAppPolicy do
pending "add some examples to (or delete) #{__FILE__}"
subject { described_class.new account, record }
let :resolved_scope do
described_class::Scope.new(account, MembershipApp.all).resolve
end
let(:record) { create :membership_app, account: owner }
let!(:owner_record) { create :membership_app, account: owner }
let!(:other_record) { create :membership_app }
let(:owner) { create %i[guest_account usual_account].sample }
let(:account) { owner }
context 'when owner is authenticated' do
it { is_expected.to permit_action :show }
it { is_expected.to permit_new_and_create_actions }
it { is_expected.to forbid_actions %i[index destroy] }
it { is_expected.to forbid_edit_and_update_actions }
specify { expect(resolved_scope).to be_empty }
end
for_account_types nil, :guest, :usual, :superuser do
it { is_expected.to permit_new_and_create_actions }
it { is_expected.to forbid_actions %i[index show destroy] }
it { is_expected.to forbid_edit_and_update_actions }
specify { expect(resolved_scope).to be_empty }
end
end