diff options
Diffstat (limited to 'spec/ruby/core/threadgroup')
| -rw-r--r-- | spec/ruby/core/threadgroup/add_spec.rb | 9 | ||||
| -rw-r--r-- | spec/ruby/core/threadgroup/default_spec.rb | 2 | ||||
| -rw-r--r-- | spec/ruby/core/threadgroup/enclose_spec.rb | 13 | ||||
| -rw-r--r-- | spec/ruby/core/threadgroup/enclosed_spec.rb | 4 | ||||
| -rw-r--r-- | spec/ruby/core/threadgroup/fixtures/classes.rb | 6 | ||||
| -rw-r--r-- | spec/ruby/core/threadgroup/list_spec.rb | 15 |
6 files changed, 20 insertions, 29 deletions
diff --git a/spec/ruby/core/threadgroup/add_spec.rb b/spec/ruby/core/threadgroup/add_spec.rb index 5d1354e65f..2921c1ab22 100644 --- a/spec/ruby/core/threadgroup/add_spec.rb +++ b/spec/ruby/core/threadgroup/add_spec.rb @@ -1,15 +1,14 @@ require_relative '../../spec_helper' -require_relative 'fixtures/classes' describe "ThreadGroup#add" do before :each do - @chan1,@chan2 = Channel.new,Channel.new - @thread = Thread.new { @chan1 << :go; @chan2.receive } - @chan1.receive + @q1, @q2 = Queue.new, Queue.new + @thread = Thread.new { @q1 << :go; @q2.pop } + @q1.pop end after :each do - @chan2 << :done + @q2 << :done @thread.join end diff --git a/spec/ruby/core/threadgroup/default_spec.rb b/spec/ruby/core/threadgroup/default_spec.rb index d7d4726cc2..4f57508abf 100644 --- a/spec/ruby/core/threadgroup/default_spec.rb +++ b/spec/ruby/core/threadgroup/default_spec.rb @@ -2,7 +2,7 @@ require_relative '../../spec_helper' describe "ThreadGroup::Default" do it "is a ThreadGroup instance" do - ThreadGroup::Default.should be_kind_of(ThreadGroup) + ThreadGroup::Default.should.is_a?(ThreadGroup) end it "is the ThreadGroup of the main thread" do diff --git a/spec/ruby/core/threadgroup/enclose_spec.rb b/spec/ruby/core/threadgroup/enclose_spec.rb index d4a4359c66..6f703d4ce2 100644 --- a/spec/ruby/core/threadgroup/enclose_spec.rb +++ b/spec/ruby/core/threadgroup/enclose_spec.rb @@ -1,15 +1,14 @@ require_relative '../../spec_helper' -require_relative 'fixtures/classes' describe "ThreadGroup#enclose" do before :each do - @chan1,@chan2 = Channel.new,Channel.new - @thread = Thread.new { @chan1 << :go; @chan2.receive } - @chan1.receive + @q1, @q2 = Queue.new, Queue.new + @thread = Thread.new { @q1 << :go; @q2.pop } + @q1.pop end after :each do - @chan2 << :done + @q2 << :done @thread.join end @@ -18,8 +17,8 @@ describe "ThreadGroup#enclose" do default_group = @thread.group thread_group.add(@thread) thread_group.enclose - lambda do + -> do default_group.add(@thread) - end.should raise_error(ThreadError) + end.should.raise(ThreadError) end end diff --git a/spec/ruby/core/threadgroup/enclosed_spec.rb b/spec/ruby/core/threadgroup/enclosed_spec.rb index a734256a64..cf8a5bb4c6 100644 --- a/spec/ruby/core/threadgroup/enclosed_spec.rb +++ b/spec/ruby/core/threadgroup/enclosed_spec.rb @@ -3,12 +3,12 @@ require_relative '../../spec_helper' describe "ThreadGroup#enclosed?" do it "returns false when a ThreadGroup has not been enclosed (default state)" do thread_group = ThreadGroup.new - thread_group.enclosed?.should be_false + thread_group.enclosed?.should == false end it "returns true when a ThreadGroup is enclosed" do thread_group = ThreadGroup.new thread_group.enclose - thread_group.enclosed?.should be_true + thread_group.enclosed?.should == true end end diff --git a/spec/ruby/core/threadgroup/fixtures/classes.rb b/spec/ruby/core/threadgroup/fixtures/classes.rb deleted file mode 100644 index 7dfe5e92d1..0000000000 --- a/spec/ruby/core/threadgroup/fixtures/classes.rb +++ /dev/null @@ -1,6 +0,0 @@ -unless defined? Channel - require 'thread' - class Channel < Queue - alias receive shift - end -end diff --git a/spec/ruby/core/threadgroup/list_spec.rb b/spec/ruby/core/threadgroup/list_spec.rb index 5f2281af8d..ef601d75ea 100644 --- a/spec/ruby/core/threadgroup/list_spec.rb +++ b/spec/ruby/core/threadgroup/list_spec.rb @@ -1,20 +1,19 @@ require_relative '../../spec_helper' -require_relative 'fixtures/classes' describe "ThreadGroup#list" do it "returns the list of threads in the group" do - chan = Channel.new - th1 = Thread.new { chan << :go; sleep } - chan.receive.should == :go + q = Queue.new + th1 = Thread.new { q << :go; sleep } + q.pop.should == :go tg = ThreadGroup.new tg.add(th1) - tg.list.should include(th1) + tg.list.should.include?(th1) - th2 = Thread.new { chan << :go; sleep } - chan.receive.should == :go + th2 = Thread.new { q << :go; sleep } + q.pop.should == :go tg.add(th2) - (tg.list & [th1, th2]).should include(th1, th2) + (tg.list & [th1, th2]).to_set.should == Set[th1, th2] Thread.pass while th1.status and th1.status != 'sleep' Thread.pass while th2.status and th2.status != 'sleep' |
