summaryrefslogtreecommitdiff
path: root/spec/ruby/shared/queue
diff options
context:
space:
mode:
Diffstat (limited to 'spec/ruby/shared/queue')
-rw-r--r--spec/ruby/shared/queue/clear.rb12
-rw-r--r--spec/ruby/shared/queue/close.rb14
-rw-r--r--spec/ruby/shared/queue/closed.rb12
-rw-r--r--spec/ruby/shared/queue/deque.rb85
-rw-r--r--spec/ruby/shared/queue/empty.rb12
-rw-r--r--spec/ruby/shared/queue/enque.rb18
-rw-r--r--spec/ruby/shared/queue/length.rb9
-rw-r--r--spec/ruby/shared/queue/num_waiting.rb16
8 files changed, 0 insertions, 178 deletions
diff --git a/spec/ruby/shared/queue/clear.rb b/spec/ruby/shared/queue/clear.rb
deleted file mode 100644
index 5db5a5b497..0000000000
--- a/spec/ruby/shared/queue/clear.rb
+++ /dev/null
@@ -1,12 +0,0 @@
-describe :queue_clear, shared: true do
- it "removes all objects from the queue" do
- queue = @object.call
- queue << Object.new
- queue << 1
- queue.empty?.should be_false
- queue.clear
- queue.empty?.should be_true
- end
-
- # TODO: test for atomicity of Queue#clear
-end
diff --git a/spec/ruby/shared/queue/close.rb b/spec/ruby/shared/queue/close.rb
deleted file mode 100644
index 0e7c69acba..0000000000
--- a/spec/ruby/shared/queue/close.rb
+++ /dev/null
@@ -1,14 +0,0 @@
-describe :queue_close, shared: true do
- it "may be called multiple times" do
- q = @object.call
- q.close
- q.closed?.should be_true
- q.close # no effect
- q.closed?.should be_true
- end
-
- it "returns self" do
- q = @object.call
- q.close.should == q
- end
-end
diff --git a/spec/ruby/shared/queue/closed.rb b/spec/ruby/shared/queue/closed.rb
deleted file mode 100644
index b3cea0c524..0000000000
--- a/spec/ruby/shared/queue/closed.rb
+++ /dev/null
@@ -1,12 +0,0 @@
-describe :queue_closed?, shared: true do
- it "returns false initially" do
- queue = @object.call
- queue.closed?.should be_false
- end
-
- it "returns true when the queue is closed" do
- queue = @object.call
- queue.close
- queue.closed?.should be_true
- end
-end
diff --git a/spec/ruby/shared/queue/deque.rb b/spec/ruby/shared/queue/deque.rb
deleted file mode 100644
index 8b755dd9b7..0000000000
--- a/spec/ruby/shared/queue/deque.rb
+++ /dev/null
@@ -1,85 +0,0 @@
-describe :queue_deq, shared: true do
- it "removes an item from the queue" do
- q = @object.call
- q << Object.new
- q.size.should == 1
- q.send @method
- q.size.should == 0
- end
-
- it "returns items in the order they were added" do
- q = @object.call
- q << 1
- q << 2
- q.send(@method).should == 1
- q.send(@method).should == 2
- end
-
- it "blocks the thread until there are items in the queue" do
- q = @object.call
- v = 0
-
- th = Thread.new do
- q.send(@method)
- v = 1
- end
-
- v.should == 0
- q << Object.new
- th.join
- v.should == 1
- end
-
- it "removes an item from a closed queue" do
- q = @object.call
- q << 1
- q.close
- q.send(@method).should == 1
- end
-
- it "returns nil for a closed empty queue" do
- q = @object.call
- q.close
- q.send(@method).should == nil
- end
-
- it "returns nil for an empty queue that becomes closed" do
- q = @object.call
-
- t = Thread.new {
- q.send(@method).should == nil
- }
-
- Thread.pass until t.status == "sleep" && q.num_waiting == 1
- q.close
- t.join
- end
-
- describe "in non-blocking mode" do
- it "removes an item from the queue" do
- q = @object.call
- q << Object.new
- q.size.should == 1
- q.send(@method, true)
- q.size.should == 0
- end
-
- it "raises a ThreadError if the queue is empty" do
- q = @object.call
- -> { q.send(@method, true) }.should raise_error(ThreadError)
- end
-
- it "removes an item from a closed queue" do
- q = @object.call
- q << 1
- q.close
- q.send(@method, true).should == 1
- end
-
- it "raises a ThreadError for a closed empty queue" do
- q = @object.call
- q.close
- -> { q.send(@method, true) }.should raise_error(ThreadError)
- end
- end
-end
diff --git a/spec/ruby/shared/queue/empty.rb b/spec/ruby/shared/queue/empty.rb
deleted file mode 100644
index 4acd831d48..0000000000
--- a/spec/ruby/shared/queue/empty.rb
+++ /dev/null
@@ -1,12 +0,0 @@
-describe :queue_empty?, shared: true do
- it "returns true on an empty Queue" do
- queue = @object.call
- queue.empty?.should be_true
- end
-
- it "returns false when Queue is not empty" do
- queue = @object.call
- queue << Object.new
- queue.empty?.should be_false
- end
-end
diff --git a/spec/ruby/shared/queue/enque.rb b/spec/ruby/shared/queue/enque.rb
deleted file mode 100644
index 8aba02e544..0000000000
--- a/spec/ruby/shared/queue/enque.rb
+++ /dev/null
@@ -1,18 +0,0 @@
-describe :queue_enq, shared: true do
- it "adds an element to the Queue" do
- q = @object.call
- q.size.should == 0
- q.send @method, Object.new
- q.size.should == 1
- q.send @method, Object.new
- q.size.should == 2
- end
-
- it "is an error for a closed queue" do
- q = @object.call
- q.close
- -> {
- q.send @method, Object.new
- }.should raise_error(ClosedQueueError)
- end
-end
diff --git a/spec/ruby/shared/queue/length.rb b/spec/ruby/shared/queue/length.rb
deleted file mode 100644
index a0143a4e19..0000000000
--- a/spec/ruby/shared/queue/length.rb
+++ /dev/null
@@ -1,9 +0,0 @@
-describe :queue_length, shared: true do
- it "returns the number of elements" do
- q = @object.call
- q.send(@method).should == 0
- q << Object.new
- q << Object.new
- q.send(@method).should == 2
- end
-end
diff --git a/spec/ruby/shared/queue/num_waiting.rb b/spec/ruby/shared/queue/num_waiting.rb
deleted file mode 100644
index b054951e45..0000000000
--- a/spec/ruby/shared/queue/num_waiting.rb
+++ /dev/null
@@ -1,16 +0,0 @@
-describe :queue_num_waiting, shared: true do
- it "reports the number of threads waiting on the queue" do
- q = @object.call
- threads = []
-
- 5.times do |i|
- q.num_waiting.should == i
- t = Thread.new { q.deq }
- Thread.pass until q.num_waiting == i+1
- threads << t
- end
-
- threads.each { q.enq Object.new }
- threads.each {|t| t.join }
- end
-end