如何使本机节点mongo在回调中返回错误

时间:2014-01-14 19:05:02

标签: node.js node-mongodb-native

我需要在我正在处理的节点应用中测试错误处理。如何让Mongo在其回调中返回错误,以便我可以在我的应用程序中测试错误处理?

collection.findOne({a: b}, function(err, item) {
   // how can I build a query to make an err?
});

3 个答案:

答案 0 :(得分:0)

在您的测试中,您可以使用返回错误的模拟虚拟驱动程序,而不是require您的实际Mongo驱动程序。

答案 1 :(得分:0)

我想的一种方法是使用无效的操作员:

collection.findOne({foo: {'$fooooo': true}}, function(err, item) {
  console.log(err);
});

打印:

{ [MongoError: invalid operator: $fooooo] name: 'MongoError' }

答案 2 :(得分:-1)

在CLI中运行thisIsNotACollection.findOne({a:b})给出 - ReferenceError:未定义thisIsNotACollection。只要您从未将thisIsNotACollection定义为集合,就应该始终收到错误。