25c11657fc
harmony_intl_bigint shipped in m76 harmony_intl_date_format_range shipped in m76 harmony_intl_datetime_style shipped in m76 harmony_intl_numberformat_unified shipped in m77 Bug: v8:9272, v8:9273, v8:9274 Change-Id: Icc640e011021e691373bc61725013578b7185e50 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1799263 Commit-Queue: Frank Tang <ftang@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#63736}
48 lines
1.8 KiB
JavaScript
48 lines
1.8 KiB
JavaScript
// 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 date1 = new Date("2019-01-03T03:20");
|
||
const date2 = new Date("2019-01-05T19:33");
|
||
const date3 = new Date("2019-01-05T22:57");
|
||
|
||
// value: "Jan 3 – 5, 2019"
|
||
// source: hhhhShhhEhhhhhh
|
||
// type: mmmldllldllyyyy
|
||
// h: Shared, S: startRange, E: endRange
|
||
// m: month, l: literal, d: day, y: year
|
||
const expected1 = [
|
||
{type: "month", value: "Jan", source: "shared"},
|
||
{type: "literal", value: " ", source: "shared"},
|
||
{type: "day", value: "3", source: "startRange"},
|
||
{type: "literal", value: " – ", source: "shared"},
|
||
{type: "day", value: "5", source: "endRange"},
|
||
{type: "literal", value: ", ", source: "shared"},
|
||
{type: "year", value: "2019", source: "shared"}
|
||
];
|
||
|
||
var dtf = new Intl.DateTimeFormat(["en"], {year: "numeric", month: "short", day: "numeric"});
|
||
const ret1 = dtf.formatRangeToParts(date1, date2);
|
||
assertEquals(expected1, ret1);
|
||
|
||
// value: "Jan 5, 7 – 10 PM"
|
||
// source: hhhhhhhShhhEEhhh
|
||
// type: mmmldlldlllhhlpp
|
||
// h: Shared, S: startRange, E: endRange
|
||
// m: month, l: literal, d: day, h: hour, p: dayPeriod
|
||
|
||
const expected2 = [
|
||
{type: "month", value: "Jan", source: "shared"},
|
||
{type: "literal", value: " ", source: "shared"},
|
||
{type: "day", value: "5", source: "shared"},
|
||
{type: "literal", value: ", ", source: "shared"},
|
||
{type: "hour", value: "7", source: "startRange"},
|
||
{type: "literal", value: " – ", source: "shared"},
|
||
{type: "hour", value: "10", source: "endRange"},
|
||
{type: "literal", value: " ", source: "shared"},
|
||
{type: "dayPeriod", value: "PM", source: "shared"}
|
||
];
|
||
dtf = new Intl.DateTimeFormat(["en"], {month: "short", day: "numeric", hour: "numeric"});
|
||
const ret2 = dtf.formatRangeToParts(date2, date3);
|
||
assertEquals(expected2, ret2);
|