aboutsummaryrefslogtreecommitdiffstats
path: root/spec/controllers
diff options
context:
space:
mode:
authorZog2017-12-20 17:48:17 +0100
committerAlban Peignier2017-12-21 21:35:02 +0100
commite8285678efc9a62115fe0af4086c7a3959666bf8 (patch)
tree64b18197dff4d6707be10bfccca9240c601ffded /spec/controllers
parent01b2d2b785d99c9b031269fc741b70ee9c248f16 (diff)
downloadchouette-core-e8285678efc9a62115fe0af4086c7a3959666bf8.tar.bz2
Refs #5349 @1h; Deactivate StopAreas instead of destroying them5349-deactivate-stop-areas
- Update decorators (had to split `action_links` because of `StopPointDecorator` inheriting from `StopAreaDecorator`) - Add methods on model - Add routes - Add actions on controller (`Activatable` concern, shared with `LinesController`) - Add I18n keys
Diffstat (limited to 'spec/controllers')
-rw-r--r--spec/controllers/stop_areas_controller_spec.rb38
1 files changed, 38 insertions, 0 deletions
diff --git a/spec/controllers/stop_areas_controller_spec.rb b/spec/controllers/stop_areas_controller_spec.rb
new file mode 100644
index 000000000..2b5f8c3e2
--- /dev/null
+++ b/spec/controllers/stop_areas_controller_spec.rb
@@ -0,0 +1,38 @@
+RSpec.describe StopAreasController, :type => :controller do
+ login_user
+
+ let(:stop_area_referential) { create :stop_area_referential }
+ let(:stop_area) { create :stop_area, stop_area_referential: stop_area_referential }
+
+ describe 'PUT deactivate' do
+ let(:request){ put :deactivate, id: stop_area.id, stop_area_referential_id: stop_area_referential.id }
+
+ it 'should redirect to 403' do
+ expect(request).to redirect_to "/403"
+ end
+
+ with_permission "stop_areas.change_status" do
+ it 'returns HTTP success' do
+ expect(request).to redirect_to [stop_area_referential, stop_area]
+ expect(stop_area.reload).to be_deactivated
+ end
+ end
+ end
+
+ describe 'PUT activate' do
+ let(:request){ put :activate, id: stop_area.id, stop_area_referential_id: stop_area_referential.id }
+ before(:each){
+ stop_area.deactivate!
+ }
+ it 'should redirect to 403' do
+ expect(request).to redirect_to "/403"
+ end
+
+ with_permission "stop_areas.change_status" do
+ it 'returns HTTP success' do
+ expect(request).to redirect_to [stop_area_referential, stop_area]
+ expect(stop_area.reload).to be_activated
+ end
+ end
+ end
+end