2
私はこのnodejのテストをテストするとき、私は宣言されていないdone関数のエラーを受け取ります。非同期テストとフックの場合、 "done()"が呼び出されていることを確認してください。プロミスを返す場合、それが解決することを確認してください
Error: Timeout of 2000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves.
コメントでMFALのリンクが助けた@私のテストコードは、私が行ってコールバックが、それでもdone();
it('remove existing subdocument', (done) => {
const Vic = new User({
name: 'Vic',
posts: [{ title: 'Leaning Nodejs' }]
});
vic.save()
.then(() => User.findOne({ name: 'Vic' }))
.then((user) => {
const post = user.posts[0];
post.remove();
return user.save();
})
.then(() => User.findOne({ name: 'Vic' }))
.then((user) => {
assert(user.posts.length === 0);
done();
});
});
この記事をチェックしてください。https://wietse.loves.engineering/testing-promises-with-mochaを-90df8b7d2e35 – MFAL