Contains
Methods
contains
addon/-private/properties/contains.js:84-103
Returns a boolean representing whether an element or a set of elements contains the specified text.
Parameters
selectorstring CSS selector of the element to checkoptionsObject Additional optionsoptions.scopestring Nests provided scope within parent’s scopeoptions.atnumber Reduce the set of matched elements to the one at the specified indexoptions.resetScopeboolean Override parent’s scopeoptions.multipleboolean Check if all elements matched by selector contain the subtextoptions.testContainerString Context where to search elements in the DOM
Examples
// Lorem <span>ipsum</span>
const page = PageObject.create({
spanContains: PageObject.contains('span')
});
assert.ok(page.spanContains('ipsum'));
// <span>lorem</span>
// <span>ipsum</span>
// <span>dolor</span>
const page = PageObject.create({
spansContain: PageObject.contains('span', { multiple: true })
});
// not all spans contain 'lorem'
assert.notOk(page.spansContain('lorem'));
// <span>super text</span>
// <span>regular text</span>
const page = PageObject.create({
spansContain: PageObject.contains('span', { multiple: true })
});
// all spans contain 'text'
assert.ok(page.spanContains('text'));
// <div><span>lorem</span></div>
// <div class="scope"><span>ipsum</span></div>
// <div><span>dolor</span></div>
const page = PageObject.create({
spanContains: PageObject.contains('span', { scope: '.scope' })
});
assert.notOk(page.spanContains('lorem'));
assert.ok(page.spanContains('ipsum'));
// <div><span>lorem</span></div>
// <div class="scope"><span>ipsum</span></div>
// <div><span>dolor</span></div>
const page = PageObject.create({
scope: '.scope',
spanContains: PageObject.contains('span')
});
assert.notOk(page.spanContains('lorem'));
assert.ok(page.spanContains('ipsum'));
Returns Descriptor