Skip to content

Commit 49d02cd

Browse files
authored
Merge pull request #4224 from hove-io/nav_2793
Fix opg network
2 parents d5cce15 + 5b3c04d commit 49d02cd

File tree

3 files changed

+24
-20
lines changed

3 files changed

+24
-20
lines changed

source/jormungandr/jormungandr/olympic_site_params_manager.py

+8-5
Original file line numberDiff line numberDiff line change
@@ -218,6 +218,13 @@ def fill_olympic_site_params_from_s3(self):
218218
instance_name=self.instance.name, bucket_name=self.bucket_name, folder=self.folder, **self.args
219219
)
220220

221+
def manage_navette(self, api_request):
222+
# Add forbidden_uri
223+
if self.instance.olympics_forbidden_uris and self.instance.olympics_forbidden_uris:
224+
self.manage_forbidden_uris(
225+
api_request, self.instance.olympics_forbidden_uris.pt_object_olympics_forbidden_uris
226+
)
227+
221228
def build(self, pt_object_origin, pt_object_destination, api_request):
222229
# Warning, the order of functions is important
223230
# Order 1 : get_olympic_site_params
@@ -251,11 +258,6 @@ def build_api_request(self, api_request):
251258
else:
252259
api_request[key] = value
253260

254-
# Add forbidden_uri
255-
self.manage_forbidden_uris(
256-
api_request, self.instance.olympics_forbidden_uris.pt_object_olympics_forbidden_uris
257-
)
258-
259261
# Add criteria
260262
if api_request.get("criteria") in ["departure_stop_attractivity", "arrival_stop_attractivity"]:
261263
return
@@ -285,6 +287,7 @@ def get_olympic_site_params(self, pt_origin_detail, pt_destination_detail, api_r
285287
destination_olympic_site = self.get_olympic_site(pt_destination_detail)
286288

287289
if not origin_olympic_site and not destination_olympic_site:
290+
self.manage_navette(api_request)
288291
return {}
289292

290293
self.fill_olympic_site_params_from_s3()

source/jormungandr/jormungandr/tests/olympic_site_params_manager_tests.py

+4-3
Original file line numberDiff line numberDiff line change
@@ -472,7 +472,7 @@ def test_build_departure_and_arrival_poi_jo():
472472
assert api_request.get("max_walking_duration_to_pt") == 12000
473473
assert api_request.get('night_bus_filter_max_factor') == 2
474474
assert api_request.get('night_bus_filter_base_factor') == 1800
475-
assert len(api_request.get('forbidden_uris[]')) == 2
475+
assert len(api_request.get('forbidden_uris[]')) == 1
476476
olympic_site_params = api_request["olympic_site_params"]
477477
assert not olympic_site_params['show_natural_opg_journeys']
478478
assert olympic_site_params["strict"]
@@ -568,6 +568,7 @@ def test_build_departure_and_arrival_poi_jo_empty_olympic_site_params():
568568
api_request["datetime"] = osp.get_timestamp('20230715T110000')
569569
osp.build(pt_origin_detail, pt_destination_detail, api_request)
570570
assert not api_request["olympic_site_params"]
571+
assert "forbidden_uris[]" not in api_request
571572

572573

573574
def test_build_departure_and_arrival_poi_jo_add_forbidden_uris():
@@ -593,7 +594,7 @@ def test_build_departure_and_arrival_poi_jo_add_forbidden_uris():
593594
api_request["datetime"] = osp.get_timestamp('20230715T110000')
594595
osp.build(pt_origin_detail, pt_destination_detail, api_request)
595596
assert api_request["olympic_site_params"]
596-
assert len(api_request["forbidden_uris[]"]) == 4
597+
assert len(api_request["forbidden_uris[]"]) == 3
597598
assert not api_request["olympic_site_params"]['show_natural_opg_journeys']
598599

599600

@@ -621,7 +622,7 @@ def test_get_dict_scenario_invalid_scanario_name():
621622
osp.build(pt_origin_detail, pt_destination_detail, api_request)
622623
assert api_request["olympic_site_params"]
623624
assert not api_request["olympic_site_params"]['show_natural_opg_journeys']
624-
assert len(api_request["forbidden_uris[]"]) == 2
625+
assert len(api_request["forbidden_uris[]"]) == 1
625626
scenario_name = osp.get_valid_scenario_name(
626627
osp.olympic_site_params["poi:BCD"]["events"], "departure_scenario", osp.get_timestamp('20230720T110000')
627628
)

source/jormungandr/tests/olympic_sites_tests.py

+12-12
Original file line numberDiff line numberDiff line change
@@ -409,18 +409,18 @@ def test_address_with_invalid_within_to_address_journeys(self):
409409
template_journey_query.format(place_from=from_addr_uri, place_to=to_addr_uri)
410410
)
411411
journeys = [journey for journey in response['journeys']]
412-
assert len(journeys) == 2
412+
assert len(journeys) == 1
413413
first_journey = response['journeys'][0]
414-
assert len(first_journey["sections"]) == 3
414+
assert len(first_journey["sections"]) == 1
415415
physical_mode_id = next(
416416
(
417417
link["id"]
418-
for link in first_journey["sections"][1]["links"]
418+
for link in first_journey["sections"][0]["links"]
419419
if link["type"] == 'physical_mode'
420420
),
421421
None,
422422
)
423-
assert physical_mode_id
423+
assert not physical_mode_id
424424

425425
def test_address_to_address_journeys(self):
426426
# forbidden_uris not used : physical_mode:0x0
@@ -451,18 +451,18 @@ def test_address_to_address_journeys(self):
451451
template_journey_query.format(place_from=from_addr_uri, place_to=to_addr_uri)
452452
)
453453
journeys = [journey for journey in response['journeys']]
454-
assert len(journeys) == 2
454+
assert len(journeys) == 1
455455
first_journey = response['journeys'][0]
456-
assert len(first_journey["sections"]) == 3
456+
assert len(first_journey["sections"]) == 1
457457
physical_mode_id = next(
458458
(
459459
link["id"]
460-
for link in first_journey["sections"][1]["links"]
460+
for link in first_journey["sections"][0]["links"]
461461
if link["type"] == 'physical_mode'
462462
),
463463
None,
464464
)
465-
assert physical_mode_id
465+
assert not physical_mode_id
466466

467467
def test_address_to_olympic_poi_journeys(self):
468468
# forbidden_uris used : physical_mode:0x0
@@ -512,18 +512,18 @@ def test_address_to_not_olympic_poi_journeys(self):
512512
template_journey_query.format(place_from=from_addr_uri, place_to=to_poi_uri)
513513
)
514514
journeys = [journey for journey in response['journeys']]
515-
assert len(journeys) == 2
515+
assert len(journeys) == 1
516516
first_journey = response['journeys'][0]
517-
assert len(first_journey["sections"]) == 3
517+
assert len(first_journey["sections"]) == 1
518518
physical_mode_id = next(
519519
(
520520
link["id"]
521-
for link in first_journey["sections"][1]["links"]
521+
for link in first_journey["sections"][0]["links"]
522522
if link["type"] == 'physical_mode'
523523
),
524524
None,
525525
)
526-
assert physical_mode_id
526+
assert not physical_mode_id
527527

528528
def test_olympic_poi_to_address_journeys(self):
529529
# forbidden_uris used : physical_mode:0x0

0 commit comments

Comments
 (0)