Driver.js 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. var webdriver = require('selenium-webdriver')
  2. var firefox = require('selenium-webdriver/firefox')
  3. var By = webdriver.By
  4. var path = require('path')
  5. var chalk = require('chalk')
  6. function UppySelectFakeFile () {
  7. var blob = new Blob(
  8. ['data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTIwIDEyMCI+CiAgPGNpcmNsZSBjeD0iNjAiIGN5PSI2MCIgcj0iNTAiLz4KPC9zdmc+Cg=='],
  9. {type: 'image/svg+xml'}
  10. )
  11. blob['name'] = 'myDumbSVG'
  12. window.UppyAddFiles([blob], 'smth')
  13. }
  14. // function setSauceTestName (name) {
  15. //
  16. // }
  17. //
  18. // function setSaucetestPassed (passed) {
  19. // if (passed) {
  20. // return
  21. // }
  22. // }
  23. // Monitor for errors, and dump them
  24. function collectErrors (driver) {
  25. return driver.executeScript('return uppyLog;')
  26. .then(function (uppyLog) {
  27. console.error([
  28. '[uppy-log]',
  29. chalk.magenta(uppyLog)
  30. ].join(' '))
  31. // return driver.executeScript('return window.JSErrorCollector_errors.pump()')
  32. // .then(function (errors) {
  33. // if (!errors || !errors.length) {
  34. // return
  35. // }
  36. // errors.forEach(function (error) {
  37. // console.error([
  38. // '[browser-error]',
  39. // chalk.magenta(error.sourceName),
  40. // chalk.dim('#' + error.lineNumber),
  41. // chalk.red(error.errorMessage)
  42. // ].join(' '))
  43. // })
  44. // return
  45. // })
  46. })
  47. }
  48. function setDriver () {
  49. var profile = new firefox.Profile()
  50. profile.addExtension(path.join(__dirname, 'xpi', 'firebug-2.0.16.xpi'))
  51. profile.addExtension(path.join(__dirname, 'xpi', 'JSErrorCollector.xpi'))
  52. profile.setPreference('extensions.firebug.showChromeErrors', true)
  53. var options = new firefox.Options().setProfile(profile)
  54. var driver = new firefox.Driver(options)
  55. // var driver = new webdriver.Builder()
  56. // .forBrowser('firefox')
  57. // .build()
  58. return driver
  59. }
  60. module.exports = {
  61. setDriver,
  62. UppySelectFakeFile,
  63. collectErrors,
  64. By
  65. }