From 6f205b311456a5adcce8ad272f39819f5cbdb385 Mon Sep 17 00:00:00 2001 From: Sai Asish Y Date: Sun, 25 Oct 2026 01:04:39 -0700 Subject: [PATCH] fix(CoordinateUtils): label zero latitude/longitude as N/E in coordinateString Signed-off-by: Sai Asish Y --- lib/utils/coordinate_utils.test.ts | 9 +++++++++ lib/utils/coordinate_utils.ts | 4 ++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/lib/utils/coordinate_utils.test.ts b/lib/utils/coordinate_utils.test.ts index 290fe4ec..8f0a8b6c 100644 --- a/lib/utils/coordinate_utils.test.ts +++ b/lib/utils/coordinate_utils.test.ts @@ -78,6 +78,15 @@ describe('CoordinateUtils', () => { }), ).toBe('12.345 S, 67.890 W'); }); + + test('formats zero coordinates as N/E', () => { + expect( + CoordinateUtils.coordinateString({ + latitude: 0, + longitude: 0, + }), + ).toBe('0.000 N, 0.000 E'); + }); }); describe('getDirection', () => { diff --git a/lib/utils/coordinate_utils.ts b/lib/utils/coordinate_utils.ts index 1f92465a..5afd343b 100644 --- a/lib/utils/coordinate_utils.ts +++ b/lib/utils/coordinate_utils.ts @@ -76,8 +76,8 @@ export class CoordinateUtils { latitude: number; longitude: number; }): string { - const latDir = coords.latitude > 0 ? 'N' : 'S'; - const lonDir = coords.longitude > 0 ? 'E' : 'W'; + const latDir = coords.latitude >= 0 ? 'N' : 'S'; + const lonDir = coords.longitude >= 0 ? 'E' : 'W'; return `${Math.abs(coords.latitude).toFixed(3)} ${latDir}, ${Math.abs(coords.longitude).toFixed(3)} ${lonDir}`; }