I want to use the Chai-jQuery .match
assertion:
// from Cypress docs:
// match(selector)
expect($emptyEl).to.match(':empty')
But the problem is, that a BDD Assertion with the same name exists:
// from Cypress docs:
// match(RegExp)
expect('testing').to.match(/^test/)
I want to use the first one, but I can't figure out how - each time the BDD assertion gets used instead and throws an error. For example:
expect(cy.get('div')).to.match('#someId')
match requires its argument be a RegExp. You passed: #someId
I tried passing many different things into the expect()
call in hopes of triggering a different overload, but I always get this error.
So what do I need to do to use the Chai-jQuery .match
aseertion?
CodePudding user response:
I think Cypress choses the .match()
version from the value in the expect()
part.
With this fragment
<div id="someId">some text</div>
this will pass
cy.get('div').then($el => {
expect($el).to.match('#someId')
})
cy.get('div').should('match', '#someId')
cy.get('div').invoke('text').should('match', /some text/)