All files / redis-smq-monitor-app/tests/common websocket-rate-stream-worker.ts

100% Statements 17/17
100% Branches 3/3
100% Functions 4/4
100% Lines 17/17

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 3057x 57x 57x   57x   57x 8x 8x 8x 8x         8x       57x 57x 57x 8x 8x 8x   49x      
import WebsocketRateStreamWorker from '../../src/workers/websocket-rate-stream.worker';
import { getRedisInstance } from './redis-clients';
import { getQueueManager } from './queue-manager';
 
let websocketRateStreamWorker: WebsocketRateStreamWorker | null = null;
 
export async function startWebsocketRateStreamWorker(): Promise<void> {
  if (!websocketRateStreamWorker) {
    const redisClient = await getRedisInstance();
    const queueManager = await getQueueManager();
    websocketRateStreamWorker = new WebsocketRateStreamWorker(
      redisClient,
      queueManager,
      false,
    );
    websocketRateStreamWorker.run();
  }
}
 
export async function stopWebsocketRateStreamWorker(): Promise<void> {
  return new Promise<void>((resolve) => {
    if (websocketRateStreamWorker) {
      websocketRateStreamWorker.quit(() => {
        websocketRateStreamWorker = null;
        resolve();
      });
    } else resolve();
  });
}