diff options
Diffstat (limited to 'spec')
| -rw-r--r-- | spec/features/lines_spec.rb | 5 | ||||
| -rw-r--r-- | spec/features/users/connection_spec.rb | 0 | ||||
| -rw-r--r-- | spec/policies/boiv_policy_spec.rb | 12 | ||||
| -rw-r--r-- | spec/support/pundit/policies.rb | 7 |
4 files changed, 20 insertions, 4 deletions
diff --git a/spec/features/lines_spec.rb b/spec/features/lines_spec.rb index e7e1e601c..a55f30ebc 100644 --- a/spec/features/lines_spec.rb +++ b/spec/features/lines_spec.rb @@ -1,7 +1,4 @@ -# -*- coding: utf-8 -*- -require 'spec_helper' - -describe "Lines", :type => :feature do +describe "Lines", type: :feature do login_user let(:line_referential) { create :line_referential } diff --git a/spec/features/users/connection_spec.rb b/spec/features/users/connection_spec.rb new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/spec/features/users/connection_spec.rb diff --git a/spec/policies/boiv_policy_spec.rb b/spec/policies/boiv_policy_spec.rb index bf09cdcd9..14f88e416 100644 --- a/spec/policies/boiv_policy_spec.rb +++ b/spec/policies/boiv_policy_spec.rb @@ -12,4 +12,16 @@ RSpec.describe BoivPolicy, type: :policy do it_behaves_like 'permitted policy and same organisation', 'boiv:read-offer' end + permissions :boiv? do + it 'no permission starting with boiv:. → denies' do + expect_it.not_to permit(user_context, referential) + end + + with_user_permission 'boiv:anything' do + it{ expect_it.to permit(user_context, referential) } + end + with_user_permission 'boiv:' do + it{ expect_it.not_to permit(user_context, referential) } + end + end end diff --git a/spec/support/pundit/policies.rb b/spec/support/pundit/policies.rb index 637a2a528..e18309226 100644 --- a/spec/support/pundit/policies.rb +++ b/spec/support/pundit/policies.rb @@ -16,6 +16,7 @@ module Support for_user.permissions ||= [] for_user.permissions += permissions.flatten end + end module PoliciesMacros @@ -27,6 +28,12 @@ module Support let( :user ) { create :user } end end + def with_user_permission(permission, &blk) + it "with user permission #{permission.inspect}" do + add_permissions(permission, for_user: user) + blk.() + end + end end end end |
