Попытка проверить функцию с mocha + nyc - PullRequest
0 голосов
/ 03 ноября 2018

Я пытаюсь проверить свою функцию с помощью mocha + nyc для проверки покрытия. Это функция для проверки:

function TypeCompare(Obj){

Obj.forEach(function (el){
  el.Age = StringToNumber(el.Age);
  el.Name = isValidString(el.Name);
  el.Surname = isValidString(el.Surname); 
  el.Mail = isEmail(el.Mail);
  el.DateofReg = StringToDate(el.DateofReg);
  el.Phone = isPhone(el.Phone);
  el.Time = StringToTime(el.Time);
  if(el.Age == "Age error" || el.Name == "Name/Sname error" || el.Surname == "Name/Sname error" || el.DateofReg == "Date error" || el.Time == "Time error" ||el.Mail == "Email error" || el.Phone == "Phone error"){
  invalid_types.push(el);
} else {
  valid_types.push(el);
}
});
RecordToDB(valid_types);
RecordToCSV(invalid_types);
}

Функция, получающая массив объектов, проверяет объекты с другой функцией на наличие действительных и отправляет действительные объекты в valid_types и недействительные в invalid_types. Это моя функция тестирования:

describe('Testing function TypeCompare which getting arr[objects] on input 
check arr for valid and invalid objects', function () {
  it('should return [valid_obj] and [] if all objects is valid', function () 
{
var arr = [{Age: '20', Name: 'Kiryl', Surname: 'Kazushchyk', Mail: 'kastys1@yandex.ru', DateofReg: '10-20-2015',
  Phone: '+375257794915', Time: '10:44'},
  {Age: 'fgh', Name: 'Kiryl', Surname: 'Kazushchyk', Mail: 'kastys1@yandex.ru', DateofReg: '10-20-2015',
    Phone: '+375257794915', Time: '10:44'}];
app.TypeCompare(arr);
// console.log(TypeCompare.valid_types);
// console.log(TypeCompare.invalid_types);
var expected_valid = [{Age: '20', Name: 'Kiryl', Surname: 'Kazushchyk', Mail: 'kastys1@yandex.ru', DateofReg: '2015-10-20',
  Phone: '+375257794915', Time: '10:44:00'}];
var expected_invalid = [{Age: 'Age error', Name: 'Kiryl', Surname: 'Kazushchyk', Mail: 'kastys1@yandex.ru', DateofReg: '2015-10-20',
  Phone: '+375257794915', Time: '10:44:00'}];

assert(app.invalid_types[0].Age === expected_invalid[0].Age);
assert(app.valid_types[0].Age === expected_valid[0].Age);
  });
});

Я экспортирую это:

module.exports.TypeCompare =TypeCompare;
module.exports.valid_types = valid_types;
module.exports.invalid_types = invalid_types;

Тест пройден нормально, но я не получаю никакой информации о резюме: результат теста без покрытия

Если я проверяю свои другие функции, все в порядке: Результат теста других функций

Может кто-нибудь сказать мне, в чем проблема?

1 Ответ

0 голосов
/ 04 ноября 2018

решаемая. Проблема была в функциях, которые вызывались с TypeCompare

...