mocha中的全局泄漏错误

我试图对apple推送通知库进行单元测试,但在尝试打开APN连接时出现了全局泄漏错误

这是我的配置错误还是节点apn或mocha中的错误

我不确定我是否了解checkGlobals在做什么。。。是否只是检查是否设置了任何全局变量

0)馈送“全部之前”挂钩:
错误:检测到全局泄漏:hasCert
在Runner.checkGlobals(/usr/lib/node_modules/mocha/lib/Runner.js:96:21)
跑者。<匿名>(/usr/lib/node_modules/mocha/lib/runner.js:41:44)
在Runner.emit(events.js:64:17)
at/usr/lib/node_modules/mocha/lib/runner.js:159:12
在Hook.run(/usr/lib/node_modules/mocha/lib/runnable.js:114:5)
下一步(/usr/lib/node_modules/mocha/lib/runner.js:157:10)
在阵列中。<匿名>(/usr/lib/node_modules/mocha/lib/runner.js:165:5)
在EventEmitter上进行回调(node.js:126:26)

是的,Mocha具有全局泄漏检测机制,如果您的测试代码引入全局变量,该机制会发出警报并失败

如果hasCert是在库中声明的,而您无法控制它的创建,您可以告诉Mocha忽略它

在命令行上

$mocha--globals hasCert

要引用文档,请执行以下操作:

[此选项]接受接受的全局变量名的逗号分隔列表。例如,假设您的应用程序故意公开一个全局命名的应用程序和YUI,您可能需要添加–globals app,YUI

在浏览器中:

mocha.setup({globals:['hasCert']});

发表评论