在使用Mongo Shell但在Meteor服务器代码中调用_ensureIndex
/ createIndex
而没有之后,是否有人找到了检查是否已创建索引的方法?
我正在编写一个包测试,我想断言,索引是在一些包代码执行期间创建的。
答案 0 :(得分:2)
我使用此代码扩展集合原型以同步获取索引:
<强> getIndexes.js
强>:
const Future = Npm.require('fibers/future');
Mongo.Collection.prototype.getIndexes = function() {
const raw = this.rawCollection();
const future = new Future();
raw.indexes(function(err, res) {
if(err) {
future.throw(err);
}
future.return(indexes);
});
return future.wait();
};