vx-consumer 0.1.8 → 0.2.0.pre0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 91cc865b557860f2df8a8b3b83ef9915478cf573
4
- data.tar.gz: 54fa22ef5ec0baac75c2d1f7188f93c15795413a
3
+ metadata.gz: 72a0606009d8fcddce82c5e680e0f6a096f48eff
4
+ data.tar.gz: a8efb65edee51b7872bfc9b65a28c1306a221f29
5
5
  SHA512:
6
- metadata.gz: c71db91598daccdca00d80cd1d643725e1b5f0ba92487d8e4bf36dc137c01bee35dc13b79c221057b989fc7d4b3f550a21b7d51ea40319293d4829c5941a013f
7
- data.tar.gz: a4ee0a3a19f4335cf703941dbe1a53f5591baeefef4a2f8c286b620e9b2bc4eca7fed3998483fe80c531b9ccd11f7bb2892e92f8b7276e52d2ff7ea69dfacc83
6
+ metadata.gz: 78c6e3ad13d5edd30627afc7c8ca66b19ba3f241a559e13c3ecc4fba6f9d730c23210d9c541b79981a05aa15b723ea674c74640f9c05fce24e6357138dde3644
7
+ data.tar.gz: 4c5f4f42d8c8b6d96d704832bdd452ffc28314034365079e785a2e139813bff0e21996f427015626018ef951e0741ccb96e7a1803217e7a4d160f0743bbb228b
data/.travis.yml CHANGED
@@ -2,7 +2,6 @@ services:
2
2
  - rabbitmq
3
3
 
4
4
  rvm:
5
- - 2.0
6
5
  - 2.1
7
6
 
8
7
  script: bundle exec rspec spec/ -b
@@ -55,12 +55,16 @@ module Vx
55
55
 
56
56
  def cancel
57
57
  instrument('cancel_consumer', consumer: vx_consumer_name, channel: channel.id)
58
- unless channel.closed?
58
+ unless closed?
59
59
  super
60
- channel.close unless channel.closed?
60
+ channel.close unless closed?
61
61
  end
62
62
  end
63
63
 
64
+ def closed?
65
+ channel.closed?
66
+ end
67
+
64
68
  def join
65
69
  channel.work_pool.join
66
70
  end
@@ -1,5 +1,5 @@
1
1
  module Vx
2
2
  module Consumer
3
- VERSION = "0.1.8"
3
+ VERSION = "0.2.0.pre0"
4
4
  end
5
5
  end
@@ -52,6 +52,32 @@ describe Vx::Consumer do
52
52
  expect(Bob._collected).to eq([{"a"=>0}, {"a"=>1}, {"a"=>2}])
53
53
  end
54
54
 
55
+ it "start/stop many times" do
56
+ fn = lambda do |idx|
57
+ consumer = Bob.subscribe
58
+ sleep 1
59
+ 3.times {|n| Bob.publish("a" => n + (3 * idx)) }
60
+
61
+ Timeout.timeout(5) do
62
+ loop do
63
+ break if Bob._collected.size == 3 + (3 * idx)
64
+ sleep 0.1
65
+ end
66
+ end
67
+ Timeout.timeout(3) do
68
+ consumer.graceful_shutdown
69
+ end
70
+
71
+ expect(consumer).to be_closed
72
+ end
73
+
74
+ 10.times do |n|
75
+ fn.call(n)
76
+ end
77
+
78
+ expect(Bob._collected.flat_map(&:values)).to eq((0..29).to_a)
79
+ end
80
+
55
81
  it "pub/sub in multithreaded environment" do
56
82
  handle_errors do
57
83
  cns = []
data/vx-consumer.gemspec CHANGED
@@ -18,7 +18,7 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.add_runtime_dependency 'bunny', '= 1.3.1'
21
+ spec.add_runtime_dependency 'bunny', '= 1.6.3'
22
22
  spec.add_runtime_dependency 'vx-common-rack-builder', '>= 0.0.2'
23
23
 
24
24
  spec.add_development_dependency "bundler", "~> 1.5"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vx-consumer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.8
4
+ version: 0.2.0.pre0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dmitry Galinsky
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-06-22 00:00:00.000000000 Z
11
+ date: 2014-11-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bunny
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 1.3.1
19
+ version: 1.6.3
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 1.3.1
26
+ version: 1.6.3
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: vx-common-rack-builder
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -129,9 +129,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
129
129
  version: '0'
130
130
  required_rubygems_version: !ruby/object:Gem::Requirement
131
131
  requirements:
132
- - - '>='
132
+ - - '>'
133
133
  - !ruby/object:Gem::Version
134
- version: '0'
134
+ version: 1.3.1
135
135
  requirements: []
136
136
  rubyforge_project:
137
137
  rubygems_version: 2.2.2