UNPKG

redis-smq-rest-api

Version:
58 lines 5.01 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const redis_smq_1 = require("redis-smq"); const supertest_1 = __importDefault(require("supertest")); const vitest_1 = require("vitest"); const config_js_1 = require("../../../../tests/common/config.js"); const create_queue_js_1 = require("../../../../tests/common/create-queue.js"); const publish_message_js_1 = require("../../../../tests/common/publish-message.js"); const save_consumer_group_js_1 = require("../../../../tests/common/save-consumer-group.js"); (0, vitest_1.describe)('countConsumerGroupPendingMessagesController', () => { (0, vitest_1.it)('HTTP 200 OK', () => __awaiter(void 0, void 0, void 0, function* () { var _a, _b, _c; const { queue } = yield (0, create_queue_js_1.createQueue)('my-queue', redis_smq_1.EQueueType.LIFO_QUEUE, redis_smq_1.EQueueDeliveryModel.PUB_SUB); const consumerGroup1 = yield (0, save_consumer_group_js_1.saveConsumerGroup)(queue, 'my-group1'); const consumerGroup2 = yield (0, save_consumer_group_js_1.saveConsumerGroup)(queue, 'my-group2'); const batch1 = yield (0, publish_message_js_1.publishMessage)(queue); (0, vitest_1.expect)(batch1.length).toEqual(2); const batch2 = yield (0, publish_message_js_1.publishMessage)(queue); (0, vitest_1.expect)(batch2.length).toEqual(2); const request = (0, supertest_1.default)(`http://127.0.0.1:${(_a = config_js_1.config.apiServer) === null || _a === void 0 ? void 0 : _a.port}`); const response1 = yield request.get(`/api/v1/namespaces/${queue.ns}/queues/${queue.name}/consumer-groups/${consumerGroup1}/total-messages`); (0, vitest_1.expect)(response1.status).toEqual(200); (0, vitest_1.expect)((_b = response1.body) === null || _b === void 0 ? void 0 : _b.data).toEqual(2); const response2 = yield request.get(`/api/v1/namespaces/${queue.ns}/queues/${queue.name}/consumer-groups/${consumerGroup2}/total-messages`); (0, vitest_1.expect)(response2.status).toEqual(200); (0, vitest_1.expect)((_c = response2.body) === null || _c === void 0 ? void 0 : _c.data).toEqual(2); })); (0, vitest_1.it)('HTTP 400 BAD REQUEST: QueueInvalidQueueParameterError', () => __awaiter(void 0, void 0, void 0, function* () { var _a, _b, _c, _d, _e; const request = (0, supertest_1.default)(`http://127.0.0.1:${(_a = config_js_1.config.apiServer) === null || _a === void 0 ? void 0 : _a.port}`); const response1 = yield request.get(`/api/v1/namespaces/$$$/queues/@@@@/consumer-groups/******/total-messages`); (0, vitest_1.expect)(response1.status).toEqual(400); (0, vitest_1.expect)((_c = (_b = response1.body) === null || _b === void 0 ? void 0 : _b.error) === null || _c === void 0 ? void 0 : _c.code).toEqual(400); (0, vitest_1.expect)((_e = (_d = response1.body) === null || _d === void 0 ? void 0 : _d.error) === null || _e === void 0 ? void 0 : _e.message).toEqual('QueueInvalidQueueParameterError'); })); (0, vitest_1.it)('HTTP 400 BAD REQUEST: QueueMessagesConsumerGroupIdNotSupportedError', () => __awaiter(void 0, void 0, void 0, function* () { var _a, _b, _c, _d, _e; const { queue } = yield (0, create_queue_js_1.createQueue)('my-queue', redis_smq_1.EQueueType.LIFO_QUEUE, redis_smq_1.EQueueDeliveryModel.POINT_TO_POINT); const request = (0, supertest_1.default)(`http://127.0.0.1:${(_a = config_js_1.config.apiServer) === null || _a === void 0 ? void 0 : _a.port}`); const response1 = yield request.get(`/api/v1/namespaces/${queue.ns}/queues/${queue.name}/consumer-groups/gp1/total-messages`); (0, vitest_1.expect)(response1.status).toEqual(400); (0, vitest_1.expect)((_c = (_b = response1.body) === null || _b === void 0 ? void 0 : _b.error) === null || _c === void 0 ? void 0 : _c.code).toEqual(400); (0, vitest_1.expect)((_e = (_d = response1.body) === null || _d === void 0 ? void 0 : _d.error) === null || _e === void 0 ? void 0 : _e.message).toEqual('QueueMessagesConsumerGroupIdNotSupportedError'); })); }); //# sourceMappingURL=countConsumerGroupPendingMessagesController.test.js.map