From f248abf0addea8c4b96dd95eb803e3d4fcfdd19f Mon Sep 17 00:00:00 2001 From: Ryland Herrick Date: Fri, 17 Apr 2020 17:17:43 -0500 Subject: [PATCH] [SIEM] Flaky test fix: Bump find_statuses timeout (#63900) * Increase time between creating a rule and retrieving its status We need to wait for ES to become consistent. * Prefer sequential `await`s to .then() --- .../tests/find_statuses.ts | 21 ++++++++++--------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/x-pack/test/detection_engine_api_integration/security_and_spaces/tests/find_statuses.ts b/x-pack/test/detection_engine_api_integration/security_and_spaces/tests/find_statuses.ts index 45805f03f8c0c..f0401cc9c5ce8 100644 --- a/x-pack/test/detection_engine_api_integration/security_and_spaces/tests/find_statuses.ts +++ b/x-pack/test/detection_engine_api_integration/security_and_spaces/tests/find_statuses.ts @@ -50,17 +50,18 @@ export default ({ getService }: FtrProviderContext): void => { .send(getSimpleRule()) .expect(200); - await new Promise(resolve => setTimeout(resolve, 1000)).then(async () => { - // query the single rule from _find - const { body } = await supertest - .post(`${DETECTION_ENGINE_RULES_URL}/_find_statuses`) - .set('kbn-xsrf', 'true') - .send({ ids: [resBody.id] }) - .expect(200); + // wait for Task Manager to execute the rule and update status + await new Promise(resolve => setTimeout(resolve, 5000)); - // expected result for status should be 'going to run' or 'succeeded - expect(['succeeded', 'going to run']).to.contain(body[resBody.id].current_status.status); - }); + // query the single rule from _find + const { body } = await supertest + .post(`${DETECTION_ENGINE_RULES_URL}/_find_statuses`) + .set('kbn-xsrf', 'true') + .send({ ids: [resBody.id] }) + .expect(200); + + // expected result for status should be 'going to run' or 'succeeded + expect(['succeeded', 'going to run']).to.contain(body[resBody.id].current_status.status); }); }); };