diff options
Diffstat (limited to 'spec/controllers')
5 files changed, 52 insertions, 9 deletions
diff --git a/spec/controllers/journey_patterns_collections_controller_spec.rb b/spec/controllers/journey_patterns_collections_controller_spec.rb index 442d73fb7..7015bfe98 100644 --- a/spec/controllers/journey_patterns_collections_controller_spec.rb +++ b/spec/controllers/journey_patterns_collections_controller_spec.rb @@ -1,3 +1,27 @@ RSpec.describe JourneyPatternsCollectionsController, :type => :controller do + before do + @user = build_stubbed(:allmighty_user) + end + + describe 'user_permissions' do + let( :referential ){ build_stubbed(:referential) } + let( :user_context ){ UserContext.new(@user, referential: referential) } + + before do + allow(controller).to receive(:pundit_user).and_return(user_context) + end + + it 'computes them correctly if not authorized' do + expect( controller.user_permissions ).to eq({'journey_patterns.create' => false, + 'journey_patterns.destroy' => false, + 'journey_patterns.update' => false }.to_json) + end + it 'computes them correctly if authorized' do + @user.organisation_id = referential.organisation_id + expect( controller.user_permissions ).to eq({'journey_patterns.create' => true, + 'journey_patterns.destroy' => true, + 'journey_patterns.update' => true }.to_json) + end + end end diff --git a/spec/controllers/line_referentials_controller_spec.rb b/spec/controllers/line_referentials_controller_spec.rb index 6f8356507..aee24b0fa 100644 --- a/spec/controllers/line_referentials_controller_spec.rb +++ b/spec/controllers/line_referentials_controller_spec.rb @@ -1,5 +1,3 @@ -require 'spec_helper' - RSpec.describe LineReferentialsController, :type => :controller do end diff --git a/spec/controllers/referentials_controller_spec.rb b/spec/controllers/referentials_controller_spec.rb index 1b4533fca..500c6d2d6 100644 --- a/spec/controllers/referentials_controller_spec.rb +++ b/spec/controllers/referentials_controller_spec.rb @@ -1,5 +1,3 @@ -require 'spec_helper' - describe ReferentialsController, :type => :controller do login_user diff --git a/spec/controllers/vehicle_journeys_collections_controller_spec.rb b/spec/controllers/vehicle_journeys_collections_controller_spec.rb deleted file mode 100644 index 39ea55761..000000000 --- a/spec/controllers/vehicle_journeys_collections_controller_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -require 'rails_helper' - -RSpec.describe VehicleJourneysCollectionsController, :type => :controller do - -end diff --git a/spec/controllers/vehicle_journeys_controller_spec.rb b/spec/controllers/vehicle_journeys_controller_spec.rb new file mode 100644 index 000000000..c9356fffa --- /dev/null +++ b/spec/controllers/vehicle_journeys_controller_spec.rb @@ -0,0 +1,28 @@ +RSpec.describe VehicleJourneysController, :type => :controller do + + before do + @user = build_stubbed(:allmighty_user) + end + + describe 'user_permissions' do + let( :referential ){ build_stubbed(:referential) } + let( :user_context ){ UserContext.new(@user, referential: referential) } + + before do + allow(controller).to receive(:pundit_user).and_return(user_context) + end + + it 'computes them correctly if not authorized' do + expect( controller.send(:user_permissions) ).to eq({'vehicle_journeys.create' => false, + 'vehicle_journeys.destroy' => false, + 'vehicle_journeys.update' => false }.to_json) + end + it 'computes them correctly if authorized' do + @user.organisation_id = referential.organisation_id + expect( controller.send(:user_permissions) ).to eq({'vehicle_journeys.create' => true, + 'vehicle_journeys.destroy' => true, + 'vehicle_journeys.update' => true }.to_json) + end + end + +end |
