Files
old-holivud2/spec/policies/account_policy_spec.rb
2020-05-31 22:38:19 +02:00

46 lines
1.0 KiB
Ruby

require "rails_helper"
RSpec.describe AccountPolicy do
subject { described_class }
let(:user_context) { UserContext.new(user, build(:account)) }
context "when user is admin" do
let(:user) { create(:user, :admin) }
permissions :create? do
it { is_expected.to permit(user_context, :create) }
end
permissions :show? do
it { is_expected.to permit(user_context, :show) }
end
permissions :update? do
it { is_expected.to permit(user_context, :show) }
end
permissions ".scope" do
subject { Pundit.policy_scope!(user, Account) }
it { is_expected.not_to be_empty }
end
end
context "when user is NOT admin" do
let(:user) { create(:user, :associate) }
permissions :create? do
it { is_expected.not_to permit(user_context, :create) }
end
permissions :show? do
it { is_expected.not_to permit(user_context, :show) }
end
permissions ".scope" do
subject { Pundit.policy_scope!(user, Account) }
it { is_expected.to eq(user.accounts) }
end
end
end