diff options
| author | Zog | 2018-02-13 14:37:23 +0100 |
|---|---|---|
| committer | Alban Peignier | 2018-02-19 22:29:55 +0100 |
| commit | ba1e18ba0a641d34e6dcc7cba42931b1e5f00d1a (patch) | |
| tree | b12a48b30fd0967f36e7ea7044df60685efccf63 /spec/controllers | |
| parent | 688ed83020fc97396382905b1409e2c61159abe3 (diff) | |
| download | chouette-core-ba1e18ba0a641d34e6dcc7cba42931b1e5f00d1a.tar.bz2 | |
Refs #5911 @2h; Better stops filters on ReferentialVJs#index
Diffstat (limited to 'spec/controllers')
| -rw-r--r-- | spec/controllers/referential_vehicle_journeys_controller_spec.rb | 50 |
1 files changed, 23 insertions, 27 deletions
diff --git a/spec/controllers/referential_vehicle_journeys_controller_spec.rb b/spec/controllers/referential_vehicle_journeys_controller_spec.rb index cc6b44b9d..6b77208a4 100644 --- a/spec/controllers/referential_vehicle_journeys_controller_spec.rb +++ b/spec/controllers/referential_vehicle_journeys_controller_spec.rb @@ -44,7 +44,8 @@ RSpec.describe ReferentialVehicleJourneysController, type: :controller do get :index, referential_id: referential, q: q } - let(:stop_area_ids){ [] } + let(:from_area_id){ nil } + let(:to_area_id){ nil } def create_journey_pattern_with_stop_areas(*stop_areas) j = create(:journey_pattern) @@ -56,40 +57,35 @@ RSpec.describe ReferentialVehicleJourneysController, type: :controller do j end - let(:q){ {stop_area_ids: stop_area_ids}} - let(:stop_area_1){ create :stop_area } - let(:stop_area_2){ create :stop_area } - let!(:journey_1){ create_journey_pattern_with_stop_areas(stop_area_1)} - let!(:journey_2){ create_journey_pattern_with_stop_areas(stop_area_2)} - let!(:journey_1_and_2){ create_journey_pattern_with_stop_areas(stop_area_1, stop_area_2)} - let!(:vehicle_journey_1){ create(:vehicle_journey, journey_pattern: journey_1)} - let!(:vehicle_journey_2){ create(:vehicle_journey, journey_pattern: journey_2)} - let!(:vehicle_journey_1_and_2){ create(:vehicle_journey, journey_pattern: journey_1_and_2)} - - context "with one stop" do - let(:stop_area_ids){[stop_area_1.id]} + let(:q){ {stop_areas: {start: from_area_id, end: to_area_id}} } + let(:journey_pattern){ create(:journey_pattern) } + let(:journey_pattern_2){ create(:journey_pattern) } + + let!(:vehicle_journey_1){ create(:vehicle_journey, journey_pattern: journey_pattern)} + let!(:vehicle_journey_2){ create(:vehicle_journey, journey_pattern: journey_pattern_2)} + + context "with the start stop" do + let(:from_area_id){ vehicle_journey_1.stop_areas.first.id } it "should apply filters" do - expect(vehicle_journey_1.stop_areas).to include stop_area_1 - expect(vehicle_journey_2.stop_areas).to_not include stop_area_1 - expect(vehicle_journey_1_and_2.stop_areas).to include stop_area_1 expect(assigns[:vehicle_journeys]).to include(vehicle_journey_1) expect(assigns[:vehicle_journeys]).to_not include(vehicle_journey_2) - expect(assigns[:vehicle_journeys]).to include(vehicle_journey_1_and_2) end end - context "with 2 stops" do - let(:stop_area_ids){[stop_area_1.id, stop_area_2.id]} + context "with the end stop" do + let(:to_area_id){ vehicle_journey_1.stop_areas.last.id } it "should apply filters" do - expect(vehicle_journey_1.stop_areas).to include stop_area_1 - expect(vehicle_journey_1.stop_areas).to_not include stop_area_2 - expect(vehicle_journey_2.stop_areas).to include stop_area_2 - expect(vehicle_journey_2.stop_areas).to_not include stop_area_1 - expect(vehicle_journey_1_and_2.stop_areas).to include stop_area_1 - expect(vehicle_journey_1_and_2.stop_areas).to include stop_area_2 - expect(assigns[:vehicle_journeys]).to_not include(vehicle_journey_1) + expect(assigns[:vehicle_journeys]).to include(vehicle_journey_1) + expect(assigns[:vehicle_journeys]).to_not include(vehicle_journey_2) + end + end + + context "with both stops" do + let(:from_area_id){ vehicle_journey_1.stop_areas.first.id } + let(:to_area_id){ vehicle_journey_1.stop_areas.last.id } + it "should apply filters" do + expect(assigns[:vehicle_journeys]).to include(vehicle_journey_1) expect(assigns[:vehicle_journeys]).to_not include(vehicle_journey_2) - expect(assigns[:vehicle_journeys]).to include(vehicle_journey_1_and_2) end end end |
