From 64c46dfe05597127a5cbe3ec40cefa2d7a56c5c1 Mon Sep 17 00:00:00 2001 From: LeeDr Date: Mon, 23 Jul 2018 15:07:32 -0500 Subject: [PATCH 1/2] Add method to wait for loading to complete in Add Panel table --- test/functional/services/dashboard/add_panel.js | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/test/functional/services/dashboard/add_panel.js b/test/functional/services/dashboard/add_panel.js index c0f571125d6ea1..880119dc2dec1d 100644 --- a/test/functional/services/dashboard/add_panel.js +++ b/test/functional/services/dashboard/add_panel.js @@ -93,6 +93,11 @@ export function DashboardAddPanelProvider({ getService, getPageObjects }) { } } + async waitForEuiTableLoading() { + const addPanel = await testSubjects.find('dashboardAddPanel'); + await addPanel.waitForDeletedByClassName('euiBasicTable-loading'); + } + async closeAddPanel() { log.debug('DashboardAddPanel.closeAddPanel'); const isOpen = await this.isAddPanelOpen(); @@ -172,7 +177,12 @@ export function DashboardAddPanelProvider({ getService, getPageObjects }) { } async filterEmbeddableNames(name) { - await testSubjects.setValue('savedObjectFinderSearchInput', name); + // The search input field may be disabled while the table is loading so wait for it + await this.waitForEuiTableLoading(); + // This try loop lets us recover it the field wasn't enabled yet + await retry.try(async () => { + await testSubjects.setValue('savedObjectFinderSearchInput', name); + }); await PageObjects.header.waitUntilLoadingHasFinished(); } From 767a49631deeb3f0d865b7d7162cdb704633f4da Mon Sep 17 00:00:00 2001 From: LeeDr Date: Wed, 25 Jul 2018 10:51:05 -0500 Subject: [PATCH 2/2] remove extra retry loop --- test/functional/services/dashboard/add_panel.js | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/test/functional/services/dashboard/add_panel.js b/test/functional/services/dashboard/add_panel.js index 880119dc2dec1d..4d11f805edf2a0 100644 --- a/test/functional/services/dashboard/add_panel.js +++ b/test/functional/services/dashboard/add_panel.js @@ -179,10 +179,7 @@ export function DashboardAddPanelProvider({ getService, getPageObjects }) { async filterEmbeddableNames(name) { // The search input field may be disabled while the table is loading so wait for it await this.waitForEuiTableLoading(); - // This try loop lets us recover it the field wasn't enabled yet - await retry.try(async () => { - await testSubjects.setValue('savedObjectFinderSearchInput', name); - }); + await testSubjects.setValue('savedObjectFinderSearchInput', name); await PageObjects.header.waitUntilLoadingHasFinished(); }