demarches-normaliennes/spec/services/user_routes_authorization_service_spec.rb

92 lines
2.6 KiB
Ruby
Raw Normal View History

require 'spec_helper'
describe UserRoutesAuthorizationService do
describe '#authorize_route?' do
2016-01-26 15:52:05 +01:00
let(:module_api_carto) { create :module_api_carto, use_api_carto: use_api_carto }
let(:procedure) { create :procedure, module_api_carto: module_api_carto }
let(:dossier) { create :dossier, procedure: procedure, state: state }
2016-01-26 15:52:05 +01:00
let(:use_api_carto) { false }
2016-01-26 15:52:05 +01:00
subject { described_class.authorized_route? controller, dossier }
2016-01-26 15:52:05 +01:00
describe 'Users::DossiersController' do
let(:controller) { Users::DossiersController }
2017-12-04 16:17:15 +01:00
describe 'brouillon' do
let(:state) { Dossier.states.fetch(:brouillon) }
2016-01-26 15:52:05 +01:00
it { is_expected.to be_truthy }
end
describe 'en_construction' do
let(:state) { Dossier.states.fetch(:en_construction) }
2016-01-26 15:52:05 +01:00
it { is_expected.to be_falsey }
end
2017-12-04 18:00:12 +01:00
describe 'accepte' do
let(:state) { Dossier.states.fetch(:accepte) }
2016-01-26 15:52:05 +01:00
it { is_expected.to be_falsey }
end
end
2016-01-26 15:52:05 +01:00
describe 'carte' do
let(:controller) { Users::CarteController }
context 'when use_api_carto is false' do
2017-12-04 16:17:15 +01:00
describe 'brouillon' do
let(:state) { Dossier.states.fetch(:brouillon) }
2016-01-26 15:52:05 +01:00
it { is_expected.to be_falsey }
end
describe 'en_construction' do
let(:state) { Dossier.states.fetch(:en_construction) }
it { is_expected.to be_falsey }
end
2017-12-04 18:00:12 +01:00
describe 'accepte' do
let(:state) { Dossier.states.fetch(:accepte) }
it { is_expected.to be_falsey }
end
end
2016-01-26 15:52:05 +01:00
context 'when use_api_carto is true' do
let(:use_api_carto) { true }
2017-12-04 16:17:15 +01:00
describe 'brouillon' do
let(:state) { Dossier.states.fetch(:brouillon) }
it { is_expected.to be_truthy }
end
describe 'en_construction' do
let(:state) { Dossier.states.fetch(:en_construction) }
it { is_expected.to be_truthy }
end
2017-12-04 18:00:12 +01:00
describe 'accepte' do
let(:state) { Dossier.states.fetch(:accepte) }
it { is_expected.to be_falsey }
end
end
2016-01-26 15:52:05 +01:00
end
2016-01-26 15:52:05 +01:00
describe 'recapitulatif' do
let(:controller) { Users::RecapitulatifController }
2017-12-04 16:17:15 +01:00
describe 'brouillon' do
let(:state) { Dossier.states.fetch(:brouillon) }
2016-01-26 15:52:05 +01:00
it { is_expected.to be_falsey }
end
describe 'en_construction' do
let(:state) { Dossier.states.fetch(:en_construction) }
2016-01-26 15:52:05 +01:00
it { is_expected.to be_truthy }
end
2017-12-04 18:00:12 +01:00
describe 'accepte' do
let(:state) { Dossier.states.fetch(:accepte) }
2016-01-26 15:52:05 +01:00
it { is_expected.to be_truthy }
end
end
end
2017-04-04 15:27:04 +02:00
end