| 12345678910111213141516171819202122232425262728293031323334353637383940 |
- const { execFile } = require('child_process')
- const { waitForDb, db } = require('../../../../app/src/infrastructure/mongodb')
- const Settings = require('@overleaf/settings')
- const DEFAULT_ENV = 'saas'
- module.exports = {
- initialize() {
- before(waitForDb)
- before(function (done) {
- const args = [
- 'run',
- 'migrations',
- '--',
- 'migrate',
- '-t',
- Settings.env || DEFAULT_ENV,
- ]
- execFile('npm', args, (error, stdout, stderr) => {
- if (error) {
- throw error
- }
- done()
- })
- })
- afterEach(async function () {
- return Promise.all(
- Object.values(db).map(async collection => {
- if (collection === db.migrations) {
- // Do not clear the collection for tracking migrations.
- return
- }
- return collection.deleteMany({})
- })
- )
- })
- },
- }
|