aboutsummaryrefslogtreecommitdiffstats
path: root/test/ruby/test_fiber.rb
diff options
context:
space:
mode:
authorko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-11-09 10:02:22 +0000
committerko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-11-09 10:02:22 +0000
commit0c215e34dfc51e0757322c8ef17d421c6dfb07e4 (patch)
tree326e13207d3eec134c30719957685c4e27f1b09e /test/ruby/test_fiber.rb
parent572e4807e6400e1f319d01ef88b1123d4c99efce (diff)
downloadruby-0c215e34dfc51e0757322c8ef17d421c6dfb07e4.tar.gz
* test/ruby/test_fiber.rb: add tests for r33684 (Fiber#resume).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33686 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/ruby/test_fiber.rb')
-rw-r--r--test/ruby/test_fiber.rb23
1 files changed, 23 insertions, 0 deletions
diff --git a/test/ruby/test_fiber.rb b/test/ruby/test_fiber.rb
index ed7ecc71ae..7cf4a6b119 100644
--- a/test/ruby/test_fiber.rb
+++ b/test/ruby/test_fiber.rb
@@ -220,5 +220,28 @@ class TestFiber < Test::Unit::TestCase
end
assert_equal("Can't call on top of Fiber or Thread", error.message, bug5083)
end
+
+ def test_prohibit_resume_transfered_fiber
+ assert_raise(FiberError){
+ root_fiber = Fiber.current
+ f = Fiber.new{
+ root_fiber.transfer
+ }
+ f.transfer
+ f.resume
+ }
+ assert_raise(FiberError){
+ g=nil
+ f=Fiber.new{
+ g.resume
+ g.resume
+ }
+ g=Fiber.new{
+ f.resume
+ f.resume
+ }
+ f.transfer
+ }
+ end
end