From b674fc9ca2498d55c7e4f91592279eb985b8bea1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=9C=E9=83=A8=E6=98=8C=E5=B9=B3?= Date: Tue, 28 Jul 2020 10:58:37 +0900 Subject: Thread.exclusive: delete Has been deprecated since 2069c9e031fc968d6d3d0fe30a9316851e4d91d8. [Feature #17125][ruby-core:99636] --- spec/ruby/core/thread/exclusive_spec.rb | 66 +++++++++++++++++---------------- 1 file changed, 34 insertions(+), 32 deletions(-) (limited to 'spec') diff --git a/spec/ruby/core/thread/exclusive_spec.rb b/spec/ruby/core/thread/exclusive_spec.rb index ca8f105da4..8c2bc0e82a 100644 --- a/spec/ruby/core/thread/exclusive_spec.rb +++ b/spec/ruby/core/thread/exclusive_spec.rb @@ -1,47 +1,49 @@ require_relative '../../spec_helper' -describe "Thread.exclusive" do - before :each do - ScratchPad.clear - $VERBOSE, @verbose = nil, $VERBOSE - end +ruby_version_is ''...'2.8' do + describe "Thread.exclusive" do + before :each do + ScratchPad.clear + $VERBOSE, @verbose = nil, $VERBOSE + end - after :each do - $VERBOSE = @verbose - end + after :each do + $VERBOSE = @verbose + end - it "yields to the block" do - Thread.exclusive { ScratchPad.record true } - ScratchPad.recorded.should == true - end + it "yields to the block" do + Thread.exclusive { ScratchPad.record true } + ScratchPad.recorded.should == true + end - it "returns the result of yielding" do - Thread.exclusive { :result }.should == :result - end + it "returns the result of yielding" do + Thread.exclusive { :result }.should == :result + end - it "blocks the caller if another thread is also in an exclusive block" do - m = Mutex.new - q1 = Queue.new - q2 = Queue.new + it "blocks the caller if another thread is also in an exclusive block" do + m = Mutex.new + q1 = Queue.new + q2 = Queue.new - t = Thread.new { - Thread.exclusive { - q1.push :ready - q2.pop + t = Thread.new { + Thread.exclusive { + q1.push :ready + q2.pop + } } - } - q1.pop.should == :ready + q1.pop.should == :ready - -> { Thread.exclusive { } }.should block_caller + -> { Thread.exclusive { } }.should block_caller - q2.push :done - t.join - end + q2.push :done + t.join + end - it "is not recursive" do - Thread.exclusive do - -> { Thread.exclusive { } }.should raise_error(ThreadError) + it "is not recursive" do + Thread.exclusive do + -> { Thread.exclusive { } }.should raise_error(ThreadError) + end end end end -- cgit v1.2.3