53de7345bd
Previously, DateTimeFormat.prototype.formatToParts returned an object with the property key 'dayperiod' which is incorrect as per the spec. This patch updates the property key to say 'dayPeriod', making this spec compliant. R=cira@chromium.org Bug: chromium:865351 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: I37f50797387bc69d5e29d7c2911bc5cc0fad37ac Reviewed-on: https://chromium-review.googlesource.com/1145304 Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: PhistucK <phistuck@gmail.com> Cr-Commit-Position: refs/heads/master@{#55922}
21 lines
962 B
JavaScript
21 lines
962 B
JavaScript
// Copyright 2016 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.
|
|
|
|
var d = new Date(2016, 11, 15, 14, 10, 34);
|
|
var df = Intl.DateTimeFormat("ja",
|
|
{hour: 'numeric', minute: 'numeric', second: 'numeric', year: 'numeric',
|
|
month: 'numeric', day: 'numeric', timeZoneName: 'short', era: 'short',
|
|
hour12: true});
|
|
|
|
var formattedParts = df.formatToParts(d);
|
|
|
|
var formattedReconstructedFromParts = formattedParts.map((part) => part.value)
|
|
.reduce((accumulated, part) => accumulated + part);
|
|
assertEquals(df.format(d), formattedReconstructedFromParts);
|
|
// 西暦2016年11月15日 午後02:10:34 GMT-7
|
|
assertEquals(["era", "year", "literal", "month", "literal", "day", "literal",
|
|
"dayPeriod", "hour", "literal", "minute", "literal", "second",
|
|
"literal", "timeZoneName"
|
|
], formattedParts.map((part) => part.type));
|