forked from binti-family/cypress-capybara
-
Notifications
You must be signed in to change notification settings - Fork 0
/
capybara.spec.js
47 lines (44 loc) · 2.5 KB
/
capybara.spec.js
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
35
36
37
38
39
40
41
42
43
44
45
46
47
context('cypress-capybara', () => {
beforeEach(() => {
cy.visit('/commands/querying')
})
it('cy.findLink() - see https://www.rubydoc.info/github/teamcapybara/capybara/master/Capybara/Node/Finders#find_link-instance_method', () => {
cy.findLink('great link!').should('have.attr', 'id', 'link-1')
cy.findLink('link-1').should('have.attr', 'id', 'link-1')
cy.findLink('link-2').should('have.attr', 'id', 'link-2')
cy.findLink('I am').should('have.attr', 'id', 'link-2')
cy.findLink('just some').should('have.attr', 'id', 'link-2')
cy.findLink('just some text').should('have.attr', 'id', 'link-2')
})
it('cy.findField() - see https://www.rubydoc.info/github/teamcapybara/capybara/master/Capybara/Node/Finders#find_field-instance_method', () => {
cy.findField('nice field').should('have.attr', 'id', 'yes-1')
cy.findField('yes-1').should('have.attr', 'id', 'yes-1')
cy.findField('yes-1').type('Yay!').should('have.value', 'Yay!')
cy.findField('nice-name').should('have.attr', 'id', 'yes-1')
cy.findField('a textarea').should('have.attr', 'id', 'yes-2')
cy.findField('yes-2').should('have.attr', 'id', 'yes-2')
cy.findField('meh-name').should('have.attr', 'id', 'yes-2')
cy.findField('a dropdown').should('have.attr', 'id', 'yes-3')
cy.findField('yes-3').should('have.attr', 'id', 'yes-3')
cy.findField('ok-name').should('have.attr', 'id', 'yes-3')
cy.findField('ok').should('not.exist')
cy.findField('no-1').should('not.exist')
cy.findField('no-2').should('not.exist')
cy.findField('no-3').should('not.exist')
})
it('cy.findButton() - see https://www.rubydoc.info/github/teamcapybara/capybara/master/Capybara/Node/Finders#find_button-instance_method', () => {
cy.findButton('Button').should('contain', 'Button')
cy.findButton('query-btn').should('contain', 'Button')
cy.findButton('query-btn').click()
cy.findButton('Button "#2"').should('exist')
cy.findButton('great button').should('contain', 'Button "#2"')
cy.findButton('Button #3').should('have.attr', 'type', 'submit')
cy.findButton(']a t[it]le]').should('have.attr', 'type', 'submit')
cy.findButton('Button #4').should('have.attr', 'type', 'reset')
cy.findButton('lol').should('have.attr', 'type', 'reset')
cy.findButton('Button #5').should('have.attr', 'type', 'image')
cy.findButton('an image!').should('have.attr', 'type', 'image')
cy.findButton('Button #7').should('have.attr', 'type', 'button')
cy.findButton('Button #6').should('not.exist')
})
})