Necesito ayuda para escribir casos de prueba. Quiero probar si getSomeData se llama solo una vez.
function getSomeData(foo, callback) { return new Promise((resolve, reject) => { setTimeout(()=> { console.log('async request'); resolve(callback(2 * foo)); }, 1000); }); }Ahora quiero probar si la función memorizada se llama una o dos veces, incluso si memoizedGetSomeData se llama dos veces
function memoize(fn) { const cache = {}; return async function() { const args = JSON.stringify(arguments); console.log('arguments passed to memoize fn: ', args); console.log('cache data: ', cache); cache[args] = cache[args] || fn.apply(undefined, arguments); return cache[args] } } const memoizedGetSomeData = memoize(getSomeData); memoizedGetSomeData(1, callback_fn); memoizedGetSomeData(1, callback_fn);