Если вы взаимодействуете с действующей базой данных, возможно, что операция займет больше 2 секунд.Проверка успешной операции займет больше времени, чем отрицательная проверка, если перед взаимодействием с базой данных выполняется проверка на стороне сервера.
Вы можете увеличить время ожидания в mocha
, используя this.timeout(<some number in milliseconds>)
:
it('should create new note', (done) => {
this.timeout(9000); // set it to something big to see if it fixes your issue
const title = 'Test title';
const text = 'Test text';
const category = 'Test category';
request(app)
.post('/notes')
.send({title, text, category})
.expect(200)
.expect(res => {
expect(res.body.title).toBe(title);
})
.end((err, res) => {
if (err)
return done(err);
Note.find({text: text}).then(notes => {
expect(notes.length).toBe(1);
expect(notes[0].title).toBe(title);
done();
}).catch(err => done(err));
});
});
Единственное, о чем я могу думать, это то, что ваш серверный код где-то висит и не отправляет ответ (или что Notes.find()
не разрешает или отклоняет по какой-то причине).Ваш тестовый код выглядит хорошо для меня.