diff options
| author | Christopher Aue <[email protected]> | 2017-08-29 23:25:53 +0200 |
|---|---|---|
| committer | Christopher Aue <[email protected]> | 2017-08-29 23:25:53 +0200 |
| commit | 4b0b8f7e1af6e452fa4ab36217290e953b866ac8 (patch) | |
| tree | e9339425912ac61ce32d9ae384ef310d38b54a34 /test/assert.rb | |
| parent | 8976f47e0a0399b4332cfca6e8b9de8345bcf1af (diff) | |
| download | mruby-4b0b8f7e1af6e452fa4ab36217290e953b866ac8.tar.gz mruby-4b0b8f7e1af6e452fa4ab36217290e953b866ac8.zip | |
Refactored #assert_raise and #assert_nothing_raised
Diffstat (limited to 'test/assert.rb')
| -rw-r--r-- | test/assert.rb | 71 |
1 files changed, 30 insertions, 41 deletions
diff --git a/test/assert.rb b/test/assert.rb index 8ab9db29e..6760ae0a7 100644 --- a/test/assert.rb +++ b/test/assert.rb @@ -143,52 +143,41 @@ def assert_not_include(collection, obj, msg = nil) assert_false(collection.include?(obj), msg, diff) end -def assert_raise(*exp) - ret = true - if $mrbtest_assert - $mrbtest_assert_idx += 1 - msg = exp.last.class == String ? exp.pop : nil - msg = msg.to_s + " : " if msg - should_raise = false - begin - yield - should_raise = true - rescue Exception => e - msg = "#{msg}#{exp.inspect} exception expected, not" - diff = " Class: <#{e.class}>\n" + - " Message: #{e.message}" - unless exp.any?{|ex| ex.instance_of?(Module) ? e.kind_of?(ex) : ex == e.class } - $mrbtest_assert.push([$mrbtest_assert_idx, msg, diff]) - ret = false - end - end +def assert_raise(exc, msg = nil) + return true unless $mrbtest_assert + $mrbtest_assert_idx += 1 - exp = exp.first if exp.first - if should_raise - msg = "#{msg}#{exp.inspect} expected but nothing was raised." - $mrbtest_assert.push([$mrbtest_assert_idx, msg, nil]) - ret = false - end + begin + yield + msg ||= "Expected to raise #{exc} but nothing was raised." + diff = nil + $mrbtest_assert.push [$mrbtest_assert_idx, msg, diff] + false + rescue exc + true + rescue Exception => e + msg ||= "Expected to raise #{exc}, not" + diff = " Class: <#{e.class}>\n" + + " Message: #{e.message}" + $mrbtest_assert.push [$mrbtest_assert_idx, msg, diff] + false end - ret end -def assert_nothing_raised(*exp) - ret = true - if $mrbtest_assert - $mrbtest_assert_idx += 1 - msg = exp.last.class == String ? exp.pop : "" - begin - yield - rescue Exception => e - msg = "#{msg} exception raised." - diff = " Class: <#{e.class}>\n" + - " Message: #{e.message}" - $mrbtest_assert.push([$mrbtest_assert_idx, msg, diff]) - ret = false - end +def assert_nothing_raised(msg = nil) + return true unless $mrbtest_assert + $mrbtest_assert_idx += 1 + + begin + yield + true + rescue Exception => e + msg ||= "Expected not to raise #{exc.join(', ')} but it raised" + diff = " Class: <#{e.class}>\n" + + " Message: #{e.message}" + $mrbtest_assert.push [$mrbtest_assert_idx, msg, diff] + false end - ret end ## |
