amqp 0.8.0.rc14 → 0.8.0.rc15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.travis.yml +3 -3
- data/Gemfile +9 -6
- data/README.md +18 -12
- data/amqp.gemspec +2 -2
- data/bin/docup +3 -0
- data/docs/08Migration.textile +67 -5
- data/docs/AMQP091ModelExplained.textile +138 -101
- data/docs/Bindings.textile +109 -8
- data/docs/ConnectingToTheBroker.textile +8 -0
- data/docs/ConnectionEncryptionWithTLS.textile +5 -0
- data/docs/DocumentationGuidesIndex.textile +21 -5
- data/docs/Durability.textile +3 -1
- data/docs/ErrorHandling.textile +20 -0
- data/docs/Exchanges.textile +7 -1
- data/docs/GettingStarted.textile +10 -0
- data/docs/PatternsAndUseCases.textile +6 -0
- data/docs/Queues.textile +7 -1
- data/docs/RabbitMQVersions.textile +6 -1
- data/docs/RunningTests.textile +8 -3
- data/docs/Troubleshooting.textile +31 -0
- data/docs/VendorSpecificExtensions.textile +137 -6
- data/examples/extensions/rabbitmq/per_queue_message_ttl.rb +24 -25
- data/examples/extensions/rabbitmq/publisher_confirmations_with_transient_messages.rb +11 -20
- data/examples/extensions/rabbitmq/using_alternate_exchanges.rb +28 -0
- data/examples/hello_world.rb +1 -1
- data/lib/amqp.rb +1 -0
- data/lib/amqp/compatibility/ruby187_patchlevel_check.rb +2 -0
- data/lib/amqp/integration/rails.rb +17 -0
- data/lib/amqp/version.rb +1 -1
- data/spec/integration/authentication_spec.rb +2 -2
- data/spec/integration/fanout_exchange_routing_spec.rb +43 -199
- data/spec/integration/multiple_consumers_per_queue_spec.rb +7 -7
- data/spec/integration/regressions/concurrent_publishing_on_the_same_channel_spec.rb +1 -1
- data/spec/integration/stress/publishing_of_messages_with_incrementing_sizes_spec.rb +50 -0
- metadata +13 -9
@@ -12,7 +12,7 @@ describe "Multiple non-exclusive consumers per queue" do
|
|
12
12
|
include EventedSpec::SpecHelper
|
13
13
|
|
14
14
|
default_options AMQP_OPTS
|
15
|
-
default_timeout
|
15
|
+
default_timeout 10
|
16
16
|
|
17
17
|
let(:messages) { (0..99).map {|i| "Message #{i}" } }
|
18
18
|
|
@@ -62,7 +62,7 @@ describe "Multiple non-exclusive consumers per queue" do
|
|
62
62
|
end
|
63
63
|
end
|
64
64
|
|
65
|
-
done(
|
65
|
+
done(6.5) {
|
66
66
|
@consumer1_mailbox.size.should == 34
|
67
67
|
@consumer2_mailbox.size.should == 33
|
68
68
|
@consumer3_mailbox.size.should == 33
|
@@ -108,7 +108,7 @@ describe "Multiple non-exclusive consumers per queue" do
|
|
108
108
|
end
|
109
109
|
end
|
110
110
|
|
111
|
-
done(
|
111
|
+
done(5.0) {
|
112
112
|
@consumer1_mailbox.size.should == 34
|
113
113
|
@consumer2_mailbox.size.should == 33
|
114
114
|
@consumer3_mailbox.size.should == 33
|
@@ -154,7 +154,7 @@ describe "Multiple non-exclusive consumers per queue" do
|
|
154
154
|
end
|
155
155
|
end
|
156
156
|
|
157
|
-
done(
|
157
|
+
done(5.0) {
|
158
158
|
@consumer1_mailbox.size.should == 50
|
159
159
|
@consumer2_mailbox.size.should == 0
|
160
160
|
@consumer3_mailbox.size.should == 50
|
@@ -203,7 +203,7 @@ describe "Multiple non-exclusive consumers per queue" do
|
|
203
203
|
end
|
204
204
|
end
|
205
205
|
|
206
|
-
done(
|
206
|
+
done(5.0) {
|
207
207
|
@consumer1_mailbox.size.should == 100
|
208
208
|
@consumer2_mailbox.size.should == 0
|
209
209
|
@consumer3_mailbox.size.should == 0
|
@@ -249,7 +249,7 @@ describe "Multiple non-exclusive consumers per queue" do
|
|
249
249
|
end
|
250
250
|
end
|
251
251
|
|
252
|
-
done(
|
252
|
+
done(5.0) {
|
253
253
|
@consumer1_mailbox.size.should == 100
|
254
254
|
@consumer2_mailbox.size.should == 0
|
255
255
|
@consumer3_mailbox.size.should == 0
|
@@ -311,7 +311,7 @@ describe "Multiple non-exclusive consumers per queue" do
|
|
311
311
|
end
|
312
312
|
end
|
313
313
|
|
314
|
-
done(
|
314
|
+
done(6.0) {
|
315
315
|
@returned_messages.size.should == 100
|
316
316
|
}
|
317
317
|
end # it
|
@@ -0,0 +1,50 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
require "spec_helper"
|
4
|
+
|
5
|
+
# this example group ensures no message size is special
|
6
|
+
# (with respect to framing edge cases). MK.
|
7
|
+
describe "Stress test with messages with incrementing sizes" do
|
8
|
+
|
9
|
+
#
|
10
|
+
# Environment
|
11
|
+
#
|
12
|
+
|
13
|
+
include EventedSpec::AMQPSpec
|
14
|
+
default_options AMQP_OPTS
|
15
|
+
default_timeout 60
|
16
|
+
|
17
|
+
amqp_before do
|
18
|
+
@channel = AMQP::Channel.new
|
19
|
+
@channel.on_error do |ch, close|
|
20
|
+
raise "Channel-level error!: #{close.inspect}"
|
21
|
+
end
|
22
|
+
|
23
|
+
@queue = @channel.queue("", :auto_delete => true)
|
24
|
+
@exchange = @channel.fanout("amqpgem.tests.integration.fanout.exchange", :auto_delete => true)
|
25
|
+
|
26
|
+
@queue.bind(@exchange)
|
27
|
+
end
|
28
|
+
|
29
|
+
|
30
|
+
#
|
31
|
+
# Examples
|
32
|
+
#
|
33
|
+
|
34
|
+
it "passes" do
|
35
|
+
list = Range.new(0, 4785).to_a
|
36
|
+
received = Array.new
|
37
|
+
|
38
|
+
@queue.subscribe do |metadata, payload|
|
39
|
+
received << payload.bytesize
|
40
|
+
|
41
|
+
done if received == list
|
42
|
+
end
|
43
|
+
|
44
|
+
EventMachine.add_timer(1.0) do
|
45
|
+
list.each do |n|
|
46
|
+
@exchange.publish("i" * n)
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
metadata
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: amqp
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 15424139
|
5
5
|
prerelease: 6
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 8
|
9
9
|
- 0
|
10
10
|
- rc
|
11
|
-
-
|
12
|
-
version: 0.8.0.
|
11
|
+
- 15
|
12
|
+
version: 0.8.0.rc15
|
13
13
|
platform: ruby
|
14
14
|
authors:
|
15
15
|
- Aman Gupta
|
@@ -19,7 +19,7 @@ autorequire:
|
|
19
19
|
bindir: bin
|
20
20
|
cert_chain: []
|
21
21
|
|
22
|
-
date: 2011-
|
22
|
+
date: 2011-08-28 00:00:00 +04:00
|
23
23
|
default_executable:
|
24
24
|
dependencies:
|
25
25
|
- !ruby/object:Gem::Dependency
|
@@ -42,14 +42,14 @@ dependencies:
|
|
42
42
|
requirement: &id002 !ruby/object:Gem::Requirement
|
43
43
|
none: false
|
44
44
|
requirements:
|
45
|
-
- -
|
45
|
+
- - ~>
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
hash:
|
47
|
+
hash: 59
|
48
48
|
segments:
|
49
49
|
- 0
|
50
50
|
- 8
|
51
|
-
-
|
52
|
-
version: 0.8.
|
51
|
+
- 2
|
52
|
+
version: 0.8.2
|
53
53
|
type: :runtime
|
54
54
|
version_requirements: *id002
|
55
55
|
- !ruby/object:Gem::Dependency
|
@@ -58,7 +58,7 @@ dependencies:
|
|
58
58
|
requirement: &id003 !ruby/object:Gem::Requirement
|
59
59
|
none: false
|
60
60
|
requirements:
|
61
|
-
- -
|
61
|
+
- - ~>
|
62
62
|
- !ruby/object:Gem::Version
|
63
63
|
hash: 63
|
64
64
|
segments:
|
@@ -108,6 +108,7 @@ files:
|
|
108
108
|
- amqp.gemspec
|
109
109
|
- bin/ci/before_build.sh
|
110
110
|
- bin/cleanify.rb
|
111
|
+
- bin/docup
|
111
112
|
- bin/irb
|
112
113
|
- bin/set_test_suite_realms_up.sh
|
113
114
|
- docs/08Migration.textile
|
@@ -167,6 +168,7 @@ files:
|
|
167
168
|
- examples/exchanges/declare_an_exchange_without_assignment.rb
|
168
169
|
- examples/extensions/rabbitmq/per_queue_message_ttl.rb
|
169
170
|
- examples/extensions/rabbitmq/publisher_confirmations_with_transient_messages.rb
|
171
|
+
- examples/extensions/rabbitmq/using_alternate_exchanges.rb
|
170
172
|
- examples/guides/getting_started/01_hello_world.rb
|
171
173
|
- examples/guides/getting_started/02_hello_world_dslified.rb
|
172
174
|
- examples/guides/getting_started/03_blabbr.rb
|
@@ -273,6 +275,7 @@ files:
|
|
273
275
|
- lib/amqp/extensions/rabbitmq.rb
|
274
276
|
- lib/amqp/header.rb
|
275
277
|
- lib/amqp/int_allocator.rb
|
278
|
+
- lib/amqp/integration/rails.rb
|
276
279
|
- lib/amqp/logger.rb
|
277
280
|
- lib/amqp/queue.rb
|
278
281
|
- lib/amqp/rpc.rb
|
@@ -317,6 +320,7 @@ files:
|
|
317
320
|
- spec/integration/regressions/issue66_spec.rb
|
318
321
|
- spec/integration/reply_queue_communication_spec.rb
|
319
322
|
- spec/integration/store_and_forward_spec.rb
|
323
|
+
- spec/integration/stress/publishing_of_messages_with_incrementing_sizes_spec.rb
|
320
324
|
- spec/integration/topic_subscription_spec.rb
|
321
325
|
- spec/integration/tx_commit_spec.rb
|
322
326
|
- spec/integration/tx_rollback_spec.rb
|