1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 00:27:45 +00:00

LibJS: Add a function to ensure calls are made within the same second

Before these tests could be flaky if they happened to be called around
the edge of a second. Now we try up to 5 times to execute the tests
while staying within the same second.
This commit is contained in:
davidot 2022-12-02 17:25:40 +01:00 committed by Linus Groh
parent 146d45a652
commit cf0d30add6
3 changed files with 41 additions and 12 deletions

View file

@ -37,12 +37,15 @@ describe("correct behavior", () => {
},
};
const plainDateTime = Temporal.Now.plainDateTime(calendar, "UTC");
const plainDateTimeWithOffset = Temporal.Now.plainDateTime(calendar, timeZone);
const [plainDateTime, plainDateTimeWithOffset] = withinSameSecond(() => {
return [
Temporal.Now.plainDateTime(calendar, "UTC"),
Temporal.Now.plainDateTime(calendar, timeZone),
];
});
if (plainDateTime.year !== plainDateTimeWithOffset.year) return;
// Let's hope the duration between the above two lines is less than a second :^)
const differenceSeconds =
plainDateTimeToEpochSeconds(plainDateTimeWithOffset) -
plainDateTimeToEpochSeconds(plainDateTime);
@ -58,12 +61,15 @@ describe("correct behavior", () => {
},
};
const plainDateTime = Temporal.Now.plainDateTime(calendar, "UTC");
const plainDateTimeWithOffset = Temporal.Now.plainDateTime(calendar, timeZone);
const [plainDateTime, plainDateTimeWithOffset] = withinSameSecond(() => {
return [
Temporal.Now.plainDateTime(calendar, "UTC"),
Temporal.Now.plainDateTime(calendar, timeZone),
];
});
if (plainDateTime.year !== plainDateTimeWithOffset.year) return;
// Let's hope the duration between the above two lines is less than a second :^)
const differenceSeconds =
plainDateTimeToEpochSeconds(plainDateTimeWithOffset) -
plainDateTimeToEpochSeconds(plainDateTime);