All files / controllers healthcheck.controller.js

100% Statements 11/11
100% Branches 2/2
100% Functions 1/1
100% Lines 11/11

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 244x 4x 4x 4x   4x 2x 2x 1x     1x           1x     4x      
const { status: httpStatus } = require('http-status');
const ApiError = require('../utils/ApiError');
const catchAsync = require('../utils/catchAsync');
const { healthcheckService } = require('../services');
 
const healthcheck = catchAsync(async (_req, res) => {
  const isDbHealthy = await healthcheckService.checkConnection();
  if (!isDbHealthy) {
    throw new ApiError(httpStatus.SERVICE_UNAVAILABLE, 'DB unavailabe');
  }
 
  const body = {
    uptime: process.uptime(),
    message: 'OK',
    timestamp: Date.now(),
  };
 
  res.status(httpStatus.OK).send(body);
});
 
module.exports = {
  healthcheck,
};