core.spec.js 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. var test = require('tape')
  2. var Uppy = require('../src/core/Core.js')
  3. test('core', function (t) {
  4. const uppy = new Uppy()
  5. t.equal(typeof uppy, 'object', '`new Core()` should return an `object`')
  6. t.ok(uppy instanceof Uppy, '`uppy` should be an instance of `Uppy` core')
  7. t.end()
  8. })
  9. test('use plugins', function (t) {
  10. const AcquirerPlugin = require('./mocks/plugin-acquirer1.js')
  11. const uppy = new Uppy()
  12. uppy
  13. .use(AcquirerPlugin)
  14. t.equal(Object.keys(uppy.plugins).length, 1, 'should add a plugin to the plugins stack')
  15. t.end()
  16. })
  17. test('noDuplicates', function (t) {
  18. const Acquirer1Plugin = require('./mocks/plugin-acquirer1.js')
  19. const uppyTwoAcquirers = new Uppy()
  20. uppyTwoAcquirers.use(Acquirer1Plugin)
  21. const fn = uppyTwoAcquirers.use.bind(uppyTwoAcquirers, Acquirer1Plugin)
  22. t.throws(fn, new RegExp('Uppy is currently limited to running one of every plugin'))
  23. t.end()
  24. })
  25. test('autoProceed', function (t) {
  26. const Acquirer1Plugin = require('./mocks/plugin-acquirer1.js')
  27. const Acquirer2Plugin = require('./mocks/plugin-acquirer2.js')
  28. const uppyOneAcquirer = new Uppy()
  29. uppyOneAcquirer
  30. .use(Acquirer1Plugin)
  31. .run()
  32. const uppyTwoAcquirers = new Uppy()
  33. uppyTwoAcquirers
  34. .use(Acquirer1Plugin)
  35. .use(Acquirer2Plugin)
  36. .run()
  37. t.equal(uppyOneAcquirer.opts.autoProceed, true, 'should autoProceed if only one acquirer is used')
  38. t.equal(uppyTwoAcquirers.opts.autoProceed, false, 'should not autoProceed if more than one acquirer is used')
  39. t.end()
  40. })