From 9a34cb48f49df574ae1e7c599713ed246e2938cf Mon Sep 17 00:00:00 2001 From: Zog Date: Wed, 20 Dec 2017 12:58:20 +0100 Subject: Refs #5430 @2h; Deactivate lines instead of destroying them - Add `activate` and `deactivate` actions in `LinesController`, as well as corresponding routes - Add `activate!` and `deactivate!` methods in `Chouette::Line`, as well as `activated?` - Add `activate?` and `deactivate?` permissions in `LinePolicy` - Add corresponding `action_links`in the Decorator - Create helper for these actions - Add an optional `'extra_class` to the Links - Update styles for ".delete-action" to handle the case where there are several - Add I18n keys accordingly --- spec/controllers/lines_controller_spec.rb | 38 +++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 spec/controllers/lines_controller_spec.rb (limited to 'spec/controllers/lines_controller_spec.rb') diff --git a/spec/controllers/lines_controller_spec.rb b/spec/controllers/lines_controller_spec.rb new file mode 100644 index 000000000..ce5adbbdd --- /dev/null +++ b/spec/controllers/lines_controller_spec.rb @@ -0,0 +1,38 @@ +RSpec.describe LinesController, :type => :controller do + login_user + + let(:line_referential) { create :line_referential } + let(:line) { create :line, line_referential: line_referential } + + describe 'PUT deactivate' do + let(:request){ put :deactivate, id: line.id, line_referential_id: line_referential.id } + + it 'should redirect to 403' do + expect(request).to redirect_to "/403" + end + + with_permission "lines.change_status" do + it 'returns HTTP success' do + expect(request).to redirect_to [line_referential, line] + expect(line.reload).to be_deactivated + end + end + end + + describe 'PUT activate' do + let(:request){ put :activate, id: line.id, line_referential_id: line_referential.id } + before(:each){ + line.deactivate! + } + it 'should redirect to 403' do + expect(request).to redirect_to "/403" + end + + with_permission "lines.change_status" do + it 'returns HTTP success' do + expect(request).to redirect_to [line_referential, line] + expect(line.reload).to be_activated + end + end + end +end -- cgit v1.2.3 From da60766c207ac372e2ebd1d42be7c7b9c3ee4957 Mon Sep 17 00:00:00 2001 From: Alban Peignier Date: Thu, 28 Dec 2017 08:50:56 +0100 Subject: Use current_organisation as begin_of_association_chain in Lines/Companies/Networks/GroupOfLinesController. Refs #5102 --- spec/controllers/lines_controller_spec.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'spec/controllers/lines_controller_spec.rb') diff --git a/spec/controllers/lines_controller_spec.rb b/spec/controllers/lines_controller_spec.rb index ce5adbbdd..65fe88b96 100644 --- a/spec/controllers/lines_controller_spec.rb +++ b/spec/controllers/lines_controller_spec.rb @@ -1,14 +1,14 @@ RSpec.describe LinesController, :type => :controller do login_user - let(:line_referential) { create :line_referential } + let(:line_referential) { create :line_referential, member: @user.organisation } let(:line) { create :line, line_referential: line_referential } describe 'PUT deactivate' do let(:request){ put :deactivate, id: line.id, line_referential_id: line_referential.id } it 'should redirect to 403' do - expect(request).to redirect_to "/403" + expect(request).to redirect_to "/403" end with_permission "lines.change_status" do -- cgit v1.2.3