samples.js 925 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. 'use strict';
  2. const path = require('path');
  3. const fs = require('fs');
  4. const pify = require('pify');
  5. const cpFile = require('cp-file');
  6. const uuid = require('uuid/v4');
  7. const fixtureDir = path.join(__dirname, '../mock/fixtures');
  8. const setup = async numFiles => {
  9. const promises = [];
  10. const files = [];
  11. while (files.length < numFiles) {
  12. const filename = `${uuid()}.zip`;
  13. promises.push(cpFile(path.join(fixtureDir, 'electron-master.zip'), path.join(fixtureDir, filename)));
  14. files.push(filename);
  15. }
  16. await Promise.all(promises);
  17. return files;
  18. };
  19. const teardown = async () => {
  20. const files = await pify(fs.readdir)(fixtureDir);
  21. const promises = [];
  22. for (const file of files) {
  23. console.log(path.join(fixtureDir, file));
  24. if (file !== 'electron-master.zip') {
  25. promises.push(pify(fs.unlink)(path.join(fixtureDir, file)));
  26. }
  27. }
  28. return Promise.all(promises);
  29. };
  30. module.exports = {
  31. setup,
  32. teardown
  33. };