elements.js 832 B

123456789101112131415161718192021222324252627
  1. import { By } from 'selenium-webdriver'
  2. import fs from 'fs'
  3. import { Condition } from 'selenium-webdriver'
  4. export async function getActionButtons (webdriver) {
  5. return await webdriver.findElement(By.id('contentActions')).findElements(By.tagName('button'))
  6. }
  7. export function takeScreenshot (webdriver) {
  8. return webdriver.takeScreenshot().then((img) => {
  9. fs.writeFileSync('out.png', img, 'base64')
  10. })
  11. }
  12. export async function getRootAndWait() {
  13. await webdriver.get(runner.baseUrl())
  14. await webdriver.wait(new Condition('wait for initial-marshal-complete', async function() {
  15. const body = await webdriver.findElement(By.tagName('body'))
  16. const attr = await body.getAttribute('initial-marshal-complete')
  17. if (attr == 'true') {
  18. return true
  19. } else {
  20. return false
  21. }
  22. }))
  23. }