regress-9812.js 1.17 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
// Copyright 2019 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

const locales = [
  "cs",
  "cs-CZ",
  "en-001",
  "en-150",
  "en-TV",
  "es-419",
  "es-AR",
  "fil",
  "fr-CA",
  "id",
  "in",
  "lt",
  "nl",
  "pl",
  "pt-PT",
  "sr-ME",
  "sv",
  "uk",
  "vi",
];

const calendars = [
    // Calendars we know have issues
    "islamic",
    "islamic-civil",
    "islamic-tbla",
    "islamic-umalqura",
    "ethiopic-amete-alem",
    "islamicc",
    "ethioaa",
    "islamic-rgsa",

    // Other calendars
    "gregory",
    "japanese",
    "buddhist",
    "roc",
    "persian",
    "islamic",
    "hebrew",
    "chinese",
    "indian",
    "coptic",
    "ethiopic",
    "iso8601",
    "dangi",
    "chinese",
];

let d1 = new Date(2019, 3, 4);
let d2 = new Date(2019, 5, 6);

calendars.forEach(function(calendar) {
  locales.forEach(function(baseLocale) {
    let locale = `${baseLocale}-u-ca-${calendar}`;
    assertDoesNotThrow(
        () => (new Intl.DateTimeFormat(locale)).formatRange(d1, d2),
        `Using Intl.DateFormat formatRange with ${locale} should not throw`);
  })
})