我正在尝试测试GET端点,但是出现此错误:
Uncaught AssertionError: expected { Object (_bsontype, id) } to equal '5be02038cf97ed1cc47feb8a'
我的测试是:
it("it should GET a user by the given id", done => {
let newUser = new User({
email: "bloggs@test.com",
givenName: "Willmott",
familyName: "Bloggs"
});
newUser.save((err, newUser) => {
let { _id: id } = newUser;
chai
.request(app)
.get("/users/" + id)
.send(newUser)
.end((err, res) => {
let { body: { _id } } = res;
expect(id).to.equal(_id);
done();
});
});
});
如何让expect(id).to.equal(_id);
通过?
答案 0 :(得分:0)
看起来其中一个是对象(_id
),另一个是字符串(id
)。您可能不想比较整个对象,而是要比较对象的某些属性。考虑到这看起来像是使用bson对象的数据库查找,我猜您可能可以调用toString()
吗?至少,如果实际上是MongoDB UserId,这可能会起作用:
expect(id).to.equal(_id.toString());