2016-10-21 4 views
0

Я использую awesome_print, потому что я хочу видеть Bigdecimal цифры, такие как 0.5, а не <BigDecimal:7fbfdafa54c8,'0.5E0',9(18)>.Есть ли awesome_print, как драгоценный камень для Minitest результат

И я также хочу использовать ту же функцию для результата Minitest.

Есть ли драгоценный камень для этого?

Я пробовал minitest-reporters, но, видимо, этот камень не меняется Bigdecimal внешний вид.

+0

in rails console? – 7urkm3n

+0

Когда я запускаю тест 'bundle exec rake test'. – ironsand

ответ

1

Override inspect на BigDecimal:

class BigDecimal 
    def inspect 
    self.ai 
    end 
end 

Это использование Kernel#ai из удивительной печати (который, кстати, принимает принимает удобный html: true аргумент)

Причины Я знаю inspect вызываются по Minitest является что то, что вы видите (<BigDecimal:7fbfdafa54c8,'0.5E0',9(18)>) - это то же самое, что и вы, если бы вы запустили BigDecimal.new(num).inspect

+0

Где я могу переопределить метод, не затрагивая основной код проекта? Добавив 'test_helper.rb', я просто получил' ArgumentError'. – ironsand

+0

Вы правы, мой код был неправильным. См. Обновленный ответ. Переопределить 'проверка', а не' to_s' –

Смежные вопросы