Defina programaticamente o título do caso de teste com mocha.

Ao testar meus aplicativos nodejs (ou navegador) com o mocha , às vezes sinto a necessidade de exibir os valores de entrada como título do caso de teste para explicar melhor o caso de teste. Obviamente não posso simplesmente fazer console.logisso, pois vai quebrar a formatação do repórter. Ao hackear com ele, encontrei este truque com o qual podemos adicionar ao título programaticamente ou até mesmo alterar o título inteiramente, o último, entretanto, não é muito útil.

Portanto, a propriedade mágica é this._runnable.title. Anexe qualquer string a ele e ele aparecerá como título no relatório de teste. Anexe a ele para preservar o título atual e adicione mais algum texto

Imagine um caso de teste simples escrito com mocha:

var assert = require('assert');

describe
("My Test", function(){
it
("should pass with input ", function(){
var input = "This will be appended at the end of the title";
this._runnable.title = this._runnable.title + input;
assert(typeof input === 'string');
});
});

E correr mocha /path/to/test/file/ --reporter specdá o seguinte relatório.

My Test
should pass with input This will be appended at the end of the title


1 test complete (5ms)

Eu geralmente uso isso para anexar entradas que estou testando no final do título. Seria ótimo se o mocha suportasse esse recurso diretamente sem realmente tocar na _runnablepropriedade, uma vez que é privado e o usuário final não deve hackear com ele. De qualquer forma, bastante útil para esse caso de uso. Se você também apoiar a ideia, +1este PR https://github.com/visionmedia/mocha/pull/918