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 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 | 36x 36x 36x 36x 36x 36x 36x 36x 36x 36x 36x 36x 3x 3x 3x 3x 3x 36x 7x 7x 7x 7x 7x 36x 8x 8x 26x 8x 8x 8x 8x 8x 8x 36x 8x 8x 10x 8x 8x 8x 8x 8x 8x 36x 1x 1x 1x 1x 1x | import { IConfig, TQueueParams } from 'redis-smq/dist/types'; import { config } from './config'; import { promisifyAll } from 'bluebird'; import { events, Message } from 'redis-smq'; import { untilConsumerEvent, untilMessageAcknowledged, } from './consumer-events'; import { getProducer } from './producers'; import { getConsumer } from './consumers'; import { getQueueManagerAsync } from './queue-manager'; import { defaultQueue } from './common'; export async function createQueue( queue: string | TQueueParams, priorityQueuing: boolean, ) { const qm = await getQueueManagerAsync(); await qm.queue.createAsync(queue, priorityQueuing); } export async function produceMessageWithPriority( queue: TQueueParams = defaultQueue, cfg: IConfig = config, ) { const producer = promisifyAll(getProducer(cfg)); const message = new Message(); message.setPriority(Message.MessagePriority.LOW).setQueue(queue); await producer.produceAsync(message); return { message, producer, queue }; } export async function produceMessage( queue: TQueueParams = defaultQueue, cfg: IConfig = config, ) { const producer = getProducer(cfg); const message = new Message(); message.setBody({ hello: 'world' }).setQueue(queue); await producer.produceAsync(message); return { producer, message, queue }; } export async function produceAndDeadLetterMessage( queue: TQueueParams = defaultQueue, cfg: IConfig = config, ) { const producer = getProducer(cfg); const consumer = getConsumer({ cfg, queue, messageHandler: jest.fn(() => { throw new Error('Explicit error'); }), }); const message = new Message(); message.setBody({ hello: 'world' }).setQueue(queue); await producer.produceAsync(message); consumer.run(); await untilConsumerEvent(consumer, events.MESSAGE_DEAD_LETTERED); return { producer, consumer, message, queue }; } export async function produceAndAcknowledgeMessage( queue: TQueueParams = defaultQueue, cfg: IConfig = config, ) { const producer = getProducer(cfg); const consumer = getConsumer({ cfg, queue, messageHandler: jest.fn((msg, cb) => { cb(); }), }); const message = new Message(); message.setBody({ hello: 'world' }).setQueue(queue); await producer.produceAsync(message); consumer.run(); await untilMessageAcknowledged(consumer); return { producer, consumer, queue, message }; } export async function scheduleMessage( queue: TQueueParams = defaultQueue, cfg: IConfig = config, ) { const producer = promisifyAll(getProducer(cfg)); const message = new Message(); message.setScheduledDelay(10000).setQueue(queue); await producer.produceAsync(message); return { message, producer, queue }; } |