Если вы пытаетесь сделать e2e тест апи со стороны клиента - то вам надо делать полноценный запрос с аутентификацией, подставлять туда нужные токены-куки или как там у вас оно сделано, чтобы юзер в этот запрос был подставлен той логикой на сервере которая это делает.
Если вы хотите протестировать только эту функцию - то пишите для нее юнит-тест.
Robur, Вообще я делаю модульное тестирование. Если тестировать функцию отдельно, то нужно писать кучу моков для всего типа res.status итд. При использовании express и supertest этого делать не надо.
Владимир Голубь, я ва мне запрещаю тестировать как вы хотите.
Просто идея редактировать req напрямую в данном случае неправильная.
вы должны туда отправлть только то что клиент может отправить в обычном запросе. Поэтому вам supertest и не дает поменять ничего кроме хедеров и тела.
Если вы в тело будете отправлять юзера - то вы протестируете то чтохоть кто сможет отправить объект user на ваш сервер и выполнить запрос с его правами. Дело ваше, но звучит как что-то не очень желательное.
у вас в beforeEach написана какая-то авторизация, затем в тесте идет запрос - это правильная схема. и в тесте запрос уже должен быть авторизован. "авторизован" значит что мидлвары должны получить пользователя автоматически, без попыток их туда всунуть со стороны тестов.
Если у вас все это не работает - то тут может быть много причин, надо разбираться.