Sha256: bc437ed8af97a7a5c712b67238ba327b939c7da8f36cfa9d0ca7daebb2e6c33a

Contents?: true

Size: 741 Bytes

Versions: 3

Compression:

Stored size: 741 Bytes

Contents

describe ArticleCategoryPolicy do
  subject { described_class.new(user, article_category) }

  let(:article_category) { FactoryBot.create(:article_category) }

  context "being a visitor" do
    let(:user) { FactoryBot.create(:user) }

    it { is_expected.to(permit_action(:index)) }
    it { is_expected.to(permit_action(:show)) }
    it { is_expected.to(forbid_actions(%i[create update delete])) }
  end

  context "being a staff" do
    let(:user) { FactoryBot.create(:user, roles_mask: 3) }

    it { is_expected.to(permit_actions(%i[create update])) }
  end

  context "being an administrator" do
    let(:user) { FactoryBot.create(:user, roles_mask: 4) }

    it { is_expected.to(permit_actions(%i[create update delete])) }
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
souls-0.24.1 apps/api/spec/policies/article_category_policy_spec.rb
souls-0.22.8 hoy/spec/policies/article_category_policy_spec.rb
souls-0.22.7 hoy/spec/policies/article_category_policy_spec.rb