summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--test/assert.rb26
1 files changed, 23 insertions, 3 deletions
diff --git a/test/assert.rb b/test/assert.rb
index 6d727e889..98057331b 100644
--- a/test/assert.rb
+++ b/test/assert.rb
@@ -62,7 +62,7 @@ def assert(str = 'Assertion failed', iso = '')
$asserts.push(assertion_string('Error: ', str, iso, e))
$kill_test += 1
t_print('X')
- end
+ end
ensure
$mrbtest_assert = nil
end
@@ -99,13 +99,25 @@ def assert_false(ret, msg = nil, diff = nil)
!ret
end
-def assert_equal(exp, act, msg = nil)
+def assert_equal(arg1, arg2 = nil, arg3 = nil)
+ if block_given?
+ exp, act, msg = yield, arg1, arg2
+ else
+ exp, act, msg = arg1, arg2, arg3
+ end
+
msg = "Expected to be equal" unless msg
diff = assertion_diff(exp, act)
assert_true(exp == act, msg, diff)
end
-def assert_not_equal(exp, act, msg = nil)
+def assert_not_equal(arg1, arg2 = nil, arg3 = nil)
+ if block_given?
+ exp, act, msg = yield, arg1, arg2
+ else
+ exp, act, msg = arg1, arg2, arg3
+ end
+
msg = "Expected to be not equal" unless msg
diff = assertion_diff(exp, act)
assert_false(exp == act, msg, diff)
@@ -170,6 +182,14 @@ def assert_kind_of(cls, obj, msg = nil)
end
##
+# Fails unless +exp+ is equal to +act+ in terms of a Float
+def assert_float(exp, act, msg = nil)
+ msg = "Float #{exp} expected to be equal to float #{act}" unless msg
+ diff = assertion_diff(exp, act)
+ assert_true check_float(exp, act), msg, diff
+end
+
+##
# Report the test result and print all assertions
# which were reported broken.
def report()