mirror of
https://github.com/wassname/talk.git
synced 2026-07-07 08:16:40 +08:00
50 lines
1.1 KiB
JavaScript
50 lines
1.1 KiB
JavaScript
const mongoose = require('../../services/mongoose');
|
|
|
|
const models = [
|
|
require('../../models/action'),
|
|
require('../../models/asset'),
|
|
require('../../models/comment'),
|
|
require('../../models/migration'),
|
|
require('../../models/setting'),
|
|
require('../../models/user'),
|
|
require('../../models/migration'),
|
|
];
|
|
|
|
before(async function() {
|
|
this.timeout(30000);
|
|
|
|
// Ensure we can connect to the database.
|
|
await new Promise((resolve, reject) => {
|
|
mongoose.connection.on('open', err => {
|
|
if (err) {
|
|
return reject(err);
|
|
}
|
|
|
|
return resolve();
|
|
});
|
|
});
|
|
|
|
// Ensure all the models have indexes created.
|
|
await Promise.all(models.map(model => model.ensureIndexes()));
|
|
});
|
|
|
|
beforeEach(async () => {
|
|
await Promise.all(
|
|
Object.keys(mongoose.connection.collections).map(collection => {
|
|
return new Promise((resolve, reject) => {
|
|
mongoose.connection.collections[collection].remove(function(err) {
|
|
if (err) {
|
|
return reject(err);
|
|
}
|
|
|
|
return resolve();
|
|
});
|
|
});
|
|
})
|
|
);
|
|
});
|
|
|
|
after(async function() {
|
|
mongoose.disconnect();
|
|
});
|