function generateRandomDates(count) {const firstDate = new Date(1800, 11, 5, 13, 6);let currentTimeStamp = firstDate.getTime();const dates = [];for (let i = 0; i < count; i++) {dates.push(new Date(currentTimeStamp));currentTimeStamp += 1234569;}return dates;}const DATE_STYLE_OPTIONS = ["full", "long", "medium", "short"];const TIME_STYLE_OPTIONS = ["full", "long", "medium", "short"];function* dateTimeFormatOptions() {for (const locale of LOCALES) {for (const dateStyle of DATE_STYLE_OPTIONS) {for (const timeStyle of TIME_STYLE_OPTIONS) {yield { locale, dateStyle, timeStyle };}}}}function runTest(verbose = false) {let totalLength = 0;let lastFormatResult;let lastFormatPartResult;let lastFormatRangeResult;const dates = generateRandomDates(100);let dateIndex = 0;const FORMAT_COUNT = 17;const FORMAT_RANGE_COUNT = 7;for (const { locale, dateStyle, timeStyle } of shuffleOptions(dateTimeFormatOptions)) {const options = { dateStyle, timeStyle };if (verbose) {console.log(locale, JSON.stringify(options));}const formatter = new Intl.DateTimeFormat(locale, options);for (let i = 0; i < FORMAT_COUNT; i++) {let date = dates[dateIndex % dates.length];lastFormatResult = formatter.format(date);totalLength += lastFormatResult.length;if (verbose) {console.log(date, lastFormatResult);}dateIndex++;date = dates[dateIndex % dates.length];lastFormatPartResult = formatter.formatToParts(date);for (const part of lastFormatPartResult) {totalLength += part.value.length;}dateIndex++;}let dateRangeStart = dates[0];for (let i = 0; i < FORMAT_RANGE_COUNT; i++) {const date = dates[dateIndex % dates.length];if (dateRangeStart < date) {lastFormatRangeResult = formatter.formatRange(dateRangeStart, date);if (verbose) {console.log(dateRangeStart, date, lastFormatRangeResult);}}dateRangeStart = date;}}return {lastResult: lastFormatResult + lastFormatRangeResult,totalLength,expectedMinLength: 438_000,};}