| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- module.exports = {
- 'tree': function (browser) {
- browser
- .url('http://localhost:8080/examples/tree/')
- .waitForElementVisible('li', 1000)
- .assert.count('.item', 12)
- .assert.count('.add', 4)
- .assert.count('.item > ul', 4)
- .assert.notVisible('#demo li ul')
- .assert.containsText('#demo li div span', '[+]')
- // expand root
- .click('.bold')
- .assert.visible('#demo ul')
- .assert.evaluate(function () {
- return document.querySelector('#demo li ul').children.length === 4
- })
- .assert.containsText('#demo li div span', '[-]')
- .assert.containsText('#demo > .item > ul > .item:nth-child(1)', 'hello')
- .assert.containsText('#demo > .item > ul > .item:nth-child(2)', 'wat')
- .assert.containsText('#demo > .item > ul > .item:nth-child(3)', 'child folder')
- .assert.containsText('#demo > .item > ul > .item:nth-child(3)', '[+]')
- // add items to root
- .click('#demo > .item > ul > .add')
- .assert.evaluate(function () {
- return document.querySelector('#demo li ul').children.length === 5
- })
- .assert.containsText('#demo > .item > ul > .item:nth-child(1)', 'hello')
- .assert.containsText('#demo > .item > ul > .item:nth-child(2)', 'wat')
- .assert.containsText('#demo > .item > ul > .item:nth-child(3)', 'child folder')
- .assert.containsText('#demo > .item > ul > .item:nth-child(3)', '[+]')
- .assert.containsText('#demo > .item > ul > .item:nth-child(4)', 'new stuff')
- // add another item
- .click('#demo > .item > ul > .add')
- .assert.evaluate(function () {
- return document.querySelector('#demo li ul').children.length === 6
- })
- .assert.containsText('#demo > .item > ul > .item:nth-child(1)', 'hello')
- .assert.containsText('#demo > .item > ul > .item:nth-child(2)', 'wat')
- .assert.containsText('#demo > .item > ul > .item:nth-child(3)', 'child folder')
- .assert.containsText('#demo > .item > ul > .item:nth-child(3)', '[+]')
- .assert.containsText('#demo > .item > ul > .item:nth-child(4)', 'new stuff')
- .assert.containsText('#demo > .item > ul > .item:nth-child(5)', 'new stuff')
- .click('#demo ul .bold')
- .assert.visible('#demo ul ul')
- .assert.containsText('#demo ul > .item:nth-child(3)', '[-]')
- .assert.evaluate(function () {
- return document.querySelector('#demo ul ul').children.length === 5
- })
- .click('.bold')
- .assert.notVisible('#demo ul')
- .assert.containsText('#demo li div span', '[+]')
- .click('.bold')
- .assert.visible('#demo ul')
- .assert.containsText('#demo li div span', '[-]')
- .dblClick('#demo ul > .item div')
- .assert.count('.item', 15)
- .assert.count('.item > ul', 5)
- .assert.containsText('#demo ul > .item:nth-child(1)', '[-]')
- .assert.evaluate(function () {
- const firstItem = document.querySelector('#demo ul > .item:nth-child(1)')
- const ul = firstItem.querySelector('ul')
- return ul.children.length === 2
- })
- .end()
- }
- }
|