All files / app/routes/api/group/group-id/invite index.ts

100% Statements 8/8
100% Branches 0/0
100% Functions 0/0
100% Lines 8/8

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 301x 1x 1x     1x 1x   1x                                   1x   1x  
import {Router} from 'express';
import inviteUserController from './invite-user-to-group-controller';
import {
  createValidationRouter,
} from '@app/validators';
import {body, oneOf} from 'express-validator';
import {asyncWrapper} from '@util/async-wrapper';
 
const inviteUserToGroupRouter = Router({mergeParams: true}).post(
    '/',
    // Cannot use `createValidator` because it cannot handle oneOf
    createValidationRouter(
        'group:invite',
        oneOf([
          body('userId')
              .exists().withMessage('userId is missing')
              .isNumeric().withMessage('userId has to be a number'),
          body('username')
              .exists().withMessage('username is missing')
              .isString().withMessage('username has to be a string'),
        ]),
        'invite user',
    ),
    asyncWrapper(inviteUserController),
);
 
export default inviteUserToGroupRouter;
 
export * from './invite-user-to-group-controller';