wdio-wait-for
Version:
a library of conditions that are useful for end-to-end tests
20 lines (19 loc) • 744 B
JavaScript
import { getElements } from './../utils/index.js';
/**
* A condition for checking number of elements with given selector
*
* @example
* browser.waitUntil(numberOfElementsToBe('a', 4));
*
* @param {!string | ChainablePromiseArray<WebdriverIO.ElementArray>} selectorOrElementArray The selector or elements array to check
* @param {!number} expectedNumber The selector to check
*
* @returns {!function} An expected condition that returns a promise
* representing whether the element length.
*/
export function numberOfElementsToBe(selectorOrElementArray, expectedNumber) {
return async function () {
const elements = await getElements(selectorOrElementArray);
return elements.length === expectedNumber;
};
}