diff options
Diffstat (limited to 'test/fiber/test_scheduler.rb')
-rw-r--r-- | test/fiber/test_scheduler.rb | 26 |
1 files changed, 21 insertions, 5 deletions
diff --git a/test/fiber/test_scheduler.rb b/test/fiber/test_scheduler.rb index f38b650846..72bde9fcc3 100644 --- a/test/fiber/test_scheduler.rb +++ b/test/fiber/test_scheduler.rb @@ -11,11 +11,27 @@ class TestFiberScheduler < Test::Unit::TestCase end end + def test_fiber_new + f = Fiber.new{} + refute f.blocking? + end + + def test_fiber_new_with_options + f = Fiber.new(blocking: true){} + assert f.blocking? + + f = Fiber.new(blocking: false){} + refute f.blocking? + + f = Fiber.new(pool: nil){} + refute f.blocking? + end + def test_closed_at_thread_exit scheduler = Scheduler.new thread = Thread.new do - Thread.current.scheduler = scheduler + Fiber.set_scheduler scheduler end thread.join @@ -27,8 +43,8 @@ class TestFiberScheduler < Test::Unit::TestCase scheduler = Scheduler.new thread = Thread.new do - Thread.current.scheduler = scheduler - Thread.current.scheduler = nil + Fiber.set_scheduler scheduler + Fiber.set_scheduler nil assert scheduler.closed? end @@ -41,7 +57,7 @@ class TestFiberScheduler < Test::Unit::TestCase require 'scheduler' scheduler = Scheduler.new - Thread.current.scheduler = scheduler + Fiber.set_scheduler scheduler Fiber.schedule do sleep(0) @@ -52,7 +68,7 @@ class TestFiberScheduler < Test::Unit::TestCase def test_optional_close thread = Thread.new do - Thread.current.scheduler = Object.new + Fiber.set_scheduler Object.new end thread.join |