select2.js 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. module.exports = {
  2. 'select2': function (browser) {
  3. browser
  4. .url('http://localhost:8080/examples/select2/')
  5. .waitForElementVisible('.select2', 1000)
  6. .assert.elementPresent('select')
  7. .assert.containsText('p', 'Selected: 0')
  8. .assert.containsText('span.select2', 'Select one')
  9. .click('span.select2')
  10. .assert.count('.select2-results__option', 3)
  11. .assert.containsText('.select2-results__option:nth-child(1)', 'Select one')
  12. .assert.containsText('.select2-results__option:nth-child(2)', 'Hello')
  13. .assert.containsText('.select2-results__option:nth-child(3)', 'World')
  14. .assert.attributePresent('.select2-results__option:nth-child(1)', 'aria-disabled')
  15. .click('.select2-results__option:nth-child(2)')
  16. .assert.count('.select2-results__option', 0)
  17. .assert.containsText('p', 'Selected: 1')
  18. .assert.containsText('span.select2', 'Hello')
  19. // test dynamic options
  20. .execute(function () {
  21. vm.options.push({ id: 3, text: 'Vue' })
  22. })
  23. .click('span.select2')
  24. .assert.count('.select2-results__option', 4)
  25. .assert.containsText('.select2-results__option:nth-child(1)', 'Select one')
  26. .assert.containsText('.select2-results__option:nth-child(2)', 'Hello')
  27. .assert.containsText('.select2-results__option:nth-child(3)', 'World')
  28. .assert.containsText('.select2-results__option:nth-child(4)', 'Vue')
  29. .click('.select2-results__option:nth-child(4)')
  30. .assert.count('.select2-results__option', 0)
  31. .assert.containsText('p', 'Selected: 3')
  32. .assert.containsText('span.select2', 'Vue')
  33. .execute(function () {
  34. vm.selected = 2
  35. })
  36. .assert.containsText('p', 'Selected: 2')
  37. .assert.containsText('span.select2', 'World')
  38. .end()
  39. }
  40. }