multiple_man 0.5.1 → 0.5.2

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 82202196c1530933abce0b808052135a271a9b6b
4
- data.tar.gz: 59a804a32f6dcf3810976b983419e6fe3638aaff
3
+ metadata.gz: 0971001166a43f4e0a34b1e36d64c08f65610092
4
+ data.tar.gz: 86fc132b82ee066581ebf3efb06e246ab2160ec8
5
5
  SHA512:
6
- metadata.gz: a865251110618cc5dfbde0a91eb4b3af2b291333f69e794fbac5bf0f801f64c4bcbafd7d2317cda920f12d60c3dde69125e64aeb52a28a74daf16146a9a6a93e
7
- data.tar.gz: e507296ff7fb57a709331f23b13a208d5d1a3139f46feb42826033471092724334818e559ac9803e4a21a3165f0a779158ec9923b8184d93f32d2f36108e0c7f
6
+ metadata.gz: 773894ff3d54b23f7310aaab37b6115a597a29dfd12c3ed59e036b77bfc80c4daba9e46dce27c0479da28dc94780657aea5a87b5dfa8e7a292ee4a5347f9eea1
7
+ data.tar.gz: 5fad481c69da0df8e218c397a9b2c63d85a64c601deccacf3c9857f06c7233af295222ce684457913fd14bd2cc4068d2abd4295d7a533dbae367b00264dfbb2c
@@ -40,6 +40,9 @@ module MultipleMan
40
40
  rescue Exception => ex
41
41
  MultipleMan.logger.error " Error - #{ex.message}\n\n#{ex.backtrace}"
42
42
  MultipleMan.error(ex)
43
+
44
+ # Requeue the message
45
+ queue.channel.nack(delivery_info.delivery_tag, false, true)
43
46
  else
44
47
  MultipleMan.logger.debug " Successfully processed!"
45
48
  queue.channel.acknowledge(delivery_info.delivery_tag, false)
@@ -1,3 +1,3 @@
1
1
  module MultipleMan
2
- VERSION = "0.5.1"
2
+ VERSION = "0.5.2"
3
3
  end
@@ -46,4 +46,17 @@ describe MultipleMan::Listener do
46
46
  subscriber.should_receive(:create).with({"a" => 1, "b" => 2})
47
47
  listener.process_message(OpenStruct.new(routing_key: "app.MockClass1.create"), '{"a":1,"b":2}')
48
48
  end
49
+
50
+ it "should nack on failure" do
51
+ connection_stub = double(MultipleMan::Connection).as_null_object
52
+ MultipleMan::Listener.stub(:connection).and_return(connection_stub)
53
+ subscriber = double(MultipleMan::Subscribers::ModelSubscriber, klass: MockClass1, routing_key: "MockClass1.#").as_null_object
54
+ listener = MultipleMan::Listener.new(subscriber)
55
+
56
+ connection_stub.should_receive(:nack)
57
+ MultipleMan.should_receive(:error)
58
+ subscriber.should_receive(:create).with({"a" => 1, "b" => 2}).and_raise("fail!")
59
+
60
+ listener.process_message(OpenStruct.new(routing_key: "app.MockClass1.create"), '{"a":1,"b":2}')
61
+ end
49
62
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: multiple_man
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
4
+ version: 0.5.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Brunner
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-04-02 00:00:00.000000000 Z
11
+ date: 2014-04-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler