ensure time picker open in retry loop (#15034)

* ensure time picker open in retry loop

* clean up isTimepickerOpen to use testSubjects.exists
This commit is contained in:
Stacey Gammon 2017-11-20 09:55:28 -05:00 committed by GitHub
parent b03eac4376
commit 856d012b46
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 11 deletions

View file

@ -1,4 +1,4 @@
<div class="kbn-timepicker">
<div class="kbn-timepicker" data-test-subj="timePicker">
<div class="tab-content kbn-timepicker-content">
<!-- Filters -->

View file

@ -54,13 +54,7 @@ export function HeaderPageProvider({ getService, getPageObjects }) {
}
async isTimepickerOpen() {
remote.setFindTimeout(2000);
try {
await remote.findDisplayedByCssSelector('.kbn-timepicker');
return true;
} catch (error) {
return false;
}
return await testSubjects.exists('timePicker');
}
async isAbsoluteSectionShowing() {
@ -138,11 +132,14 @@ export function HeaderPageProvider({ getService, getPageObjects }) {
}
async ensureTimePickerIsOpen() {
log.debug('ensureTimePickerIsOpen');
const isOpen = await this.isTimepickerOpen();
log.debug(`ensureTimePickerIsOpen: ${isOpen}`);
if (!isOpen) {
log.debug('--Opening time picker');
await this.clickTimepicker();
await retry.try(async () => {
await this.clickTimepicker();
const isOpen = await this.isTimepickerOpen();
if (!isOpen) throw new Error('Time picker still not open, try again.');
});
}
}