node.js - Frågeparametrar som används med chai-http-förfrågan tilldelas inte _query-objektet
Jag skriver enhetstester för ett TS Node API.
Jag använder chai-http för att skapa/mocka förfrågningar, men att använda .query-alternativet som anges i dokumentationen här verkar inte faktiskt lägga till mina frågeparametrar i request-objektets qs-parameter.
const r = chai.request(server)
.get('/connections')
.query({
page: 1,
size: 10,
connection_id: id
})
ConnectionController.List(r, null);
När man inspekterar req-objektet har det lagt till dem i _header: _path: och :url men inget under _query eller qs. 🤔 Den underliggande funktionen som tar emot req kommer att försöka analysera värdet med req.query.page... req.query.size etc, men kraschar på grund av att request-query-objektet är undefined.
r.qs = Array(0) []
men _header: , _path: och url: visar
"GET /connections?page=1&size=10&connection_id=some_random_connection_id HTTP/1.1
Vet någon varför detta skulle vara fallet?
Finns det ett annat mocha-bibliotek för förfrågningar som kommer att tilldela frågeparametrar korrekt?
Jag har försökt lägga till dem manuellt på det här sättet, vilket fungerar och lägger till dem till qs. Men jag hade förväntat mig att .query() skulle lägga till dem här.
r.query.page = '1';
r.query.size = '10';
r.query.connection_id = 'random_id';