Есть ли способ получить имя файла текущего теста в mocha reporter?
В базе и примерах ничего не нашел.
Есть ли способ получить имя файла текущего теста в mocha reporter?
В базе и примерах ничего не нашел.
На самом деле, имя файла передается Suite в поле file в mocha, начиная с этого запрос на извлечение. Просто в настоящее время mocha чаще всего запускается как плагин karma (а именно, karma-mocha plugin ), и, говоря о декабре 14 года, этот плагин просто не передает дальше информацию об имени файла.
Чтобы сделать этот ответ самосогласованным, вот как Suite формируется в mocha (это реализация tdd, но она аналогична для bdd):
context.suite = function(title, fn){
var suite = Suite.create(suites[0], title);
suite.file = file;
suites.unshift(suite);
fn.call(suite);
suites.shift();
return suite;
};
А вот как формируются масти в karma-mocha/lib/adapter.js:
runner.on('test end', function(test) {
var skipped = test.pending === true;
var result = {
id: '',
description: test.title,
suite: [],
success: test.state === 'passed',
skipped: skipped,
time: skipped ? 0 : test.duration,
log: test.$errors || []
};
var pointer = test.parent;
while (!pointer.root) {
result.suite.unshift(pointer.title);
pointer = pointer.parent;
}
tc.result(result);
});
Но знаете что, я думаю, это хорошая вещь, чтобы выпустить запрос функции в проекте karma-mocha.
runner.on('fail', test => test.filename)
(пришел к этому спустя долгое время, и ответ не сразу был очевиден) - person laggingreflex   schedule 18.12.2015