Something went wrong. Try again.
[READ-ONLY] Mirror of https://github.com/wojtekmaj/async-array-utils. A collection of array-related async utilities.
array array-methods async promise utils
Something went wrong. Try again.
async-array-utils test-utils.js
1.3 kB · 70 lines
JavaScript
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071export function getRandomTime() { return Math.random() * 100;}
export function getTimer() { let startTime;
function start() { startTime = new Date(); }
function stop() { const endTime = new Date();
return endTime - startTime; }
return { start, stop };}
export function makeDelayed(fn, delay = getRandomTime()) { return function delayedFunction(x) { return new Promise( (resolve) => setTimeout(() => { resolve(fn(x)); }, delay), ); };}
export function duplicate(x) { return x * 2;}
export const duplicateInRandomTime = makeDelayed(duplicate);
export function largerThanTwo(x) { return x > 2;}
export const largerThanTwoInRandomTime = makeDelayed(largerThanTwo);
export function largerThanOneHundred(x) { return x > 100;}
export const largerThanOneHundredInRandomTime = makeDelayed(largerThanOneHundred);
export function makePushDuplicate() { const arr = [];
function pushDuplicate(x) { arr.push(x * 2); }
return [arr, pushDuplicate];}
export function makePushDuplicateInRandomTime() { const arr = [];
async function pushDuplicate(x) { arr.push(await duplicateInRandomTime(x)); }
return [arr, pushDuplicate];}
export const inputArr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];export const doubleInputArr = inputArr.map(duplicate);