我正在嘗試使用 mocha 對非導出函數運行單元測試,但它給出了錯誤“xx 不是函數”。示例結構就像 ff 代碼,其中我想測試函數 isParamValid。settings.js 中的代碼格式已經存在于我們的系統中,所以我無法重構它。// settings.jsconst settings = (() => { const isParamValid = (a, b) => { // process here } const getSettings = (paramA, paramB) => { isParamValid(paramA, paramB); } return { getSettings, }})();module.exports = settings;我試過 ff 代碼來測試它,但是 mocha 給出了錯誤 ReferenceError: isParamValid is not defined// settings.test.jsconst settings= rewire('./settings.js');describe('isParamValid', () => { it('should validate param', () => { let demo = settings.__get__('isParamValid'); expect(demo(0, 1)).to.equal(true); expect(demo(1, 0)).to.equal(true); expect(demo(1, 1)).to.equal(false); }) })
非導出函數的 Mocha 單元測試返回“xx 不是函數”
天涯盡頭無女友
2022-12-29 10:28:54