Я пытаюсь заставить наблюдателей запускать тесты автоматически при изменении файлов, и получил большую часть того, что мне нужно, за исключением того факта, что все цвета ANSI из RSpec игнорируются.Код неисправности выглядит следующим образом:
stdin, stdout, stderr = Open3.popen3(cmd)
stdout.each_line do |line|
last_output = line
puts line
end
Если cmd равен чему-то вроде rspec spec/**/*.rb
, то приведенный выше код прекрасно работает с RSpec, за исключением того, что все выходные данные являются монохромными.Я рассмотрел использование Kernel.system
вместо этого, однако система не возвращает вывод, который мне нужен, чтобы определить, провалился ли тест или прошел успешно.Как получить выходные данные из скрипта, который выполняется из Ruby, включая цвет ANSI, и вывести его на консоль?