From aef3e04ef9346c085dfa4bfd9e1fa9e5ff8dd406 Mon Sep 17 00:00:00 2001 From: Cailyn Sinclair Date: Sat, 18 Jul 2026 12:22:41 -0700 Subject: [PATCH 1/2] Fix DNF and DNS result formatting --- src/lib/results.ts | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/lib/results.ts b/src/lib/results.ts index 27c00be..c82c4b7 100644 --- a/src/lib/results.ts +++ b/src/lib/results.ts @@ -13,6 +13,14 @@ export const renderResultByEventId = ( rankingType: RankingType, result: AttemptResult, ) => { + if (result === -1) { + return 'DNF'; + } + + if (result === -2) { + return 'DNS'; + } + if (eventId === '333fm') { return rankingType === 'average' ? ((result as number) / 100).toFixed(2).toString() : result; } From e5eba2fa481a8ed9fc21fd89732f76910583c5ed Mon Sep 17 00:00:00 2001 From: Cailyn Sinclair Date: Sat, 18 Jul 2026 12:22:56 -0700 Subject: [PATCH 2/2] Add DNF and DNS formatting regression tests --- src/lib/results.test.ts | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 src/lib/results.test.ts diff --git a/src/lib/results.test.ts b/src/lib/results.test.ts new file mode 100644 index 0000000..c20a88c --- /dev/null +++ b/src/lib/results.test.ts @@ -0,0 +1,18 @@ +import { renderResultByEventId } from './results'; + +describe('renderResultByEventId', () => { + it('renders DNF before event-specific formatting', () => { + expect(renderResultByEventId('333', 'single', -1)).toBe('DNF'); + expect(renderResultByEventId('333fm', 'average', -1)).toBe('DNF'); + }); + + it('renders DNS before event-specific formatting', () => { + expect(renderResultByEventId('333', 'single', -2)).toBe('DNS'); + expect(renderResultByEventId('333mbf', 'single', -2)).toBe('DNS'); + }); + + it('keeps normal result formatting unchanged', () => { + expect(renderResultByEventId('333', 'single', 1234)).toBe('12.34'); + expect(renderResultByEventId('333fm', 'average', 2533)).toBe('25.33'); + }); +});