summaryrefslogtreecommitdiff
path: root/spec/rubyspec/core/thread/new_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/rubyspec/core/thread/new_spec.rb')
-rw-r--r--spec/rubyspec/core/thread/new_spec.rb56
1 files changed, 0 insertions, 56 deletions
diff --git a/spec/rubyspec/core/thread/new_spec.rb b/spec/rubyspec/core/thread/new_spec.rb
deleted file mode 100644
index b1ed5560a1..0000000000
--- a/spec/rubyspec/core/thread/new_spec.rb
+++ /dev/null
@@ -1,56 +0,0 @@
-require File.expand_path('../../../spec_helper', __FILE__)
-require File.expand_path('../fixtures/classes', __FILE__)
-
-describe "Thread.new" do
- it "creates a thread executing the given block" do
- c = Channel.new
- Thread.new { c << true }.join
- c << false
- c.receive.should == true
- end
-
- it "can pass arguments to the thread block" do
- arr = []
- a, b, c = 1, 2, 3
- t = Thread.new(a,b,c) {|d,e,f| arr << d << e << f }
- t.join
- arr.should == [a,b,c]
- end
-
- it "raises an exception when not given a block" do
- lambda { Thread.new }.should raise_error(ThreadError)
- end
-
- it "creates a subclass of thread calls super with a block in initialize" do
- arr = []
- t = ThreadSpecs::SubThread.new(arr)
- t.join
- arr.should == [1]
- end
-
- it "calls #initialize and raises an error if super not used" do
- c = Class.new(Thread) do
- def initialize
- end
- end
-
- lambda {
- c.new
- }.should raise_error(ThreadError)
- end
-
- it "calls and respects #initialize for the block to use" do
- c = Class.new(Thread) do
- def initialize
- ScratchPad.record [:good]
- super { ScratchPad << :in_thread }
- end
- end
-
- t = c.new
- t.join
-
- ScratchPad.recorded.should == [:good, :in_thread]
- end
-
-end