diff options
| author | Robert | 2017-09-13 10:28:18 +0200 |
|---|---|---|
| committer | Robert | 2017-09-26 17:05:10 +0200 |
| commit | 353780bc16bb4377cc1eac3c3d677611a9bb6ec7 (patch) | |
| tree | c64325b43aa6845d77d4c50a9a6c401e7b62ccf9 /spec/support | |
| parent | c6de5d6c2e67313e3f36f9b7c2014d1ab7f6c19d (diff) | |
| download | chouette-core-353780bc16bb4377cc1eac3c3d677611a9bb6ec7.tar.bz2 | |
Fixes: #4440@0.5h;
Added Controller Spec
Fixed Older Specs
Diffstat (limited to 'spec/support')
| -rw-r--r-- | spec/support/permissions.rb | 3 | ||||
| -rw-r--r-- | spec/support/pundit/policies.rb | 17 | ||||
| -rw-r--r-- | spec/support/pundit/shared_examples.rb | 8 |
3 files changed, 15 insertions, 13 deletions
diff --git a/spec/support/permissions.rb b/spec/support/permissions.rb index baf537da8..13666aca3 100644 --- a/spec/support/permissions.rb +++ b/spec/support/permissions.rb @@ -8,7 +8,7 @@ module Support private def _destructive_permissions - _permitted_resources.product( %w{create destroy import update} ).map{ |model_action| model_action.join('.') } + _permitted_resources.product( %w{create destroy update} ).map{ |model_action| model_action.join('.') } end def _permitted_resources @@ -18,6 +18,7 @@ module Support connection_links calendars footnotes + imports journey_patterns referentials routes diff --git a/spec/support/pundit/policies.rb b/spec/support/pundit/policies.rb index d5bb63243..a3489d9db 100644 --- a/spec/support/pundit/policies.rb +++ b/spec/support/pundit/policies.rb @@ -3,18 +3,18 @@ require 'pundit/rspec' module Support module Pundit module Policies - def add_permissions(*permissions, for_user:) - for_user.permissions ||= [] - for_user.permissions += permissions.flatten + def add_permissions(*permissions, to_user:) + to_user.permissions ||= [] + to_user.permissions += permissions.flatten end def create_user_context(user:, referential:) UserContext.new(user, referential: referential) end - def add_permissions(*permissions, for_user:) - for_user.permissions ||= [] - for_user.permissions += permissions.flatten + def remove_permissions(*permissions, from_user:, save: false) + from_user.permissions -= permissions.flatten + from_user.save! if save end end @@ -30,7 +30,7 @@ module Support end def with_user_permission(permission, &blk) it "with user permission #{permission.inspect}" do - add_permissions(permission, for_user: user) + add_permissions(permission, to_user: user) blk.() end end @@ -41,7 +41,7 @@ module Support perms, options = permissions.partition{|x| String === x} context "with permissions #{perms.inspect}...", *options do before do - add_permissions(*permissions, for_user: @user) + add_permissions(*permissions, to_user: @user) end instance_eval(&blk) end @@ -51,6 +51,7 @@ module Support end RSpec.configure do | c | + c.include Support::Pundit::Policies, type: :controller c.include Support::Pundit::Policies, type: :policy c.extend Support::Pundit::PoliciesMacros, type: :policy c.include Support::Pundit::Policies, type: :feature diff --git a/spec/support/pundit/shared_examples.rb b/spec/support/pundit/shared_examples.rb index 63a106759..49c6845da 100644 --- a/spec/support/pundit/shared_examples.rb +++ b/spec/support/pundit/shared_examples.rb @@ -18,7 +18,7 @@ RSpec.shared_examples 'always allowed' do context 'different organisations →' do before do - add_permissions(permission, for_user: user) + add_permissions(permission, to_user: user) end it "allows a user with a different organisation" do expect_it.to permit(user_context, record) @@ -51,7 +51,7 @@ RSpec.shared_examples 'always forbidden' do context 'different organisations →' do before do - add_permissions(permission, for_user: user) + add_permissions(permission, to_user: user) end it "denies a user with a different organisation" do expect_it.not_to permit(user_context, record) @@ -80,7 +80,7 @@ RSpec.shared_examples 'permitted policy and same organisation' do context 'permission present → ' do before do - add_permissions(permission, for_user: user) + add_permissions(permission, to_user: user) end it 'denies a user with a different organisation' do @@ -113,7 +113,7 @@ RSpec.shared_examples 'permitted policy' do context 'permission present → ' do before do - add_permissions(permission, for_user: user) + add_permissions(permission, to_user: user) end it 'allows user' do |
