mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
parent
fc24b0736e
commit
6ddaad606e
1 changed files with 17 additions and 15 deletions
|
@ -105,14 +105,10 @@ module TestIRB
|
||||||
|
|
||||||
tests.each do |code, result|
|
tests.each do |code, result|
|
||||||
if colorize_code_supported?
|
if colorize_code_supported?
|
||||||
actual = with_term { IRB::Color.colorize_code(code, complete: true) }
|
assert_equal_with_term(result, code, complete: true)
|
||||||
assert_equal(result, actual, "Case: IRB::Color.colorize_code(#{code.dump}, complete: true)\nResult: #{humanized_literal(actual)}")
|
assert_equal_with_term(result, code, complete: false)
|
||||||
|
|
||||||
actual = with_term { IRB::Color.colorize_code(code, complete: false) }
|
|
||||||
assert_equal(result, actual, "Case: IRB::Color.colorize_code(#{code.dump}, complete: false)\nResult: #{humanized_literal(actual)}")
|
|
||||||
else
|
else
|
||||||
actual = with_term { IRB::Color.colorize_code(code) }
|
assert_equal_with_term(code, code)
|
||||||
assert_equal(code, actual)
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -127,8 +123,7 @@ module TestIRB
|
||||||
"'foo' + 'bar" => "#{RED}#{BOLD}'#{CLEAR}#{RED}foo#{CLEAR}#{RED}#{BOLD}'#{CLEAR} + #{RED}#{BOLD}'#{CLEAR}#{RED}#{REVERSE}bar#{CLEAR}",
|
"'foo' + 'bar" => "#{RED}#{BOLD}'#{CLEAR}#{RED}foo#{CLEAR}#{RED}#{BOLD}'#{CLEAR} + #{RED}#{BOLD}'#{CLEAR}#{RED}#{REVERSE}bar#{CLEAR}",
|
||||||
"('foo" => "(#{RED}#{BOLD}'#{CLEAR}#{RED}#{REVERSE}foo#{CLEAR}",
|
"('foo" => "(#{RED}#{BOLD}'#{CLEAR}#{RED}#{REVERSE}foo#{CLEAR}",
|
||||||
}.each do |code, result|
|
}.each do |code, result|
|
||||||
actual = with_term { IRB::Color.colorize_code(code, complete: true) }
|
assert_equal_with_term(result, code, complete: true)
|
||||||
assert_equal(result, actual, "Case: colorize_code(#{code.dump}, complete: true)\nResult: #{humanized_literal(actual)}")
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -139,16 +134,13 @@ module TestIRB
|
||||||
"('foo" => "(#{RED}#{BOLD}'#{CLEAR}#{RED}foo#{CLEAR}",
|
"('foo" => "(#{RED}#{BOLD}'#{CLEAR}#{RED}foo#{CLEAR}",
|
||||||
}.each do |code, result|
|
}.each do |code, result|
|
||||||
if colorize_code_supported?
|
if colorize_code_supported?
|
||||||
actual = with_term { IRB::Color.colorize_code(code, complete: false) }
|
assert_equal_with_term(result, code, complete: false)
|
||||||
assert_equal(result, actual, "Case: colorize_code(#{code.dump}, complete: false)\nResult: #{humanized_literal(actual)}")
|
|
||||||
|
|
||||||
unless complete_option_supported?
|
unless complete_option_supported?
|
||||||
actual = with_term { IRB::Color.colorize_code(code, complete: true) }
|
assert_equal_with_term(result, code, complete: true)
|
||||||
assert_equal(result, actual, "Case: colorize_code(#{code.dump}, complete: false)\nResult: #{humanized_literal(actual)}")
|
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
actual = with_term { IRB::Color.colorize_code(code) }
|
assert_equal_with_term(code, code)
|
||||||
assert_equal(code, actual)
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -200,6 +192,16 @@ module TestIRB
|
||||||
ENV.replace(env) if env
|
ENV.replace(env) if env
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def assert_equal_with_term(result, code, **opts)
|
||||||
|
actual = with_term { IRB::Color.colorize_code(code, **opts) }
|
||||||
|
message = -> {
|
||||||
|
args = [code.dump]
|
||||||
|
opts.each {|kwd, val| args << "#{kwd}: #{val}"}
|
||||||
|
"Case: colorize_code(#{args.join(', ')})\nResult: #{humanized_literal(actual)}"
|
||||||
|
}
|
||||||
|
assert_equal(result, actual, message)
|
||||||
|
end
|
||||||
|
|
||||||
def humanized_literal(str)
|
def humanized_literal(str)
|
||||||
str
|
str
|
||||||
.gsub(CLEAR, '@@@{CLEAR}')
|
.gsub(CLEAR, '@@@{CLEAR}')
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue