summaryrefslogtreecommitdiff
path: root/spec/ruby/library/fiber/resume_spec.rb
blob: 8709d011425e9ccf056bd1c3bfad77a9da1202be (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
require File.expand_path('../../../spec_helper', __FILE__)

with_feature :fiber_library do
  require 'fiber'

  describe "Fiber#resume" do
    it "raises a FiberError if the Fiber has transfered control to another Fiber" do
      fiber1 = Fiber.new { true }
      fiber2 = Fiber.new { fiber1.transfer; Fiber.yield }
      fiber2.resume
      lambda { fiber2.resume }.should raise_error(FiberError)
    end
  end
end