diff options
| author | Xinhui | 2017-03-10 13:00:48 +0100 |
|---|---|---|
| committer | Xinhui | 2017-03-10 13:00:48 +0100 |
| commit | bbeee45fbba338eeb857f9967a3c79519bf499bc (patch) | |
| tree | 8c4e95530ab7ac962a4395f0cc33d2ed61a743f2 /spec | |
| parent | 9a0e95969b9afaf6b5c63752d3963a96f4e50fb0 (diff) | |
| download | chouette-core-bbeee45fbba338eeb857f9967a3c79519bf499bc.tar.bz2 | |
Refactoring vehicle_journey_at_stops_matrix
Diffstat (limited to 'spec')
| -rw-r--r-- | spec/models/chouette/vehicle_journey_spec.rb | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/spec/models/chouette/vehicle_journey_spec.rb b/spec/models/chouette/vehicle_journey_spec.rb index 4f55ba774..a6569d011 100644 --- a/spec/models/chouette/vehicle_journey_spec.rb +++ b/spec/models/chouette/vehicle_journey_spec.rb @@ -24,9 +24,33 @@ describe Chouette::VehicleJourney, :type => :model do end let(:route) { create :route } - let(:vehicle_journey) { create :vehicle_journey, route: route } + let(:journey_pattern) { create :journey_pattern, route: route } + let(:vehicle_journey) { create :vehicle_journey, route: route, journey_pattern: journey_pattern } + let(:state) { vehicle_journey_to_state(vehicle_journey) } + describe '.vehicle_journey_at_stops_matrix' do + it 'should fill missing VehicleJourneyAtStop with dummy' do + vehicle_journey.vehicle_journey_at_stops.last.destroy + expect(vehicle_journey.reload.vehicle_journey_at_stops.map(&:id).count).to eq(route.stop_points.map(&:id).count - 1) + + at_stops = vehicle_journey.reload.vehicle_journey_at_stops_matrix + expect(at_stops.last.id).to be_nil + expect(at_stops.count).to eq route.stop_points.count + end + + it 'should keep index order of VehicleJourneyAtStop' do + vehicle_journey.vehicle_journey_at_stops[3].destroy + at_stops = vehicle_journey.reload.vehicle_journey_at_stops_matrix + + expect(at_stops[3].id).to be_nil + at_stops.delete_at(3) + at_stops.each do |stop| + expect(stop.id).not_to be_nil + end + end + end + it 'should update arrival_time' do stop = state['vehicle_journey_at_stops'].first stop['arrival_time']['hour'] = "10" |
