mirror of https://github.com/tc39/test262.git
19 lines
789 B
JavaScript
19 lines
789 B
JavaScript
// Copyright (C) 2021 Igalia, S.L. All rights reserved.
|
|
// This code is governed by the BSD license found in the LICENSE file.
|
|
/*---
|
|
esid: sec-temporal.plaintime.from
|
|
description: TypeError thrown if timeZone.getOffsetNanosecondsFor is not callable
|
|
features: [BigInt, Symbol, Temporal, arrow-function]
|
|
---*/
|
|
|
|
[undefined, null, true, Math.PI, 'string', Symbol('sym'), 42n, {}].forEach(notCallable => {
|
|
const timeZone = new Temporal.TimeZone("UTC");
|
|
const datetime = new Temporal.ZonedDateTime(1_000_000_000_987_654_321n, timeZone);
|
|
timeZone.getOffsetNanosecondsFor = notCallable;
|
|
assert.throws(
|
|
TypeError,
|
|
() => Temporal.PlainTime.from(datetime),
|
|
`Uncallable ${notCallable === null ? 'null' : typeof notCallable} getOffsetNanosecondsFor should throw TypeError`
|
|
);
|
|
});
|