From 35f03ae00129672d43fccae5c8d39258d9d41795 Mon Sep 17 00:00:00 2001 From: discountchubbs Date: Tue, 28 Oct 2025 11:52:32 -0700 Subject: [PATCH] Well im conflicted --- sunnypilot/navd/event_builder.py | 18 ++++++++++++------ sunnypilot/navd/tests/test_event_builder.py | 4 ++-- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/sunnypilot/navd/event_builder.py b/sunnypilot/navd/event_builder.py index 1fb6abf1fa..702b44f37a 100644 --- a/sunnypilot/navd/event_builder.py +++ b/sunnypilot/navd/event_builder.py @@ -30,16 +30,22 @@ def _build_banner_message(nav_msg): banner = m.instruction dist = f'{int(m.distance)}m' - if m.type == 'arrive': + if m.type == 'arrive' or m.type == 'depart': base_msg = banner - elif m.modifier == 'left' and 'Turn left' not in banner: - base_msg = f'Turn left onto {banner} in {dist}' - elif m.modifier == 'right' and 'Turn right' not in banner: - base_msg = f'Turn right onto {banner} in {dist}' + elif banner.startswith(('Continue', 'Drive', 'Head')): + base_msg = f'{banner} for {dist}' + + # Not sure how I feel about these two below conditions right now. + + # elif m.modifier == 'left' and 'Turn left' not in banner: + # base_msg = f'Turn left onto {banner} in {dist}' + # elif m.modifier == 'right' and 'Turn right' not in banner: + # base_msg = f'Turn right onto {banner} in {dist}' + elif 'Turn' in banner or 'Take' in banner or 'Make' in banner: base_msg = f'{banner} in {dist}' else: - base_msg = f'{banner} for {dist}' + base_msg = f'Continue on {banner} for {dist}' return base_msg diff --git a/sunnypilot/navd/tests/test_event_builder.py b/sunnypilot/navd/tests/test_event_builder.py index e4d7f735ee..c3d409be41 100644 --- a/sunnypilot/navd/tests/test_event_builder.py +++ b/sunnypilot/navd/tests/test_event_builder.py @@ -29,7 +29,7 @@ class TestEventBuilder: events = build_navigation_events(MockSM(nav_msg)) expected = [{ 'name': custom.OnroadEventSP.EventName.navigationBanner, - 'message': 'Turn right onto West Esplanade Drive in 192m', + 'message': 'Continue on West Esplanade Drive for 192m', }] assert events == expected @@ -61,6 +61,6 @@ class TestEventBuilder: events = build_navigation_events(MockSM(nav_msg)) expected = [{ 'name': custom.OnroadEventSP.EventName.navigationBanner, - 'message': '1234 Apple Way for 80m' + 'message': 'Continue on 1234 Apple Way for 80m' }] assert events == expected