UNPKG

@case-contract-testing/case

Version:

Next-generation contract testing suite

36 lines (35 loc) 1.49 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.usersByQuery = exports.usersByPath = exports.health = exports.base = void 0; const userService_1 = require("../../domain/userService"); const responder_1 = __importDefault(require("./responder")); const base = ({ baseService }) => (req, res) => { (0, responder_1.default)(res).success(baseService(req.ip)); }; exports.base = base; const health = ({ healthService }) => (_req, res) => { if (healthService.ready()) { (0, responder_1.default)(res).success({ status: 'up' }); } else { (0, responder_1.default)(res).status(503, { status: 'down' }); } }; exports.health = health; const usersByPath = ({ userRepository }) => (req, res) => { const { userId } = req.params; if (typeof userId !== 'string') throw new Error('No userID provided'); (0, responder_1.default)(res).success((0, userService_1.makeUserService)({ userRepository }).getUser(userId)); }; exports.usersByPath = usersByPath; const usersByQuery = ({ userRepository }) => (req, res) => { const { id } = req.query; if (typeof id !== 'string') throw new Error('No userID provided'); (0, responder_1.default)(res).success((0, userService_1.makeUserService)({ userRepository }).getUser(id)); }; exports.usersByQuery = usersByQuery;