summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2013-05-28 07:37:17 -0700
committerYukihiro "Matz" Matsumoto <[email protected]>2013-05-28 07:37:17 -0700
commit83bd1bab31277075d71f98430689ed26b08a087d (patch)
treee1d51e64a4eeba25cb0ccd880f93cd2331345c26
parent8487ab06dd9ca14d2c308a1f3efc18ef807647bd (diff)
parent35b58e571da25315e39d77453a7e0712ece3473f (diff)
downloadmruby-83bd1bab31277075d71f98430689ed26b08a087d.tar.gz
mruby-83bd1bab31277075d71f98430689ed26b08a087d.zip
Merge pull request #1268 from carsonmcdonald/fiberextests
Add a couple Fiber tests
-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
+}