test.js 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. /* global browser, capabilities, $ */
  2. const path = require('path')
  3. const fs = require('fs')
  4. const { selectFakeFile, supportsChooseFile, ensureInputVisible } = require('../utils')
  5. const testURL = 'http://localhost:4567/transloadit'
  6. function setTransloaditKeyAndInit (transloaditKey) {
  7. window.initUppyTransloadit(transloaditKey)
  8. }
  9. describe('Transloadit file processing', () => {
  10. beforeEach(async () => {
  11. await browser.url(testURL)
  12. })
  13. it('should upload a file to Transloadit and crop it', async function test () {
  14. const transloaditKey = process.env.TRANSLOADIT_KEY
  15. if (transloaditKey === undefined) {
  16. console.log('skipping Transloadit integration test: process.env.TRANSLOADIT_KEY is not set')
  17. return this.skip()
  18. }
  19. const wrapper = await $('#uppy-transloadit')
  20. await wrapper.waitForExist()
  21. await browser.execute(setTransloaditKeyAndInit, transloaditKey)
  22. const input = await $('#uppy-transloadit .uppy-Dashboard-input')
  23. const result = await $('#uppy-result')
  24. await input.waitForExist()
  25. await browser.execute(ensureInputVisible, '#uppy-transloadit .uppy-Dashboard-input')
  26. if (supportsChooseFile(capabilities)) {
  27. await input.setValue(path.join(__dirname, '../../resources/image.jpg'))
  28. } else {
  29. const img = path.join(__dirname, '../../resources/image.jpg')
  30. await browser.execute(
  31. selectFakeFile,
  32. 'uppyTransloadit',
  33. path.basename(img), // name
  34. 'image/jpeg', // type
  35. fs.readFileSync(img, 'base64'), // b64
  36. )
  37. }
  38. await result.waitForExist({ timeout: 25000 })
  39. const text = await result.getText()
  40. expect(text).to.be.equal('ok')
  41. })
  42. })