如何从Jest测试套件中将全局变量传递给模块?

时间:2019-04-23 12:58:07

标签: javascript jestjs

我正在使用这样的模式封装JavaScript函数的代码库。

settings = {
    gravity: 9.8
}

var coolMath = function(settings){
    function add(numA, numB){
        return numA + numB;
    }

    function getForceOfGravity(mass){
        return settings.gravity * mass;
    }

    return {
        add: add,
        getForceOfGravity: getForceOfGravity
    }
}(settings)

所有函数都封装在一个闭包中。设置作为全局变量公开给模块。请注意,设置显示为模块的参数。请知道,我一般都不喜欢全局变量。我认识到这种模式不是最佳模式,但这是相当大的代码库中的当前模式。

我想利用Jest对模块中的各种功能进行单元测试。

如何使用Jest将设置全局变量传递给coolMath模块?您可以提供的任何提示都将非常有帮助。

非常感谢!

0 个答案:

没有答案