Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | 69x 444x 6x 6x 6x 4x 2x 438x | import logger from '@wdio/logger' const log = logger('webdriverio') /** * wait on element if: * - elementId couldn't be fetched in the first place * - command is not explicit wait command for existance or displayedness * @param {Object} currentElement element to wait on if necessary * @param {string} commandName name of the command that called this * @return {Promise} resolves with element after any necessary waiting */ export default async function implicitWait (currentElement, commandName) { if (!currentElement.elementId && !commandName.match(/(waitUntil|waitFor|isExisting|is?\w+Displayed)/)) { log.debug( `command ${commandName} was called on an element ("${currentElement.selector}") ` + 'that wasn\'t found, waiting for it...' ) try { await currentElement.waitForExist() /** * if waitForExist was successful requery element and assign elementId to the scope */ return await currentElement.parent.$(currentElement.selector) } catch { throw new Error( `Can't call ${commandName} on element with selector "${currentElement.selector}" because element wasn't found`) } } return currentElement } |