From 712a48bce13ac61413d2b81f0f855a1fbefa30b9 Mon Sep 17 00:00:00 2001 From: denihs Date: Tue, 14 Feb 2023 07:49:53 -0400 Subject: [PATCH] - fix test: 'mongo-livedata - async server-side insert, MONGO | STRING' --- packages/mongo/mongo_livedata_tests.js | 36 ++++++++++++++++---------- 1 file changed, 22 insertions(+), 14 deletions(-) diff --git a/packages/mongo/mongo_livedata_tests.js b/packages/mongo/mongo_livedata_tests.js index 118d16bb1b..d8bcb25b69 100644 --- a/packages/mongo/mongo_livedata_tests.js +++ b/packages/mongo/mongo_livedata_tests.js @@ -912,20 +912,28 @@ _.each( ['STRING', 'MONGO'], function(idGeneration) { } ); - Tinytest.addAsync("mongo-livedata - async server-side insert, " + idGeneration, function (test, onComplete) { - // Tests that insert returns before the callback runs. Relies on the fact - // that mongo does not run the callback before spinning off the event loop. - var cname = Random.id(); - var coll = new Mongo.Collection(cname); - var doc = { foo: "bar" }; - var x = 0; - coll.insert(doc, function (err, result) { - test.equal(err, null); - test.equal(x, 1); - onComplete(); - }); - x++; - }); + Tinytest.addAsync( + 'mongo-livedata - async server-side insert, ' + idGeneration, + async function(test, onComplete) { + // Tests that insert returns before the callback runs. Relies on the fact + // that mongo does not run the callback before spinning off the event loop. + var cname = Random.id(); + var coll = new Mongo.Collection(cname); + var doc = { foo: 'bar' }; + var x = 0; + + let resolver; + const promise = new Promise(r => resolver = r); + + coll.insertAsync(doc).then(() => { + test.equal(x, 1) + resolver(); + }); + x++; + + await promise; + } + ); Tinytest.addAsync("mongo-livedata - async server-side update, " + idGeneration, function (test, onComplete) { // Tests that update returns before the callback runs.