Init.js 892 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. const App = require('../../../app.js')
  2. const { exec } = require('child_process')
  3. const { db } = require('../../../app/src/infrastructure/mongojs')
  4. require('logger-sharelatex').logger.level('error')
  5. before(function(done) {
  6. exec('bin/east migrate', (error, stdout, stderr) => {
  7. console.log(stdout)
  8. console.error(stderr)
  9. if (error) {
  10. throw error
  11. }
  12. App.listen(3000, 'localhost', done)
  13. })
  14. })
  15. afterEach(function(done) {
  16. db.getCollectionNames((error, names) => {
  17. if (error) {
  18. throw error
  19. }
  20. Promise.all(
  21. names.map(name => {
  22. return new Promise((resolve, reject) => {
  23. db[name].remove({}, err => {
  24. if (err) {
  25. reject(err)
  26. } else {
  27. resolve()
  28. }
  29. })
  30. })
  31. })
  32. ).then(
  33. () => done(),
  34. err => {
  35. throw err
  36. }
  37. )
  38. })
  39. })