From 701ae4af67d5c611e42f7dfa4ae95face7bde32d Mon Sep 17 00:00:00 2001 From: a0666660 <69061030+a0666660@users.noreply.github.com> Date: Sat, 3 Oct 2026 22:26:56 +0800 Subject: [PATCH] test(timezone-converter): pin hourCycle h23 in differential fixtures CI ICU renders midnight as hour 24 under hour12:false for en-CA, which Date.parse rejects; explicit h23 is deterministic across engines. --- .../timezone-converter.differential.test.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/tools/timezone-converter/timezone-converter.differential.test.ts b/src/tools/timezone-converter/timezone-converter.differential.test.ts index 054567e5..10104997 100644 --- a/src/tools/timezone-converter/timezone-converter.differential.test.ts +++ b/src/tools/timezone-converter/timezone-converter.differential.test.ts @@ -5,7 +5,7 @@ import { convertBetweenTimezones, listTimezones } from './timezone-converter.mod function getTimeZoneOffsetMs(date: Date, timeZone: string): number { const parts = new Intl.DateTimeFormat('en-US', { timeZone, - hour12: false, + hourCycle: 'h23', year: 'numeric', month: '2-digit', day: '2-digit', @@ -79,7 +79,7 @@ it('A to B to A roundtrip is lossless across zone pairs', () => { hour: '2-digit', minute: '2-digit', second: '2-digit', - hour12: false, + hourCycle: 'h23', }).formatToParts(instant); const v = Object.fromEntries(parts.map(p => [p.type, p.value])); const naive = `${v.year}-${v.month}-${v.day} ${v.hour}:${v.minute}:${v.second}`;