У меня такое чувство, что я иду за борт и мне нужна проверка работоспособности, я использую шут с SuperTest
Q1) Если ожидание expect(res.status).toBe(400);
не сработает, загорится ли ловушка?
Q2) Должен ли я throw error
или throw New Error()
Q3) Шутка просто справляется с этим, и мне не нужен оператор try catch?
const testUrl = '/register';
const headers = ['Accept', 'application/json'];
it('should validate that the `email` has already been registered and throw 400 error', async (done) => {
try {
const res = await request(app).post(testUrl).set(headers).send({
email: 'test@myDomain.com',
fullName: 'test user',
password: 'testPassword!',
});
expect(res.status).toBe(400);
expect(res.body.message).toEqual('You have already registered');
} catch (error) {
error.message = `${error.message}\n\nfailing query: ${testUrl}`;
throw error;
} finally {
done();
}
});