Temporal: Add tests for conversion of calendar and time zone IDs in constructors

Now that we don't have to deal with strings or objects as input to the
calendar ID or time zone ID parameter of constructors, we accept only the
data that actually goes into the internal slots.
This commit is contained in:
Philip Chimento 2024-06-28 01:13:39 +03:00 committed by Ms2ger
parent cb13595617
commit 3a7a72aef5
6 changed files with 84 additions and 0 deletions

View File

@ -0,0 +1,14 @@
// Copyright (C) 2024 Igalia, S.L. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-temporal.plaindate.constructor
description: An ISO string is not valid input for a constructor's calendar param
features: [Temporal]
---*/
assert.throws(
RangeError,
() => new Temporal.PlainDate(2000, 5, 2, "1997-12-04[u-ca=iso8601]"),
"An ISO string is not a valid calendar ID for constructor parameter"
);

View File

@ -0,0 +1,14 @@
// Copyright (C) 2024 Igalia, S.L. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-temporal.plaindatetime.constructor
description: An ISO string is not valid input for a constructor's calendar param
features: [Temporal]
---*/
assert.throws(
RangeError,
() => new Temporal.PlainDateTime(2000, 5, 2, 15, 23, 30, 987, 654, 321, "1997-12-04[u-ca=iso8601]"),
"An ISO string is not a valid calendar ID for constructor parameter"
);

View File

@ -0,0 +1,14 @@
// Copyright (C) 2024 Igalia, S.L. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-temporal.plainmonthday.constructor
description: An ISO string is not valid input for a constructor's calendar param
features: [Temporal]
---*/
assert.throws(
RangeError,
() => new Temporal.PlainMonthDay(12, 15, "1997-12-04[u-ca=iso8601]", 1972),
"An ISO string is not a valid calendar ID for constructor parameter"
);

View File

@ -0,0 +1,14 @@
// Copyright (C) 2024 Igalia, S.L. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-temporal.plainyearmonth.constructor
description: An ISO string is not valid input for a constructor's calendar param
features: [Temporal]
---*/
assert.throws(
RangeError,
() => new Temporal.PlainYearMonth(2000, 5, "1997-12-04[u-ca=iso8601]", 1),
"An ISO string is not a valid calendar ID for constructor parameter"
);

View File

@ -0,0 +1,14 @@
// Copyright (C) 2024 Igalia, S.L. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-temporal.zoneddatetime.constructor
description: An ISO string is not valid input for a constructor's calendar param
features: [Temporal]
---*/
assert.throws(
RangeError,
() => new Temporal.ZonedDateTime(0n, "UTC", "1997-12-04[u-ca=iso8601]"),
"An ISO string is not a valid calendar ID for constructor parameter"
);

View File

@ -0,0 +1,14 @@
// Copyright (C) 2024 Igalia, S.L. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-temporal.zoneddatetime.constructor
description: An ISO string is not valid input for a constructor's time zone param
features: [Temporal]
---*/
assert.throws(
RangeError,
() => new Temporal.ZonedDateTime(0n, "1997-12-04T12:34[+01:00]", "iso8601"),
"An ISO string is not a valid calendar ID for constructor parameter"
);