Skip to content

Commit b690da9

Browse files
committed
Added assert_equal_with_term
1 parent 2c94813 commit b690da9

File tree

1 file changed

+17
-15
lines changed

1 file changed

+17
-15
lines changed

Diff for: test/irb/test_color.rb

+17-15
Original file line numberDiff line numberDiff line change
@@ -105,14 +105,10 @@ def test_colorize_code
105105

106106
tests.each do |code, result|
107107
if colorize_code_supported?
108-
actual = with_term { IRB::Color.colorize_code(code, complete: true) }
109-
assert_equal(result, actual, "Case: IRB::Color.colorize_code(#{code.dump}, complete: true)\nResult: #{humanized_literal(actual)}")
110-
111-
actual = with_term { IRB::Color.colorize_code(code, complete: false) }
112-
assert_equal(result, actual, "Case: IRB::Color.colorize_code(#{code.dump}, complete: false)\nResult: #{humanized_literal(actual)}")
108+
assert_equal_with_term(result, code, complete: true)
109+
assert_equal_with_term(result, code, complete: false)
113110
else
114-
actual = with_term { IRB::Color.colorize_code(code) }
115-
assert_equal(code, actual)
111+
assert_equal_with_term(code, code)
116112
end
117113
end
118114
end
@@ -127,8 +123,7 @@ def test_colorize_code_complete_true
127123
"'foo' + 'bar" => "#{RED}#{BOLD}'#{CLEAR}#{RED}foo#{CLEAR}#{RED}#{BOLD}'#{CLEAR} + #{RED}#{BOLD}'#{CLEAR}#{RED}#{REVERSE}bar#{CLEAR}",
128124
"('foo" => "(#{RED}#{BOLD}'#{CLEAR}#{RED}#{REVERSE}foo#{CLEAR}",
129125
}.each do |code, result|
130-
actual = with_term { IRB::Color.colorize_code(code, complete: true) }
131-
assert_equal(result, actual, "Case: colorize_code(#{code.dump}, complete: true)\nResult: #{humanized_literal(actual)}")
126+
assert_equal_with_term(result, code, complete: true)
132127
end
133128
end
134129

@@ -139,16 +134,13 @@ def test_colorize_code_complete_false
139134
"('foo" => "(#{RED}#{BOLD}'#{CLEAR}#{RED}foo#{CLEAR}",
140135
}.each do |code, result|
141136
if colorize_code_supported?
142-
actual = with_term { IRB::Color.colorize_code(code, complete: false) }
143-
assert_equal(result, actual, "Case: colorize_code(#{code.dump}, complete: false)\nResult: #{humanized_literal(actual)}")
137+
assert_equal_with_term(result, code, complete: false)
144138

145139
unless complete_option_supported?
146-
actual = with_term { IRB::Color.colorize_code(code, complete: true) }
147-
assert_equal(result, actual, "Case: colorize_code(#{code.dump}, complete: false)\nResult: #{humanized_literal(actual)}")
140+
assert_equal_with_term(result, code, complete: true)
148141
end
149142
else
150-
actual = with_term { IRB::Color.colorize_code(code) }
151-
assert_equal(code, actual)
143+
assert_equal_with_term(code, code)
152144
end
153145
end
154146
end
@@ -200,6 +192,16 @@ def io.tty?; true; end
200192
ENV.replace(env) if env
201193
end
202194

195+
def assert_equal_with_term(result, code, **opts)
196+
actual = with_term { IRB::Color.colorize_code(code, **opts) }
197+
message = -> {
198+
args = [code.dump]
199+
opts.each {|kwd, val| args << "#{kwd}: #{val}"}
200+
"Case: colorize_code(#{args.join(', ')})\nResult: #{humanized_literal(actual)}"
201+
}
202+
assert_equal(result, actual, message)
203+
end
204+
203205
def humanized_literal(str)
204206
str
205207
.gsub(CLEAR, '@@@{CLEAR}')

0 commit comments

Comments
 (0)