mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
Update to ruby/spec@21a48d9
This commit is contained in:
parent
3bf36979d8
commit
c75df796d8
25 changed files with 454 additions and 38 deletions
62
spec/ruby/core/fiber/blocking_spec.rb
Normal file
62
spec/ruby/core/fiber/blocking_spec.rb
Normal file
|
@ -0,0 +1,62 @@
|
|||
require_relative '../../spec_helper'
|
||||
require_relative 'shared/blocking'
|
||||
|
||||
ruby_version_is "3.0" do
|
||||
require "fiber"
|
||||
|
||||
describe "Fiber.blocking?" do
|
||||
it_behaves_like :non_blocking_fiber, -> { Fiber.blocking? }
|
||||
|
||||
context "when fiber is blocking" do
|
||||
context "root Fiber of the main thread" do
|
||||
it "returns 1 for blocking: true" do
|
||||
fiber = Fiber.new(blocking: true) { Fiber.blocking? }
|
||||
blocking = fiber.resume
|
||||
|
||||
blocking.should == 1
|
||||
end
|
||||
end
|
||||
|
||||
context "root Fiber of a new thread" do
|
||||
it "returns 1 for blocking: true" do
|
||||
thread = Thread.new do
|
||||
fiber = Fiber.new(blocking: true) { Fiber.blocking? }
|
||||
blocking = fiber.resume
|
||||
|
||||
blocking.should == 1
|
||||
end
|
||||
|
||||
thread.join
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
describe "Fiber#blocking?" do
|
||||
it_behaves_like :non_blocking_fiber, -> { Fiber.current.blocking? }
|
||||
|
||||
context "when fiber is blocking" do
|
||||
context "root Fiber of the main thread" do
|
||||
it "returns true for blocking: true" do
|
||||
fiber = Fiber.new(blocking: true) { Fiber.current.blocking? }
|
||||
blocking = fiber.resume
|
||||
|
||||
blocking.should == true
|
||||
end
|
||||
end
|
||||
|
||||
context "root Fiber of a new thread" do
|
||||
it "returns true for blocking: true" do
|
||||
thread = Thread.new do
|
||||
fiber = Fiber.new(blocking: true) { Fiber.current.blocking? }
|
||||
blocking = fiber.resume
|
||||
|
||||
blocking.should == true
|
||||
end
|
||||
|
||||
thread.join
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Add table
Add a link
Reference in a new issue