Узел - изменить цвета на выходе при тестировании с мокко - PullRequest
0 голосов
/ 03 июля 2018

У меня есть одна задача gulp, которая выполняет запуск тестовых случаев с использованием mocha.

gulp.task('test', ['cls'], () => {
    execout('mocha -r ts-node/register --timeout 999999 --colors test/*.test.ts');
});

Моя проблема в том, что, как вы видите, есть некоторые серые линии, которые очень трудно увидеть:

enter image description here

У меня вопрос, как я могу изменить этот цвет?

Я успешно попробовал то, что рекомендуется здесь (это работает):
https://github.com/mochajs/mocha/issues/802#issuecomment-18254298):

$ gulp test > >(perl -pe 's/\x1b\[90m/\x1b[92m/g') 2> >(perl -pe 's/\x1b\[90m/\x1b[92m/g' 1>&2)

но мне это не нравится, потому что я не хочу писать все это в командной строке каждый раз, когда хочу выполнить эту команду.

Затем я попытался переместить все это в задачу gulp, как вы можете видеть ниже:

gulp.task('test', ['cls'], () => {
    execout("mocha -r ts-node/register --timeout 999999 --colors test/*.test.ts > >(perl -pe 's/\x1b\[90m/\x1b[92m/g') 2> >(perl -pe 's/\x1b\[90m/\x1b[92m/g' 1>&2)");
});

Но затем я получил следующую ошибку на терминале.

ERR: > was unexpected at this time.

С другой стороны, здесь есть и другое предложение / подход, но я не знаю, как его использовать:

https://github.com/mochajs/mocha/issues/1200#issuecomment-62780003

Есть идеи, как изменить цвет трудно читаемой серой линии?

Спасибо!

1 Ответ

0 голосов
/ 03 июля 2018

Просто измените цвет в base.js руками.

Перейдите: ваш проект root \ node_modules \ mocha \ lib \ reporters \ base.js и поиграйтесь с числами ..

 exports.colors = {
  pass: 32, //with value 32 your gray "pass" lines become green
  fail: 31,
  'bright pass': 92,
  'bright fail': 91,
  'bright yellow': 93,
  pending: 36,
  suite: 0,
  'error title': 0,
  'error message': 31,
  'error stack': 90,
  checkmark: 32,
  fast: 90,
  medium: 33,
  slow: 31,
  green: 32,
  light: 90,
  'diff gutter': 90,
  'diff added': 32,
  'diff removed': 31
}; 

Или создайте файл spec-helper.js в корневом каталоге вашего проекта.
Затем введите --require spec-helper.js в команду оболочки для Mocha. (см. комментарии ниже)

// spec-helper.js
var colors = require('mocha/lib/reporters/base').colors;
    colors['pass'] = 32;
...