| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- /// <reference types="cypress" />
- context('Connectors', () => {
- beforeEach(() => {
- cy.visit('https://example.cypress.io/commands/connectors')
- })
- it('.each() - iterate over an array of elements', () => {
- // https://on.cypress.io/each
- cy.get('.connectors-each-ul>li')
- .each(($el, index, $list) => {
- console.log($el, index, $list)
- })
- })
- it('.its() - get properties on the current subject', () => {
- // https://on.cypress.io/its
- cy.get('.connectors-its-ul>li')
- // calls the 'length' property yielding that value
- .its('length')
- .should('be.gt', 2)
- })
- it('.invoke() - invoke a function on the current subject', () => {
- // our div is hidden in our script.js
- // $('.connectors-div').hide()
- // https://on.cypress.io/invoke
- cy.get('.connectors-div').should('be.hidden')
- // call the jquery method 'show' on the 'div.container'
- .invoke('show')
- .should('be.visible')
- })
- it('.spread() - spread an array as individual args to callback function', () => {
- // https://on.cypress.io/spread
- const arr = ['foo', 'bar', 'baz']
- cy.wrap(arr).spread((foo, bar, baz) => {
- expect(foo).to.eq('foo')
- expect(bar).to.eq('bar')
- expect(baz).to.eq('baz')
- })
- })
- describe('.then()', () => {
- it('invokes a callback function with the current subject', () => {
- // https://on.cypress.io/then
- cy.get('.connectors-list > li')
- .then(($lis) => {
- expect($lis, '3 items').to.have.length(3)
- expect($lis.eq(0), 'first item').to.contain('Walk the dog')
- expect($lis.eq(1), 'second item').to.contain('Feed the cat')
- expect($lis.eq(2), 'third item').to.contain('Write JavaScript')
- })
- })
- it('yields the returned value to the next command', () => {
- cy.wrap(1)
- .then((num) => {
- expect(num).to.equal(1)
- return 2
- })
- .then((num) => {
- expect(num).to.equal(2)
- })
- })
- it('yields the original subject without return', () => {
- cy.wrap(1)
- .then((num) => {
- expect(num).to.equal(1)
- // note that nothing is returned from this callback
- })
- .then((num) => {
- // this callback receives the original unchanged value 1
- expect(num).to.equal(1)
- })
- })
- it('yields the value yielded by the last Cypress command inside', () => {
- cy.wrap(1)
- .then((num) => {
- expect(num).to.equal(1)
- // note how we run a Cypress command
- // the result yielded by this Cypress command
- // will be passed to the second ".then"
- cy.wrap(2)
- })
- .then((num) => {
- // this callback receives the value yielded by "cy.wrap(2)"
- expect(num).to.equal(2)
- })
- })
- })
- })
|