- api (v4):
tl; dr: :
exports.testExpressValidatorMiddleware = async (req, res, middlewares) => {
await Promise.all(middlewares.map(async (middleware) => {
await middleware(req, res, () => undefined);
}));
};
:
const { validationResult } = require('express-validator/check');
await testExpressValidatorMiddleware(req, res, expressValidatorMiddlewareArray);
const result = validationResult(req);
expect(result....
async/await. node-mocks-http req res.
:
express-validator . , :
[
check('addresses.*.street').exists(),
check('addresses.*.postalCode').isPostalCode(),
]
.
, , express .
, , (next ). next? , , - , .
const loggerMiddleware = (req, res, next) => {
console.log('req body is ' + req.body);
next();
console.log('res status is ' + res.status);
};
express-validator , next() . next().
next, TypeError:
middlewares.map((middleware) => {
middleware(req, res, () => undefined);
});
, express-validator promises, ...
middlewares.map(async (middleware) => {
await middleware(req, res, () => undefined);
});
, promises (Mozilla docs Promise.all ):
await Promise.all(middlewares.map(async (middleware) => {
await middleware(req, res, () => undefined);
}));
:
exports.testExpressValidatorMiddleware = async (req, res, middlewares) => {
await Promise.all(middlewares.map(async (middleware) => {
await middleware(req, res, () => undefined);
}));
};
. - , .