summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorKevin Fischer <[email protected]>2020-04-08 13:52:00 +0900
committerAmir Rajan <[email protected]>2020-04-15 16:51:19 -0500
commit0de26556f0c730bb506b4526c043f50c1345d10b (patch)
tree0bd2418ce1afa005db845b7e27671cfd1ff16ee6
parentda0fdcfbd2bd9739fe056eb646920df79a32954c (diff)
downloaddragonruby-game-toolkit-contrib-0de26556f0c730bb506b4526c043f50c1345d10b.tar.gz
dragonruby-game-toolkit-contrib-0de26556f0c730bb506b4526c043f50c1345d10b.zip
Add raises! method to GTK::Assert
-rw-r--r--dragon/assert.rb13
1 files changed, 13 insertions, 0 deletions
diff --git a/dragon/assert.rb b/dragon/assert.rb
index 47d39ef..0eb8c2a 100644
--- a/dragon/assert.rb
+++ b/dragon/assert.rb
@@ -47,5 +47,18 @@ module GTK
end
nil
end
+
+ def raises! exception_class, message = nil
+ @assertion_performed = true
+ begin
+ yield
+ rescue exception_class
+ return # Success
+ rescue Exception => e
+ raise "Expected #{exception_class.name} to be raised but instead #{e.class.name} was raised\n#{message}"
+ else
+ raise "Expected #{exception_class.name} to be raised but nothing was raised\n#{message}"
+ end
+ end
end
end