测试后,在mongoose中删除所有连接的数据库

时间:2017-04-11 23:37:25

标签: javascript node.js mongodb mongoose

我正在设计一个测试环境,我需要在测试全部完成后重置所有连接的mongodb数据库(在所有测试用例中......)。

Code Here

现在我尝试了以下内容,

Mongoose.js: remove collection or DB

drop database with mongoose

我仍然无法使其发挥作用。

那么除了放弃我还能做什么?

2 个答案:

答案 0 :(得分:0)

添加保证,仅在成功连接时才删除数据库。

My Answer

答案 1 :(得分:0)

作为替代方法,Mongoose会在默认实例上为新实例导出构造函数。所以这样的事情是可能的。

var Mongoose = require('mongoose').Mongoose;

var instance1 = new Mongoose();
instance1.connect('foo');`

var instance2 = new Mongoose();
instance2.connect('bar');

在处理单独的数据源时,以及当您希望为每个用户或请求创建单独的数据库上下文时,这非常有用。您需要小心,因为在执行此操作时可能会创建大量连接。确保在不需要实例时调用disconnect(),并限制每个实例创建的池大小。