diff --git a/tests/testcafe/admin/create-event.test.ts b/tests/testcafe/admin/create-event.test.ts index 41f0917..d280d74 100644 --- a/tests/testcafe/admin/create-event.test.ts +++ b/tests/testcafe/admin/create-event.test.ts @@ -1,6 +1,6 @@ import { Selector } from "testcafe"; import { - getSiteRoot, getPageUrl, generateTestForm, deleteEvent, deleteForm, doLogin, generateAccessToken, getPostRequestLogger, + getSiteRoot, getPageUrl, generateTestForm, deleteEvent, deleteForm, doLogin, generateAccessToken, getPostRequestLogger, waitForLogger, } from "../utils"; const LOGGER = getPostRequestLogger("events/"); @@ -78,6 +78,8 @@ test("Logged in user can create event", async (t) => { await t.click(submit); const parsed = JSON.parse(LOGGER.requests[0].response.body as string); + + await waitForLogger(LOGGER); // eslint-disable-next-line no-param-reassign t.fixtureCtx.eventId = parsed.id; diff --git a/tests/testcafe/admin/create-signup.test.ts b/tests/testcafe/admin/create-signup.test.ts index c933e70..17426ab 100644 --- a/tests/testcafe/admin/create-signup.test.ts +++ b/tests/testcafe/admin/create-signup.test.ts @@ -1,6 +1,6 @@ import { Selector } from "testcafe"; import { - getSiteRoot, getPageUrl, deleteForm, doLogin, generateAccessToken, getPostRequestLogger, + getSiteRoot, getPageUrl, deleteForm, doLogin, generateAccessToken, getPostRequestLogger, waitForLogger } from "../utils"; const LOGGER = getPostRequestLogger("signupForm/"); @@ -97,6 +97,8 @@ test("Logged in user can create signup", async (t) => { await t.click(submit); const parsed = JSON.parse(LOGGER.requests[0].response.body as string); + + await waitForLogger(LOGGER); // eslint-disable-next-line no-param-reassign t.fixtureCtx.formId = parsed.id; diff --git a/tests/testcafe/utils.ts b/tests/testcafe/utils.ts index d2401f5..113df83 100644 --- a/tests/testcafe/utils.ts +++ b/tests/testcafe/utils.ts @@ -157,3 +157,12 @@ export const generateTestEvent = async (formIds = [], jwt_access: string) => ( ); export const sleep = async (ms: number) => new Promise((resolve) => setTimeout(resolve, ms)); + +export const waitForLogger = async (logger: RequestLogger) => { + for (let i = 0; i < 50; i++) { + await sleep(100); + if (logger.requests.length > 0 ) { + return; + } + } +}