The communications platform that puts data protection first.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
Rocket.Chat/apps/meteor/tests/mocks/utils/createDeferredMockFn.ts

19 lines
479 B

export function createDeferredPromise<R = void>() {
let resolve!: (value: R | PromiseLike<R>) => void;
let reject!: (reason?: unknown) => void;
const promise = new Promise<R>((res, rej) => {
resolve = res;
reject = rej;
});
return { promise, resolve, reject };
}
function createDeferredMockFn<R = void>() {
const deferred = createDeferredPromise<R>();
const fn = jest.fn(() => deferred.promise);
return { ...deferred, fn };
}
export default createDeferredMockFn;