time-fast-forward
Control the system time (Date, hrtime) in your tests, without freezing it (unlike in many other libraries).
Mock date and time both in NodeJS and web applications. Supports typescript.
Installation
npm install --save-dev time-fast-forward
Examples
; console.lognew Date; // -> Sat Sep 12 2020 01:18:21 // Add one hour to the current clockshiftTimeBy60 * 60 * 1000;console.lognew Date; // -> Sat Sep 12 2020 02:18:21 // Shift -2 hours from now (-1 hour from the original time in this example)shiftTimeBy-2 * 60 * 60 * 1000;console.lognew Date; // -> Sat Sep 12 2020 00:18:21 // Jump to a given date and time. Mind when providing anything relative herejumpToTime"Fri, 11 Sep 2022 22:26:43 GMT"; // jumpToTime(2020, 1, 3), etcconsole.lognew Date; // -> Fri Sep 11 2022 22:26:43 resetTime; // Get back to the normal timeconsole.lognew Date; // -> Sat Sep 12 2020 01:18:21
This library can also potentially support time freezing, PRs for this are welcome:
console.lognew Date; // -> Sat Sep 12 2020 01:18:21 // note seconds here ^setTimeout, 1000;