Chai-as-Promised、Mocha、および「すべき」方言を使用して、拒否された Promise の詳細をテストしようとしています。プロミスはbluebirdによって実装されます。
これはうまくいきます:
it('it should be rejected when given bad credentials', function () {
var promiseOfUsers = db.auth("bad", "credentials").getUsers();
return promiseOfUsers.should.eventually.be.rejectedWith(Error)
});
そのエラーには「ステータス」プロパティがあります。ステータスが 401 であることをアサートしたい
これは動作しません:
it('it should be rejected when given bad credentials', function () {
var promiseOfUsers = db.auth("bad", "credentials").getUsers();
return promiseOfUsers.should.eventually.be.rejectedWith(Error)
.that.has.property('status')
.that.equals(401)
});
「rejected」または rejectWith(Error) を参照せずにアサートしようとすると失敗し、エラーがコンソールに出力されるだけのようです。
不採用の理由を詳しく調べるにはどうすればよいですか?