我正在用Test :: Unit编写我的第一个单元测试,我已经达到了需要比较两个数字的程度。令我惊讶的是,我发现以下都不是available:
assert_greater_than
assert_lesser_than
assert_greater_or_equal_than
assert_lesser_or_equal_than
这是正常的吗?那我该怎么办?
由于
答案 0 :(得分:62)
不是像你建议的那样提供一堆不同的断言,而是Test :: Unit提供方法assert_operator
,使用如下:
assert_operator x, :>, y
assert_operator x, :>=, y
etc.
答案 1 :(得分:11)
这个简单的事情怎么样,
assert x>y
答案 2 :(得分:2)
以下是您可以在test/test_helper.rb
def assert_gt(a, b)
assert_operator a, :>, b
end
def assert_gte(a, b)
assert_operator a, :>=, b
end
def assert_lt(a, b)
assert_operator a, :<, b
end
def assert_lte(a, b)
assert_operator a, :<=, b
end
然后这样打电话:
assert_gt 6, 3
assert_gte 5, 5
assert_lt 4, 5
assert_lte 5, 5