All files / src/common async.ts

0% Statements 0/3
100% Branches 0/0
0% Functions 0/2
0% Lines 0/3

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10                   
/**
 * Race an array of promises, returning whichever finishes first
 */
export function race <T>(promises: Promise<T>[]): Promise<T> {
  return new Promise((resolve, reject) => {
     for(const promise of promises)
        promise.then(resolve, reject);
  });
}