From 9e0990ee87729ec75f74edcdd8f3075dfd625d8a Mon Sep 17 00:00:00 2001 From: Renan Castro Date: Thu, 18 Jan 2024 22:47:31 -0300 Subject: [PATCH] fix: add regression test --- packages/ddp-server/livedata_server_tests.js | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/packages/ddp-server/livedata_server_tests.js b/packages/ddp-server/livedata_server_tests.js index cbdf4b632e..867283fa4f 100644 --- a/packages/ddp-server/livedata_server_tests.js +++ b/packages/ddp-server/livedata_server_tests.js @@ -350,6 +350,21 @@ Meteor.methods({ }, }); +Meteor.publish("livedata_server_test_sub_chain", async function () { + await new Promise(r => setTimeout(r, 2000)); + this.ready(); + return null; +}); + +Tinytest.addAsync("livedata server - waiting for subscription chain", (test, onComplete) => makeTestConnection(test, async (clientConn, serverConn) => { + const handlers = []; + for(let i=0; i< 10; i++){ + handlers.push(clientConn.subscribe('livedata_server_test_sub_chain')); + } + await new Promise(r => setTimeout(r, 3000)); + test.equal(handlers.map(sub => sub.ready()).filter(o=>o).length === 1, true); + onComplete(); +})); Tinytest.addAsync("livedata server - waiting for Promise", (test, onComplete) => makeTestConnection(test, async (clientConn, serverConn) => { const testResolvedPromiseResult = await clientConn.callAsync(