summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2013-05-29 00:06:22 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2013-05-29 00:06:22 +0900
commit5c6d281866c131ebcecd9b40b88d2100d7880feb (patch)
tree74b0653e85e5217ef45c14b3dac558319fad5301
parentb172be47fa07e3228f35d046e93fecad8af4c797 (diff)
parent83bd1bab31277075d71f98430689ed26b08a087d (diff)
downloadmruby-5c6d281866c131ebcecd9b40b88d2100d7880feb.tar.gz
mruby-5c6d281866c131ebcecd9b40b88d2100d7880feb.zip
Merge branch 'master' of github.com:mruby/mruby
-rw-r--r--mrbgems/mruby-fiber/test/fiber.rb24
1 files changed, 24 insertions, 0 deletions
diff --git a/mrbgems/mruby-fiber/test/fiber.rb b/mrbgems/mruby-fiber/test/fiber.rb
index fc3e02e88..90bbaa2af 100644
--- a/mrbgems/mruby-fiber/test/fiber.rb
+++ b/mrbgems/mruby-fiber/test/fiber.rb
@@ -40,3 +40,27 @@ assert('Fiber iteration') {
assert('Fiber with splat in the block argument list') {
Fiber.new{|*x|x}.resume(1) == [1]
}
+
+assert('Fiber raises on resume when dead') {
+ e2 = nil
+ r1 = true
+ begin
+ f = Fiber.new{}
+ f.resume
+ r1 = f.alive?
+ f.resume
+ rescue => e1
+ e2 = e1
+ end
+ r1 == false and e2.class == RuntimeError
+}
+
+assert('Yield raises when called on root fiber') {
+ e2 = nil
+ begin
+ Fiber.yield
+ rescue => e1
+ e2 = e1
+ end
+ e2.class == ArgumentError
+}