mirror of
https://github.com/tc39/test262.git
synced 2025-08-18 00:18:26 +02:00
Temporal tests written for the SpiderMonkey implementation. Mostly covers edge cases around mathematical operations and regression tests for reported spec bugs.
57 lines
1.3 KiB
JavaScript
57 lines
1.3 KiB
JavaScript
// Copyright (C) 2022 André Bargull. All rights reserved.
|
|
// This code is governed by the BSD license found in the LICENSE file.
|
|
|
|
/*---
|
|
esid: sec-temporal.duration.from
|
|
description: >
|
|
Fractional parts are computed using exact mathematical values.
|
|
includes: [temporalHelpers.js]
|
|
features: [Temporal]
|
|
---*/
|
|
|
|
const tests = {
|
|
"PT0.999999999H": Temporal.Duration.from({
|
|
minutes: 59,
|
|
seconds: 59,
|
|
milliseconds: 999,
|
|
microseconds: 996,
|
|
nanoseconds: 400,
|
|
}),
|
|
"PT0.000000011H": Temporal.Duration.from({
|
|
minutes: 0,
|
|
seconds: 0,
|
|
milliseconds: 0,
|
|
microseconds: 39,
|
|
nanoseconds: 600,
|
|
}),
|
|
|
|
"PT0.999999999M": Temporal.Duration.from({
|
|
seconds: 59,
|
|
milliseconds: 999,
|
|
microseconds: 999,
|
|
nanoseconds: 940,
|
|
}),
|
|
"PT0.000000011M": Temporal.Duration.from({
|
|
seconds: 0,
|
|
milliseconds: 0,
|
|
microseconds: 0,
|
|
nanoseconds: 660,
|
|
}),
|
|
|
|
"PT0.999999999S": Temporal.Duration.from({
|
|
milliseconds: 999,
|
|
microseconds: 999,
|
|
nanoseconds: 999,
|
|
}),
|
|
"PT0.000000011S": Temporal.Duration.from({
|
|
milliseconds: 0,
|
|
microseconds: 0,
|
|
nanoseconds: 11,
|
|
}),
|
|
};
|
|
|
|
for (let [str, expected] of Object.entries(tests)) {
|
|
let actual = Temporal.Duration.from(str);
|
|
TemporalHelpers.assertDurationsEqual(actual, expected, str);
|
|
}
|