我已经创建了一个uploadSchema( mongoose.Schema) 字段(在其余部分中):key 和 bucket。他们每个人都不是唯一的,但我希望他们一起创建一个唯一的 ID。在我的代码中,我使用了这一行(在声明之后uploadSchema和之前uploadModel):
uploadSchema.index({ key: 1, bucket: 1 }, { unique: true, background: true });
但是,在我的测试(mocha和chai)中,没有强制执行索引,因此我可以创建两个具有相同键和存储桶的实例(在我的情况下)。例如,在我的代码中:
await uploadModel.create({ key: testUpload.key, bucket: testUpload.bucket,
name: 'name1', ownerID: USER.id, parent: null }).should.eventually.exist;
在那之后:
await uploadModel.create({key: testUpload.key, bucket: testUpload.bucket,
name: 'name1', ownerID: USER.id, parent: null }).should.eventually.be.rejected;
不会抛出正确的错误错误:
AssertionError: expected promise to be rejected but it was fulfilled with { Object ($__, isNew, ...) }
我没有正确使用它吗?还是索引和测试有问题?
一只斗牛犬
牧羊人nacy
相关分类