Я пишу юнит-тесты для моего приложения Node.js, используя Mocha, Chai и Mongoose.Сами тесты работают, если коллекция пустая (по желанию), но у меня возникают проблемы с очисткой коллекции перед тестированием.
let mongoose = require("mongoose");
let Subject = require('../Subject/subject');
//Require the dev-dependencies
let chai = require('chai');
let chaiHttp = require('chai-http');
// let server = require('../server');
let server = "http://localhost:3000"
let should = chai.should();
chai.use(chaiHttp);
describe('subjects', () => {
before((done) => { //Before each test, empty the database
Subject.remove({})
done();
});
describe('/GET subject', () => {
// working test
});
describe('/POST subject', () => {
// working test
});
describe('/GET subject', () => {
// working test
});
});
Я также пробовал варианты
Subject.deleteMany({}, (err) => console.log(err));
и
Subject.find({}, (subject)=>{
subject.remove({}).exec()
})
внутри блока before безрезультатно.Я на всякий случай попробовал удалить и за пределами блока before.Если я console.log(Subject.remove({}))
получу объект Subject, он сможет получить к нему доступ, но на самом деле я не буду делать с ним ничего постоянного.
Я занимался этим пару часов и не приблизился.чтобы понять это, поэтому вся помощь приветствуется.