Я пишу модульные тесты для куска проекта, модуль базы данных является отдельным (он устанавливает соединение с базой данных и имеет метод массовой вставки). Код в моем тестовом файле блока выглядит следующим образом:Mocha js before hook и не требует правильного выполнения
var database = require('./db.js'); //once the database is connected there is a log saying connected to the database
var Data = database.model; //module export for the model
before(function(){
console.log("We are in the before hook");
for(var i = 1; i <= 10; i++){
var startDate = new Date(2016,1,1,0,0,0,0);
var endDate = new Date(2016,1,1,1,0,0,0);
var data = test_data.genIncreasing('Watch_'+i , startDate.getTime(), endDate.getTime() , 2000, 9); //will get around 3600 points
console.log('Inserting ' + data.length + ' datapoints into database');
database.bulkInsert(data, function(err, data){
if(err){
Should.fail('Could not insert data into data base');
}else{
console.log('Inserted Watch_' + i + ' data into database');
}
});
}
});
Теперь в моей консоли я ожидал увидеть соединение по умолчанию
Mongoose открытый для DB-URI
с последующим
Мы находимся в предварительном крюке
Вставка 1800 точек данных в базе данных
Вставка 1800 точек данных в базу данных [10 раз]
Но я получаю
Мы в перед тем зацепить
Вставка 1800 точек данных в биллинговую
Вставка 1800 данных в базу данных [10 раз]
Далее следует подключения по умолчанию
Mongoose Открыты: DB_URI
Я сделал немного поиска и узнал, требует, предполагают, чтобы быть синхронными и поэтому тесты мокко блока. Что мне здесь не хватает? Можете ли вы дать мне представление о том, что происходит?
Я предполагаю, что ваше раньше внутри 'описать'? –
Нет, это снаружи, но я получаю те же результаты, когда я помещаю его в описание –
Может быть, соединение в 'db.js' лениво? – Petr