All files / src/routes posts_routes.ts

73.68% Statements 14/19
100% Branches 0/0
44.44% Functions 4/9
100% Lines 10/10

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 30 31 32 33                  7x     12x   8x   7x   7x   7x     7x   7x   7x     7x    
import express, { Request, Response, Router } from 'express';
import * as postsController from '../controllers/posts_controller';
import {CustomRequest} from "types/customRequest";
import {
    handleValidationErrors,
    validatePostData,
    validatePostDataOptional,
    validatePostIdParam
} from "../middleware/validation";
const router: Router = express.Router();
 
 
router.post('/', validatePostData, handleValidationErrors, (req: Request, res: Response) => postsController.addPost(req as CustomRequest, res));
 
router.get('/', (req: Request, res: Response) => postsController.getPosts(req, res));
 
router.get('/:postId', validatePostIdParam, handleValidationErrors,(req: Request, res: Response) => postsController.getPostById(req, res));
 
router.get('/like', (req: Request, res: Response) => postsController.getLikedPosts(req as CustomRequest, res));
 
router.put('/:postId', validatePostIdParam, validatePostData, handleValidationErrors, (req: Request, res: Response) => postsController.updatePost(req as CustomRequest, res));
 
// todo - swagger and stuff
router.get('/:postId/like', validatePostIdParam, handleValidationErrors, (req: Request, res: Response) => postsController.getLikesByPostId(req, res));
 
router.patch('/:postId', validatePostIdParam, validatePostDataOptional, handleValidationErrors, (req: Request, res: Response) => postsController.updatePost(req as CustomRequest, res));
 
router.delete('/:postId', validatePostIdParam, handleValidationErrors, (req: Request, res: Response) => postsController.deletePostById(req as CustomRequest, res));
 
 
router.put('/:postId/like', express.text(), (req: Request, res: Response) => postsController.updateLikeByPostId(req as CustomRequest, res));
 
export default router;