chore: add Deferred.race test (#10432)

This commit is contained in:
Nikolay Vitkov 2023-06-21 22:51:15 +02:00 committed by GitHub
parent ff8529696d
commit 45a05e038b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -45,4 +45,18 @@ describe('DeferredPromise', function () {
}
expect(caught).toBeTruthy();
});
it('Deferred.race should cancel timeout', async function () {
const deferred = Deferred.create<void>();
const deferredTimeout = Deferred.create<void>({
message: 'Race did not stop timer',
timeout: this.timeout() + 50,
});
await Promise.all([
Deferred.race([deferred, deferredTimeout]),
deferred.resolve(),
]);
expect(deferredTimeout.value()).toBeInstanceOf(Error);
expect(deferredTimeout.value()?.message).toContain('Timeout cleared');
});
});