summaryrefslogtreecommitdiffhomepage
path: root/test
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2019-02-21 22:37:09 +0900
committerGitHub <[email protected]>2019-02-21 22:37:09 +0900
commit769b56c3aeeb6601e844817c04a72cace3000fe9 (patch)
tree3cbfdfac03fff360c1490ee0703c32b294024850 /test
parent76262b8e28368fe1177c21fe2dfb88dee069f085 (diff)
parentad789944dbd53610fa1e1c7f80b125270d4bcc70 (diff)
downloadmruby-769b56c3aeeb6601e844817c04a72cace3000fe9.tar.gz
mruby-769b56c3aeeb6601e844817c04a72cace3000fe9.zip
Merge pull request #4290 from shuujii/refactor-exception-handling-in-assert
Refactor exception handling in `assert`
Diffstat (limited to 'test')
-rw-r--r--test/assert.rb16
1 files changed, 7 insertions, 9 deletions
diff --git a/test/assert.rb b/test/assert.rb
index fbf1d926d..3bbe79e2e 100644
--- a/test/assert.rb
+++ b/test/assert.rb
@@ -47,23 +47,21 @@ def assert(str = 'Assertion failed', iso = '')
$mrbtest_assert_idx = 0
yield
if($mrbtest_assert.size > 0)
- $asserts.push(assertion_string('Fail: ', str, iso, nil))
+ $asserts.push(assertion_string('Fail: ', str, iso))
$ko_test += 1
t_print('F')
else
$ok_test += 1
t_print('.')
end
+ rescue MRubyTestSkip => e
+ $asserts.push(assertion_string('Skip: ', str, iso, e))
+ t_print('?')
rescue Exception => e
bt = e.backtrace if $mrbtest_verbose
- if e.class.to_s == 'MRubyTestSkip'
- $asserts.push(assertion_string('Skip: ', str, iso, e, nil))
- t_print('?')
- else
- $asserts.push(assertion_string("#{e.class}: ", str, iso, e, bt))
- $kill_test += 1
- t_print('X')
- end
+ $asserts.push(assertion_string("#{e.class}: ", str, iso, e, bt))
+ $kill_test += 1
+ t_print('X')
ensure
$mrbtest_assert = nil
end