diff options
| author | cedricnjanga | 2017-11-09 12:15:55 +0100 |
|---|---|---|
| committer | cedricnjanga | 2017-11-09 12:27:09 +0100 |
| commit | 3ae18486a563e634ef555372131abaf84ae1a892 (patch) | |
| tree | 7c8c73e83d84fe813edc34c8c187d7eef26231df | |
| parent | 464a5c70450e4054c12f4d5b58477bb9386917f2 (diff) | |
| download | chouette-core-3ae18486a563e634ef555372131abaf84ae1a892.tar.bz2 | |
Refs #4932 Change route duplication to redrect to routes#index
| -rw-r--r-- | app/controllers/routes_controller.rb | 3 | ||||
| -rw-r--r-- | app/models/chouette/route.rb | 3 | ||||
| -rw-r--r-- | config/locales/routes.en.yml | 1 | ||||
| -rw-r--r-- | config/locales/routes.fr.yml | 1 | ||||
| -rw-r--r-- | spec/controllers/routes_controller_spec.rb | 2 | ||||
| -rw-r--r-- | spec/models/chouette/route/route_duplication_spec.rb | 4 |
6 files changed, 9 insertions, 5 deletions
diff --git a/app/controllers/routes_controller.rb b/app/controllers/routes_controller.rb index 93f30f4d5..1a6c82484 100644 --- a/app/controllers/routes_controller.rb +++ b/app/controllers/routes_controller.rb @@ -68,7 +68,8 @@ class RoutesController < ChouetteController def duplicate route = Chouette::Route.find(params[:id]).duplicate - redirect_to edit_referential_line_route_path(@referential, route.line, route) + flash[:notice] = t('routes.duplicate.success') + redirect_to referential_line_path(@referential, route.line) end protected diff --git a/app/models/chouette/route.rb b/app/models/chouette/route.rb index 0bdccb36a..7a529d2b9 100644 --- a/app/models/chouette/route.rb +++ b/app/models/chouette/route.rb @@ -78,7 +78,8 @@ class Chouette::Route < Chouette::TridentActiveRecord def duplicate overrides = { - 'opposite_route_id' => nil + 'opposite_route_id' => nil, + 'name' => I18n.t('activerecord.copy', name: self.name) } keys_for_create = attributes.keys - %w{id objectid created_at updated_at} atts_for_create = attributes diff --git a/config/locales/routes.en.yml b/config/locales/routes.en.yml index 4437b62b9..ba4f76daa 100644 --- a/config/locales/routes.en.yml +++ b/config/locales/routes.en.yml @@ -55,6 +55,7 @@ en: for_alighting: "Alighting" duplicate: title: "Duplicate route" + success: "Route cloned with success" route: no_journey_pattern: "No Journey pattern" opposite: "Opposite route" diff --git a/config/locales/routes.fr.yml b/config/locales/routes.fr.yml index 31838f1a7..3bcc33320 100644 --- a/config/locales/routes.fr.yml +++ b/config/locales/routes.fr.yml @@ -55,6 +55,7 @@ fr: for_alighting: "Descente" duplicate: title: "Dupliquer l'itinéraire" + success: "itinéraire dupliqué avec succès" route: no_journey_pattern: "Pas de mission" wayback: diff --git a/spec/controllers/routes_controller_spec.rb b/spec/controllers/routes_controller_spec.rb index 336f20945..fb29c8d73 100644 --- a/spec/controllers/routes_controller_spec.rb +++ b/spec/controllers/routes_controller_spec.rb @@ -89,7 +89,7 @@ RSpec.describe RoutesController, type: :controller do id: route.id end.to change { Route.count }.by(1) - expect(Route.last.name).to eq(route.name) + expect(Route.last.name).to eq( I18n.t('activerecord.copy', name: route.name)) expect(Route.last.published_name).to eq(route.published_name) end end diff --git a/spec/models/chouette/route/route_duplication_spec.rb b/spec/models/chouette/route/route_duplication_spec.rb index 6645b909f..5bcd13fc8 100644 --- a/spec/models/chouette/route/route_duplication_spec.rb +++ b/spec/models/chouette/route/route_duplication_spec.rb @@ -11,7 +11,7 @@ RSpec.describe Route do describe 'properties' do it 'same attribute values' do route.duplicate - expect( values_for_create(Route.last, except: %w{objectid}) ).to eq( values_for_create( route, except: %w{objectid} ) ) + expect( values_for_create(Route.last, except: %w{objectid name checksum checksum_source}) ).to eq( values_for_create( route, except: %w{objectid name checksum checksum_source} ) ) end it 'and others cannot' do expect{ route.duplicate name: 'YAN', line_id: 42 }.to raise_error(ArgumentError) @@ -38,7 +38,7 @@ RSpec.describe Route do let( :second_duplicate ){ first_duplicate.reload.duplicate } it 'the required attributes' do - expect( values_for_create(first_duplicate, except: %w{objectid}) ).to eq( values_for_create( second_duplicate, except: %w{objectid} ) ) + expect( values_for_create(first_duplicate, except: %w{objectid name checksum checksum_source}) ).to eq( values_for_create( second_duplicate, except: %w{objectid name checksum checksum_source} ) ) end it 'the stop areas' do |
