From 177aa5cad0637d155a33230378962a325de34e13 Mon Sep 17 00:00:00 2001 From: Christos Nasikas Date: Tue, 10 Oct 2023 14:26:45 +0300 Subject: [PATCH 1/4] Unskip flaky tests --- .../test_suites/observability/cases/configure.ts | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/x-pack/test_serverless/functional/test_suites/observability/cases/configure.ts b/x-pack/test_serverless/functional/test_suites/observability/cases/configure.ts index bd51ed5b848a61..a65d92dea06585 100644 --- a/x-pack/test_serverless/functional/test_suites/observability/cases/configure.ts +++ b/x-pack/test_serverless/functional/test_suites/observability/cases/configure.ts @@ -19,7 +19,7 @@ export default ({ getPageObject, getService }: FtrProviderContext) => { const retry = getService('retry'); const find = getService('find'); - describe('Configure Case', function () { + describe.only('Configure Case', function () { // Error: timed out waiting for assertRadioGroupValue: Expected the radio group value to equal "close-by-pushing" this.tags(['failsOnMKI']); before(async () => { @@ -35,12 +35,7 @@ export default ({ getPageObject, getService }: FtrProviderContext) => { await svlCommonPage.forceLogout(); }); - // FLAKY: https://github.com/elastic/kibana/issues/166469 - describe.skip('Closure options', function () { - before(async () => { - await common.clickAndValidate('configure-case-button', 'case-configure-title'); - }); - + describe('Closure options', function () { it('defaults the closure option correctly', async () => { await cases.common.assertRadioGroupValue('closure-options-radio-group', 'close-by-user'); }); @@ -53,8 +48,7 @@ export default ({ getPageObject, getService }: FtrProviderContext) => { }); }); - // FLAKY: https://github.com/elastic/kibana/issues/167869 - describe.skip('Connectors', function () { + describe('Connectors', function () { it('defaults the connector to none correctly', async () => { await retry.waitFor('dropdown-connector-no-connector to exist', async () => { return await testSubjects.exists('dropdown-connector-no-connector'); From 6cb922f715c45400d3e518cb9df5ad7cd1ac2e05 Mon Sep 17 00:00:00 2001 From: Christos Nasikas Date: Wed, 11 Oct 2023 12:56:17 +0300 Subject: [PATCH 2/4] Wait for the settings page to appear --- .../test_suites/observability/cases/configure.ts | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/x-pack/test_serverless/functional/test_suites/observability/cases/configure.ts b/x-pack/test_serverless/functional/test_suites/observability/cases/configure.ts index deea626b28f249..0f39363e4bb7d4 100644 --- a/x-pack/test_serverless/functional/test_suites/observability/cases/configure.ts +++ b/x-pack/test_serverless/functional/test_suites/observability/cases/configure.ts @@ -21,14 +21,22 @@ export default ({ getPageObject, getService }: FtrProviderContext) => { const find = getService('find'); describe('Configure Case', function () { - // Error: timed out waiting for assertRadioGroupValue: Expected the radio group value to equal "close-by-pushing" - this.tags(['failsOnMKI']); before(async () => { await svlCommonPage.login(); await svlObltNavigation.navigateToLandingPage(); await svlCommonNavigation.sidenav.clickLink({ deepLinkId: 'observability-overview:cases' }); + await header.waitUntilLoadingHasFinished(); + + await retry.waitFor('configure-case-button exist', async () => { + return await testSubjects.exists('configure-case-button'); + }); + await common.clickAndValidate('configure-case-button', 'case-configure-title'); await header.waitUntilLoadingHasFinished(); + + await retry.waitFor('case-configure-title exist', async () => { + return await testSubjects.exists('case-configure-title'); + }); }); after(async () => { From ce9be9bf3d1153e9c7304d3690dbd4d5f473eba4 Mon Sep 17 00:00:00 2001 From: Christos Nasikas Date: Thu, 12 Oct 2023 10:22:30 +0300 Subject: [PATCH 3/4] Fix security projects --- .../test_suites/security/ftr/cases/configure.ts | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/x-pack/test_serverless/functional/test_suites/security/ftr/cases/configure.ts b/x-pack/test_serverless/functional/test_suites/security/ftr/cases/configure.ts index 5c71abf3ad7ba4..19cd7a3ccdce06 100644 --- a/x-pack/test_serverless/functional/test_suites/security/ftr/cases/configure.ts +++ b/x-pack/test_serverless/functional/test_suites/security/ftr/cases/configure.ts @@ -26,8 +26,18 @@ export default ({ getPageObject, getService }: FtrProviderContext) => { await svlCommonPage.login(); await svlSecNavigation.navigateToLandingPage(); await testSubjects.click('solutionSideNavItemLink-cases'); + await header.waitUntilLoadingHasFinished(); + + await retry.waitFor('configure-case-button exist', async () => { + return await testSubjects.exists('configure-case-button'); + }); + await common.clickAndValidate('configure-case-button', 'case-configure-title'); await header.waitUntilLoadingHasFinished(); + + await retry.waitFor('case-configure-title exist', async () => { + return await testSubjects.exists('case-configure-title'); + }); }); after(async () => { @@ -36,8 +46,6 @@ export default ({ getPageObject, getService }: FtrProviderContext) => { }); describe('Closure options', function () { - // Error: Expected the radio group value to equal "close-by-pushing" (got "close-by-user") - this.tags(['failsOnMKI']); it('defaults the closure option correctly', async () => { await cases.common.assertRadioGroupValue('closure-options-radio-group', 'close-by-user'); }); From db27a082b90f8d1d12cfb195b26e3b5e2bea34ae Mon Sep 17 00:00:00 2001 From: Christos Nasikas Date: Fri, 13 Oct 2023 10:38:31 +0300 Subject: [PATCH 4/4] Skip on MKI --- .../functional/test_suites/observability/cases/configure.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/x-pack/test_serverless/functional/test_suites/observability/cases/configure.ts b/x-pack/test_serverless/functional/test_suites/observability/cases/configure.ts index 0f39363e4bb7d4..f63ce94ead3fe1 100644 --- a/x-pack/test_serverless/functional/test_suites/observability/cases/configure.ts +++ b/x-pack/test_serverless/functional/test_suites/observability/cases/configure.ts @@ -21,6 +21,8 @@ export default ({ getPageObject, getService }: FtrProviderContext) => { const find = getService('find'); describe('Configure Case', function () { + // security_exception: action [indices:data/write/delete/byquery] is unauthorized for user [elastic] with effective roles [superuser] on restricted indices [.kibana_alerting_cases], this action is granted by the index privileges [delete,write,all] + this.tags(['failsOnMKI']); before(async () => { await svlCommonPage.login(); await svlObltNavigation.navigateToLandingPage();