describe :queue_close, shared: true do
it do
q = @object
q << 1
q.close
q.pop.should == 1
q.pop.should == nil
q.pop.should == nil
end
it do
q = @object
q.close
lambda {
q << 1
}.should raise_error(ClosedQueueError)
end
it do
q = @object
q.close
q.closed?.should be_true
q.close # no effect
q.closed?.should be_true
end
end