Use the following code to set up the crypto property globally. It will allow Jest to access
window.cryptoin the browser environmentglobal.cryptoin non-browsers environments. (Node/Typescript scripts).
It uses the globalThis which is now available on most of the latest browsers as well as Node.js 12+
const crypto = require('crypto');
Object.defineProperty(globalThis, 'crypto', {
value: {
getRandomValues: arr => crypto.randomBytes(arr.length)
}
});