def assert_compare(expected, operator, actual, message=nil)
_wrap_assertion do
assert_send([["<", "<=", ">", ">="], :include?, operator.to_s])
case operator.to_s
when "<"
operator_description = "less than"
when "<="
operator_description = "less than or equal to"
when ">"
operator_description = "greater than"
when ">="
operator_description = "greater than or equal to"
end
template = "<?> \#{operator} <?> should be true\n<?> expected \#{operator_description}\n<?>.\n"
full_message = build_message(message, template,
expected, actual,
expected, actual)
assert_block(full_message) do
expected.send(operator, actual)
end
end
end