Sha256: 0e170b907aeec877ae674a205b1ca978e0afa7752e183db3e2c0a283079703f1
Contents?: true
Size: 1.29 KB
Versions: 3
Compression:
Stored size: 1.29 KB
Contents
require "spec_helper" describe "Rapidly opening and closing lots of channels" do before :all do @connection = Bunny.new(:automatic_recovery => false).tap do |c| c.start end end after :all do @connection.close end 100.times do |i| context "in a multi-threaded scenario A (take #{i})" do let(:n) { 20 } it "works correctly" do ts = [] n.times do t = Thread.new do @connection.with_channel do |ch1| q = ch1.queue("", :exclusive => true) q.delete ch1.close end ch2 = @connection.create_channel ch2.close end t.abort_on_exception = true ts << t end ts.each { |t| t.join } end end end 100.times do |i| context "in a multi-threaded scenario B (take #{i})" do let(:n) { 20 } it "works correctly" do ts = [] n.times do t = Thread.new do 3.times do @connection.with_channel do |ch| x = ch.topic('bunny.stress.topics.t2', :durable => false) end end end t.abort_on_exception = true ts << t end ts.each { |t| t.join } end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
bunny-1.6.3 | spec/stress/channel_close_stress_spec.rb |
bunny-1.6.2 | spec/stress/channel_close_stress_spec.rb |
bunny-1.6.1 | spec/stress/channel_close_stress_spec.rb |