fix sticky send race

This commit is contained in:
Timo K
2026-04-21 17:11:40 +02:00
parent 2828b92d91
commit 2d16487ca1

View File

@@ -28,7 +28,7 @@ async function setupTwoUserSpaCall(
await page.goto("/"); await page.goto("/");
let androlHasSentStickyEvent = false; let androlHasSentStickyEvent = false;
const androlResolver = Promise.withResolvers<void>();
await interceptEventSend( await interceptEventSend(
page, page,
// This room is not encrypted, so the event is sent in clear // This room is not encrypted, so the event is sent in clear
@@ -36,6 +36,7 @@ async function setupTwoUserSpaCall(
(req) => { (req) => {
androlHasSentStickyEvent = androlHasSentStickyEvent =
androlHasSentStickyEvent || isStickySend(req.url()); androlHasSentStickyEvent || isStickySend(req.url());
androlResolver.resolve();
}, },
); );
@@ -53,6 +54,7 @@ async function setupTwoUserSpaCall(
let pevaraHasSentStickyEvent = false; let pevaraHasSentStickyEvent = false;
const paveraResolver = Promise.withResolvers<void>();
await interceptEventSend( await interceptEventSend(
guestPage, guestPage,
// This room is not encrypted, so the event is sent in clear // This room is not encrypted, so the event is sent in clear
@@ -60,6 +62,7 @@ async function setupTwoUserSpaCall(
(req) => { (req) => {
pevaraHasSentStickyEvent = pevaraHasSentStickyEvent =
pevaraHasSentStickyEvent || isStickySend(req.url()); pevaraHasSentStickyEvent || isStickySend(req.url());
paveraResolver.resolve();
}, },
); );
@@ -70,7 +73,9 @@ async function setupTwoUserSpaCall(
"2_0", "2_0",
); );
// Assert both sides have sent sticky membership events // Assert both sides have sent sticky membership events
await androlResolver.promise;
expect(androlHasSentStickyEvent).toEqual(true); expect(androlHasSentStickyEvent).toEqual(true);
await paveraResolver.promise;
expect(pevaraHasSentStickyEvent).toEqual(true); expect(pevaraHasSentStickyEvent).toEqual(true);
return { guestPage }; return { guestPage };