Files
ladybird/Libraries/LibJS/Tests/builtins/Temporal/ZonedDateTime/ZonedDateTime.js
Timothy Flynn 019c529c07 Meta: Increase the line length enforced by prettier to 120
This matches our coding style recommendation in CodingStyle.md, and
matches our python formatting.
2025-10-31 19:55:50 -04:00

37 lines
1.3 KiB
JavaScript

describe("errors", () => {
test("called without new", () => {
expect(() => {
Temporal.ZonedDateTime();
}).toThrowWithMessage(TypeError, "Temporal.ZonedDateTime constructor must be called with 'new'");
});
test("out-of-range epoch nanoseconds value", () => {
expect(() => {
new Temporal.ZonedDateTime(8_640_000_000_000_000_000_001n);
}).toThrowWithMessage(
RangeError,
"Invalid epoch nanoseconds value, must be in range -86400 * 10^17 to 86400 * 10^17"
);
expect(() => {
new Temporal.ZonedDateTime(-8_640_000_000_000_000_000_001n);
}).toThrowWithMessage(
RangeError,
"Invalid epoch nanoseconds value, must be in range -86400 * 10^17 to 86400 * 10^17"
);
});
});
describe("normal behavior", () => {
test("length is 2", () => {
expect(Temporal.ZonedDateTime).toHaveLength(2);
});
test("basic functionality", () => {
const timeZone = "UTC";
const zonedDateTime = new Temporal.ZonedDateTime(0n, timeZone);
expect(typeof zonedDateTime).toBe("object");
expect(zonedDateTime).toBeInstanceOf(Temporal.ZonedDateTime);
expect(Object.getPrototypeOf(zonedDateTime)).toBe(Temporal.ZonedDateTime.prototype);
});
});