summaryrefslogtreecommitdiffhomepage
path: root/mrbgems/mruby-fiber/test/fiber.rb
diff options
context:
space:
mode:
Diffstat (limited to 'mrbgems/mruby-fiber/test/fiber.rb')
-rw-r--r--mrbgems/mruby-fiber/test/fiber.rb16
1 files changed, 15 insertions, 1 deletions
diff --git a/mrbgems/mruby-fiber/test/fiber.rb b/mrbgems/mruby-fiber/test/fiber.rb
index 8838208f6..c09b49925 100644
--- a/mrbgems/mruby-fiber/test/fiber.rb
+++ b/mrbgems/mruby-fiber/test/fiber.rb
@@ -96,8 +96,22 @@ assert('Recursive resume of Fiber') do
f1.resume
Fiber.yield 0
}
- assert_equal 0, f2.resume
+ f3 = Fiber.new {
+ f2.resume
+ }
+ assert_equal 0, f3.resume
f2.resume
assert_false f1.alive?
assert_false f2.alive?
+ assert_false f3.alive?
+end
+
+assert('Root fiber resume') do
+ root = Fiber.current
+ assert_raise(RuntimeError) { root.resume }
+ f = Fiber.new {
+ assert_raise(RuntimeError) { root.resume }
+ }
+ f.resume
+ assert_false f.alive?
end