From 70efa1ad78e57ed6a77cbe6fb3bcd7767669b7c3 Mon Sep 17 00:00:00 2001 From: Michael Miller Date: Wed, 13 Jul 2022 11:11:31 -0600 Subject: [PATCH] Indent multi-line values in failure block output --- .../formatting/components/fail_result_block.cr | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/spectator/formatting/components/fail_result_block.cr b/src/spectator/formatting/components/fail_result_block.cr index 2f18528..e93a94d 100644 --- a/src/spectator/formatting/components/fail_result_block.cr +++ b/src/spectator/formatting/components/fail_result_block.cr @@ -40,9 +40,18 @@ module Spectator::Formatting::Components private def value_line(io, key, value) key = key.to_s padding = " " * (@longest_key - key.size) + lines = value.lines line(io) do - io << padding << key.colorize(:red) << ": ".colorize(:red) << value + io << padding << key.colorize(:red) << ": ".colorize(:red) << lines.shift + end + + unless lines.empty? + indent(@longest_key + 2) do + lines.each do |line| + line(io) { io << line } + end + end end end