test: message sending from cluster worker
authorJérôme Benoit <jerome.benoit@sap.com>
Mon, 26 Jun 2023 22:37:35 +0000 (00:37 +0200)
committerJérôme Benoit <jerome.benoit@sap.com>
Mon, 26 Jun 2023 22:37:35 +0000 (00:37 +0200)
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
tests/worker/cluster-worker.test.js

index f026862d033838c837523f4547e7b1cb078fde2e..2d9104bb3c185b52bf05f8ec114d8d7008745583 100644 (file)
@@ -2,6 +2,16 @@ const { expect } = require('expect')
 const { ClusterWorker } = require('../../lib')
 
 describe('Cluster worker test suite', () => {
+  let numberOfMessagesSent = 0
+  const send = function () {
+    ++numberOfMessagesSent
+  }
+  class SpyWorker extends ClusterWorker {
+    getMainWorker () {
+      return { send }
+    }
+  }
+
   it('Verify worker has default maxInactiveTime', () => {
     const worker = new ClusterWorker(() => {})
     expect(worker.opts.maxInactiveTime).toStrictEqual(60000)
@@ -12,4 +22,10 @@ describe('Cluster worker test suite', () => {
     const worker = new ClusterWorker(() => {})
     expect(worker.handleError(errorMessage)).toStrictEqual(errorMessage)
   })
+
+  it('Verify worker invoke the getMainWorker() and send() methods', () => {
+    const worker = new SpyWorker(() => {})
+    worker.sendToMainWorker({ ok: 1 })
+    expect(numberOfMessagesSent).toBe(1)
+  })
 })