diff --git a/__tests__/detailed/bot_events.ts b/__tests__/detailed/bot_events.ts
index b853217da7f83d5a8233e1a8b9e572deb18ebd38..2db7a397cca50f8a00d1434eaea2dbd66851ee6c 100644
--- a/__tests__/detailed/bot_events.ts
+++ b/__tests__/detailed/bot_events.ts
@@ -120,7 +120,7 @@ test.describe("WorkerBee Bot events test", () => {
 
           res();
         }),
-        new Promise((_, rej) => { setTimeout(rej, hiveBlockInterval * 2, new Error("Test timeout")); })
+        new Promise((_, rej) => { setTimeout(rej, hiveBlockInterval * 3, new Error("Test timeout")); })
       ]);
 
       bot.stop();
diff --git a/src/queen.ts b/src/queen.ts
index a5379208582d296f2579e4e7c3b521b4c31fab26..ef366997976c3a31eef5d32c30f9e76884e09457 100644
--- a/src/queen.ts
+++ b/src/queen.ts
@@ -61,7 +61,7 @@ export class QueenBee<TPreviousSubscriberData extends object = {}> {
     // Optimize by not creating a logical OR filter for only one filter
     const orFilter: FilterBase = committedFilters.length === 1 ? committedFilters[0] : new LogicalOrFilter(this.worker, committedFilters);
 
-    this.worker.mediator.registerListener(observer, orFilter, this.providers.values());
+    this.worker.mediator.registerListener(observer, orFilter, Array.from(this.providers.values()));
 
     this.filterContainers = [];
     this.providers = new Map();