This repository was archived by the owner on Apr 18, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2
This repository was archived by the owner on Apr 18, 2022. It is now read-only.
Improve test coverage for time.ts #7
Copy link
Copy link
Open
Labels
help wantedExtra attention is neededExtra attention is needed
Description
I removed the last 2 tests here because they relied on system time and would intermittently fail. Need to figure out a better way to test FakeTime.
Lines 303 to 360 in a22be7f
| Deno.test("FakeTime ticks forward when advanceRate is set", async () => { | |
| let time: FakeTime = new FakeTime(null, { advanceRate: 1 }); | |
| let start: number = Date.now(); | |
| try { | |
| assertEquals(Date.now(), start); | |
| await delay(11); | |
| assertEquals(Date.now(), start + 10); | |
| await delay(6); | |
| assertEquals(Date.now(), start + 10); | |
| await delay(16); | |
| assertEquals(Date.now(), start + 30); | |
| time.restore(); | |
| time = new FakeTime(null, { advanceRate: 1000 }); | |
| start = Date.now(); | |
| assertEquals(Date.now(), start); | |
| await delay(11); | |
| assertEquals(Date.now(), start + 10000); | |
| await delay(6); | |
| assertEquals(Date.now(), start + 10000); | |
| await delay(16); | |
| assertEquals(Date.now(), start + 30000); | |
| } finally { | |
| time.restore(); | |
| } | |
| }); | |
| Deno.test("FakeTime ticks forward at advanceFrequency when advanceRate is set", async () => { | |
| let time: FakeTime = new FakeTime( | |
| null, | |
| { advanceRate: 1, advanceFrequency: 15 }, | |
| ); | |
| let start: number = Date.now(); | |
| try { | |
| assertEquals(Date.now(), start); | |
| await delay(16); | |
| assertEquals(Date.now(), start + 15); | |
| await delay(11); | |
| assertEquals(Date.now(), start + 15); | |
| await delay(21); | |
| assertEquals(Date.now(), start + 45); | |
| time.restore(); | |
| time = new FakeTime(null, { advanceRate: 1000, advanceFrequency: 15 }); | |
| start = Date.now(); | |
| assertEquals(Date.now(), start); | |
| await delay(16); | |
| assertEquals(Date.now(), start + 15000); | |
| await delay(11); | |
| assertEquals(Date.now(), start + 15000); | |
| await delay(21); | |
| assertEquals(Date.now(), start + 45000); | |
| } finally { | |
| time.restore(); | |
| } | |
| }); |
Metadata
Metadata
Assignees
Labels
help wantedExtra attention is neededExtra attention is needed