Я сейчас пишу несколько тестов для наших хапи-маршрутов. Маршрут, который я хочу протестировать, выглядит следующим образом:
server.route(
{
method: 'POST',
path: '/',
options: {
tags: ['api'],
cors: true,
handler: async (req: Hapi.Request | any, h: Hapi.ResponseObject) => {
if (!req.params.userId) {
throw Boom.badRequest();
}
return 200;
}
}});
Итак, мой тест выглядит следующим образом:
it('should return 200', async () => {
const request : ServerInjectOptions = {
url: '/user',
method: 'POST',
payload: {
email: 'e@email.de',
password: 'secred',
firstname: 'John',
lastname: 'Doe'
},
app: {}
};
const response = await server.inject(request);
expect(response.statusCode).toEqual(200);
});
Как вы видите, маршрут ожидает параметр в массиве params с имя пользователя, но я не могу установить параметр для объекта ServerInjectOptions. Я получаю ошибку, что свойство не существует в типе ServerInjectOptions.
Есть ли другой способ установить массив параметров? Я не нашел что-то в документах, может быть, я пропустил это, и кто-то может сказать мне, где это найти.
Заранее спасибо