msgr 1.4.0 → 1.5.0

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
  SHA256:
3
- metadata.gz: d1d1c4c93abd233370b3175719c7d41902637c1d8cae51223f86f3cd16611da9
4
- data.tar.gz: 432388472168160b0bc1be0ee303656ab0776674d3178ac63f6c375a7395fb6c
3
+ metadata.gz: d505941f2c4bf678a5d8c5185b2d65c510fcc08aa818eca251e83e8f0225b178
4
+ data.tar.gz: 3f78955ee1074190d7fa63384294ae1b09802fcb362645b2aa52b79062ab9057
5
5
  SHA512:
6
- metadata.gz: 11ce36e23b4a499aaaff01e67a1be9a91048e19e9c55cf0487491aef49d3343d1ead2cb854e4c1a1035319e524b764f62c4846e6632bac5fa81da9b7fb125329
7
- data.tar.gz: 62e2a4460070ae90fe264f270cab8852f81d85f177e2fe77e8b730926f88a11dd651506cc1b5ef58fafefa3b23c1ea0889239beacd7ba6b8342d04d65e11e05c
6
+ metadata.gz: e421518963ac9b653faaab3da418687a96b4a7b91dfd931e7afc8d3166b247c711a2e6eb199bcef6fc0e83d970308b2998a152b80e32b3bc1d7f248af5fd161d
7
+ data.tar.gz: 776b325f75779d39ad2c254020082da70ef4bf5a0dc1ec601c392546472315b29cfc0821718f94491d023077d1d84c7617b15ed808b9fa3f9b2aef1de56dd151
@@ -3,27 +3,31 @@ on: [push]
3
3
  jobs:
4
4
  test:
5
5
  name: Ruby ${{ matrix.ruby }} / ${{ matrix.gemfile }}
6
- runs-on: ubuntu-20.04
6
+ runs-on: ubuntu-22.04
7
7
 
8
8
  strategy:
9
9
  matrix:
10
10
  ruby:
11
+ - "3.2"
12
+ - "3.1"
11
13
  - "3.0"
12
14
  - "2.7"
13
- - "2.6"
14
- - "2.5"
15
15
  gemfile:
16
16
  - rails_5.2.gemfile
17
17
  - rails_6.0.gemfile
18
18
  - rails_6.1.gemfile
19
19
  - rails_7.0.gemfile
20
20
  exclude:
21
+ - ruby: "3.2"
22
+ gemfile: rails_5.2.gemfile
23
+ - ruby: "3.2"
24
+ gemfile: rails_6.0.gemfile
25
+ - ruby: "3.1"
26
+ gemfile: rails_5.2.gemfile
27
+ - ruby: "3.1"
28
+ gemfile: rails_6.0.gemfile
21
29
  - ruby: "3.0"
22
30
  gemfile: rails_5.2.gemfile
23
- - ruby: "2.5"
24
- gemfile: rails_7.0.gemfile
25
- - ruby: "2.6"
26
- gemfile: rails_7.0.gemfile
27
31
  fail-fast: False
28
32
 
29
33
  services:
@@ -61,7 +65,7 @@ jobs:
61
65
 
62
66
  rubocop:
63
67
  name: rubocop
64
- runs-on: ubuntu-20.04
68
+ runs-on: ubuntu-22.04
65
69
 
66
70
  env:
67
71
  BUNDLE_JOBS: 4
data/.gitignore CHANGED
@@ -1,29 +1,29 @@
1
- *.gem
2
- *.rbc
1
+ _yardoc
3
2
  .bundle
4
3
  .config
4
+ .idea
5
+ .rbx
6
+ .rspec
5
7
  .yardoc
6
- Gemfile.lock
7
- InstalledFiles
8
- _yardoc
8
+ *.gem
9
+ *.iml
10
+ *.lock
11
+ *.log
12
+ *.rbc
9
13
  coverage
10
14
  doc/
15
+ InstalledFiles
11
16
  lib/bundler/man
12
17
  pkg
18
+ pmip
13
19
  rdoc
20
+ spec/integration/dummy/.generators
21
+ spec/integration/dummy/.rakeTasks
22
+ spec/integration/dummy/.sass-cache
23
+ spec/integration/dummy/db/*.sqlite3
24
+ spec/integration/dummy/db/*.sqlite3-journal
25
+ spec/integration/dummy/tmp
14
26
  spec/reports
15
27
  test/tmp
16
28
  test/version_tmp
17
29
  tmp
18
- .idea
19
- pmip
20
- *.iml
21
- .rbx
22
- .rspec
23
- *.log
24
- spec/integration/dummy/db/*.sqlite3
25
- spec/integration/dummy/db/*.sqlite3-journal
26
- spec/integration/dummy/tmp
27
- spec/integration/dummy/.sass-cache
28
- spec/integration/dummy/.generators
29
- spec/integration/dummy/.rakeTasks
data/.markdownlint.yml ADDED
@@ -0,0 +1,22 @@
1
+ # markdownlint config
2
+
3
+ # The CHANGELOG contains duplicated headers by design
4
+ MD024: false
5
+
6
+ # MD013/line-length: disable line length for all. We prefer lines as
7
+ # long as paragraph with in-editor line breaks.
8
+ MD013: false
9
+
10
+ # MD033/no-inline-html: allow often need tags
11
+ MD033:
12
+ allowed_elements:
13
+ - figure
14
+ - figcaption
15
+
16
+ # MD046/code-block-style: code block style conflicting with
17
+ # admonitions...
18
+ MD046: false
19
+
20
+ # MD048/code-fence-style: code fence style
21
+ MD048:
22
+ style: backtick
data/.rubocop.yml CHANGED
@@ -1,8 +1,8 @@
1
1
  inherit_gem:
2
- my-rubocop: default.yml
2
+ rubocop-config: default.yml
3
3
 
4
4
  AllCops:
5
- TargetRubyVersion: 2.5
5
+ TargetRubyVersion: 2.7
6
6
  SuggestExtensions: False
7
7
  Exclude:
8
8
  - gemfiles/**/*
@@ -0,0 +1 @@
1
+ AMQP
data/Appraisals CHANGED
@@ -2,13 +2,13 @@
2
2
 
3
3
  # vim: ft=ruby
4
4
 
5
- appraise 'rails-5.2' do
6
- gem 'rails', '~> 5.2.0'
7
- end
5
+ # appraise 'rails-5.2' do
6
+ # gem 'rails', '~> 5.2.0'
7
+ # end
8
8
 
9
- appraise 'rails-6.0' do
10
- gem 'rails', '~> 6.0.0'
11
- end
9
+ # appraise 'rails-6.0' do
10
+ # gem 'rails', '~> 6.0.0'
11
+ # end
12
12
 
13
13
  appraise 'rails-6.1' do
14
14
  gem 'rails', '~> 6.1.0'
data/CHANGELOG.md CHANGED
@@ -6,6 +6,20 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ## [1.5.0] - 2023-08-16
10
+
11
+ ### Added
12
+
13
+ - Support for Ruby 3.1 and 3.2
14
+
15
+ ### Changed
16
+
17
+ - Drop support for Ruby < 2.7
18
+
19
+ ### Fixed
20
+
21
+ - `TestPool#run` passing down keyword arguments
22
+
9
23
  ## [1.4.0] - 2022-01-10
10
24
 
11
25
  ### Added
@@ -48,7 +62,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
48
62
 
49
63
  ### Changed
50
64
 
51
- - Serialize JSON using core JSON instead of MultiJson
65
+ - Serialize JSON using core JSON instead of `MultiJson`
52
66
  - Remove application/text fallback for payload (#25)
53
67
 
54
68
  ## [1.1.0] - 2018-07-25
@@ -88,7 +102,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
88
102
 
89
103
  ### Changed
90
104
 
91
- - Rework TestPool timeout handling to not account processing time
105
+ - Rework `TestPool` timeout handling to not account processing time
92
106
 
93
107
  ## [0.14.1] - 2016-02-17
94
108
 
@@ -124,7 +138,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
124
138
 
125
139
  ### Added
126
140
 
127
- - Add checkcredentials config option to disable initial connect to rabbitmq
141
+ - Add `checkcredentials` config option to disable initial connect to RabbitMQ
128
142
  server to check the credentials
129
143
 
130
144
  ### Changed
@@ -135,13 +149,13 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
135
149
 
136
150
  ### Added
137
151
 
138
- - Add nack for messages when an error is rescued by dispatcher
152
+ - Add `#nack` for messages when an error is rescued by dispatcher
139
153
 
140
154
  ## [0.11.0-rc1] - 2014-03-29
141
155
 
142
156
  ### Added
143
157
 
144
- - Add pool_class config to override pool classes used by dispatcher
158
+ - Add `pool_class` config to override pool classes used by dispatcher
145
159
 
146
160
  ## [0.4.1] - 2014-03-18
147
161
 
@@ -153,7 +167,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
153
167
 
154
168
  ### Changed
155
169
 
156
- - Improve railtie and autostart code
170
+ - Improve `Railtie` and autostart code
157
171
 
158
172
  ## 0.4.0 - 0.10.0
159
173
 
@@ -171,7 +185,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
171
185
 
172
186
  ### Fixed
173
187
 
174
- - Fix wrong rails initializer code - was not use the config file
188
+ - Fix wrong Rails initializer code - was not use the config file
175
189
 
176
190
  ## [0.2.0] - 2014-02-21
177
191
 
@@ -179,7 +193,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
179
193
 
180
194
  - Improve rails initializer code
181
195
 
182
- [unreleased]: https://github.com/jgraichen/msgr/compare/v1.4.0...HEAD
196
+ [Unreleased]: https://github.com/jgraichen/msgr/compare/v1.5.0...HEAD
197
+ [1.5.0]: https://github.com/jgraichen/msgr/compare/v1.4.0...v1.5.0
183
198
  [1.4.0]: https://github.com/jgraichen/msgr/compare/v1.3.2...v1.4.0
184
199
  [1.3.2]: https://github.com/jgraichen/msgr/compare/v1.3.1...v1.3.2
185
200
  [1.3.1]: https://github.com/jgraichen/msgr/compare/v1.3.0...v1.3.1
data/Gemfile CHANGED
@@ -4,11 +4,11 @@ source 'https://rubygems.org'
4
4
 
5
5
  gem 'appraisal'
6
6
  gem 'coveralls'
7
- gem 'my-rubocop', github: 'jgraichen/my-rubocop', ref: 'v4'
8
7
  gem 'rake'
9
8
  gem 'rake-release', '~> 1.1'
10
9
  gem 'rspec', '~> 3.0'
11
10
  gem 'rspec-rails'
11
+ gem 'rubocop-config', github: 'jgraichen/rubocop-config', ref: 'v11', require: false
12
12
 
13
13
  gem 'rails'
14
14
  gem 'sqlite3'
data/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # Msgr: _Rails-like Messaging Framework_
2
2
 
3
3
  [![Gem](https://img.shields.io/gem/v/msgr?logo=rubygems)](https://rubygems.org/gems/msgr)
4
- [![GitHub Workflow Status](https://img.shields.io/github/workflow/status/jgraichen/msgr/test?logo=github)](https://github.com/jgraichen/msgr/actions/workflows/test.yml)
4
+ [![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/jgraichen/msgr/test.yml?branch=main&logo=github)](https://github.com/jgraichen/msgr/actions/workflows/test.yml)
5
5
  [![RubyDoc Documentation](http://img.shields.io/badge/rubydoc-here-blue.svg)](http://rubydoc.info/github/jgraichen/msgr/master/frames)
6
6
 
7
7
  You know it and you like it. Using Rails you can just declare your routes and
@@ -14,19 +14,25 @@ your routes, create your consumer and watch your app processing messages.
14
14
 
15
15
  Add this line to your application's Gemfile:
16
16
 
17
- gem 'msgr'
17
+ ```ruby
18
+ gem 'msgr', '~> 1.5'
19
+ ```
18
20
 
19
21
  And then execute:
20
22
 
21
- $ bundle
23
+ ```console
24
+ bundle
25
+ ```
22
26
 
23
27
  Or install it yourself as:
24
28
 
25
- $ gem install msgr
29
+ ```console
30
+ gem install msgr
31
+ ```
26
32
 
27
33
  ## Usage
28
34
 
29
- After adding 'msgr' to your gemfile create a `config/rabbitmq.yml` like this:
35
+ After adding 'msgr' to your Gemfile create a `config/rabbitmq.yml` like this:
30
36
 
31
37
  ```yaml
32
38
  common: &common
@@ -4,7 +4,7 @@ source "https://rubygems.org"
4
4
 
5
5
  gem "appraisal"
6
6
  gem "coveralls"
7
- gem "my-rubocop", github: "jgraichen/my-rubocop", ref: "v3"
7
+ gem "my-rubocop", github: "jgraichen/my-rubocop", ref: "v4"
8
8
  gem "rake"
9
9
  gem "rake-release", "~> 1.1"
10
10
  gem "rspec", "~> 3.0"
@@ -4,7 +4,7 @@ source "https://rubygems.org"
4
4
 
5
5
  gem "appraisal"
6
6
  gem "coveralls"
7
- gem "my-rubocop", github: "jgraichen/my-rubocop", ref: "v3"
7
+ gem "my-rubocop", github: "jgraichen/my-rubocop", ref: "v4"
8
8
  gem "rake"
9
9
  gem "rake-release", "~> 1.1"
10
10
  gem "rspec", "~> 3.0"
@@ -4,7 +4,7 @@ source "https://rubygems.org"
4
4
 
5
5
  gem "appraisal"
6
6
  gem "coveralls"
7
- gem "my-rubocop", github: "jgraichen/my-rubocop", ref: "v3"
7
+ gem "my-rubocop", github: "jgraichen/my-rubocop", ref: "v4"
8
8
  gem "rake"
9
9
  gem "rake-release", "~> 1.1"
10
10
  gem "rspec", "~> 3.0"
@@ -4,7 +4,7 @@ source "https://rubygems.org"
4
4
 
5
5
  gem "appraisal"
6
6
  gem "coveralls"
7
- gem "my-rubocop", github: "jgraichen/my-rubocop", ref: "v3"
7
+ gem "my-rubocop", github: "jgraichen/my-rubocop", ref: "v4"
8
8
  gem "rake"
9
9
  gem "rake-release", "~> 1.1"
10
10
  gem "rspec", "~> 3.0"
@@ -4,7 +4,7 @@ source "https://rubygems.org"
4
4
 
5
5
  gem "appraisal"
6
6
  gem "coveralls"
7
- gem "my-rubocop", github: "jgraichen/my-rubocop", ref: "v3"
7
+ gem "my-rubocop", github: "jgraichen/my-rubocop", ref: "v4"
8
8
  gem "rake"
9
9
  gem "rake-release", "~> 1.1"
10
10
  gem "rspec", "~> 3.0"
data/lib/msgr/cli.rb CHANGED
@@ -45,8 +45,8 @@ module Msgr
45
45
  Msgr.client.start
46
46
 
47
47
  # Wait until we receive a signal
48
- readable = IO.select([r])
49
- case readable.first[0].gets.strip
48
+ r.wait_readable
49
+ case r.gets.strip
50
50
  when 'INT', 'TERM' # Safe shutdown
51
51
  Msgr.client.stop
52
52
  else # Error
@@ -87,8 +87,8 @@ module Msgr
87
87
  def bind(routes)
88
88
  if routes.empty?
89
89
  log(:warn) do
90
- "No routes to bound to. Bind will have no effect:\n" \
91
- " #{routes.inspect}"
90
+ "No routes to bound to. Bind will have no effect:\n " \
91
+ "#{routes.inspect}"
92
92
  end
93
93
  else
94
94
  bind_all(routes)
@@ -60,12 +60,12 @@ module Msgr
60
60
  @instance ||= super(*args) # rubocop:disable Naming/MemoizedInstanceVariableName
61
61
  end
62
62
 
63
- def run(*args)
64
- new.run(*args)
63
+ def run(**kwargs)
64
+ new.run(**kwargs)
65
65
  end
66
66
 
67
67
  def clear
68
- @instance ? @instance.clear : nil
68
+ @instance&.clear
69
69
  end
70
70
 
71
71
  alias reset clear
data/lib/msgr/version.rb CHANGED
@@ -3,10 +3,10 @@
3
3
  module Msgr
4
4
  module VERSION
5
5
  MAJOR = 1
6
- MINOR = 4
6
+ MINOR = 5
7
7
  PATCH = 0
8
8
  STAGE = nil
9
- STRING = [MAJOR, MINOR, PATCH, STAGE].reject(&:nil?).join('.')
9
+ STRING = [MAJOR, MINOR, PATCH, STAGE].compact.join('.')
10
10
 
11
11
  def self.to_s
12
12
  STRING
data/msgr.gemspec CHANGED
@@ -21,13 +21,10 @@ Gem::Specification.new do |spec|
21
21
 
22
22
  spec.files = `git ls-files -z`.split("\x0")
23
23
  spec.executables = spec.files.grep(%r{^bin/}) {|f| File.basename(f) }
24
- spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
25
24
  spec.require_paths = %w[lib]
26
25
 
27
- spec.required_ruby_version = '>= 2.5'
26
+ spec.required_ruby_version = '>= 2.7'
28
27
 
29
28
  spec.add_dependency 'activesupport'
30
29
  spec.add_dependency 'bunny', '>= 1.4', '< 3.0'
31
-
32
- spec.add_development_dependency 'bundler'
33
30
  end
@@ -1,6 +1,10 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  class TestConsumer < ApplicationConsumer
4
+ class << self
5
+ attr_accessor :queue
6
+ end
7
+
4
8
  def index
5
9
  data = {fuubar: 'abc'}
6
10
 
@@ -8,6 +12,7 @@ class TestConsumer < ApplicationConsumer
8
12
  end
9
13
 
10
14
  def another_action
11
- puts payload.inspect.to_s
15
+ self.class.queue ||= []
16
+ self.class.queue << payload
12
17
  end
13
18
  end
@@ -3,6 +3,8 @@ common: &common
3
3
 
4
4
  test:
5
5
  <<: *common
6
+ pool_class: Msgr::TestPool
7
+ raise_exceptions: true
6
8
 
7
9
  development:
8
10
  <<: *common
@@ -31,24 +31,23 @@ describe Msgr::Dispatcher do
31
31
  let(:config) { {max: 1} }
32
32
  let(:consumer) { 'DispatcherTestConsumer' }
33
33
  let(:route) do
34
- instance_double('Msgr::Route').tap do |t|
35
- allow(t).to receive(:consumer).and_return consumer
36
- allow(t).to receive(:action).and_return 'index'
34
+ instance_double(Msgr::Route).tap do |t|
35
+ allow(t).to receive_messages(consumer: consumer, action: 'index')
37
36
  end
38
37
  end
39
38
  let(:channel) do
40
- instance_double('Msgr::Channel').tap do |c|
39
+ instance_double(Msgr::Channel).tap do |c|
41
40
  allow(c).to receive(:ack)
42
41
  end
43
42
  end
44
43
  let(:delivery_info) do
45
- instance_double('Bunny::DeliveryInfo').tap do |ti|
44
+ instance_double(Bunny::DeliveryInfo).tap do |ti|
46
45
  allow(ti).to receive(:delivery_tag).and_return(3)
47
46
  end
48
47
  end
49
48
  let(:payload) { {} }
50
49
  let(:metadata) do
51
- instance_double('Bunny::MessageProperties').tap do |metadata|
50
+ instance_double(Bunny::MessageProperties).tap do |metadata|
52
51
  allow(metadata).to receive(:content_type).and_return('text/plain')
53
52
  end
54
53
  end
@@ -11,7 +11,7 @@ Coveralls.wear! do
11
11
  end
12
12
 
13
13
  ENV['RAILS_ENV'] ||= 'test'
14
- ENV['RAILS_GROUPS'] = ['rails', ENV['RAILS_GROUPS']].reject(&:nil?).join(',')
14
+ ENV['RAILS_GROUPS'] = ['rails', ENV.fetch('RAILS_GROUPS', nil)].compact.join(',')
15
15
  require File.expand_path('dummy/config/environment', __dir__)
16
16
  require 'rspec/rails'
17
17
 
@@ -50,4 +50,10 @@ RSpec.configure do |config|
50
50
  config.before do
51
51
  Msgr.logger = false
52
52
  end
53
+
54
+ config.after do
55
+ # Flush the consumer queue
56
+ Msgr.client.stop delete: true
57
+ Msgr::TestPool.reset
58
+ end
53
59
  end
@@ -2,8 +2,16 @@
2
2
 
3
3
  require 'spec_helper'
4
4
 
5
- describe TestController, type: :request do
5
+ describe TestController, type: :controller do
6
+ before do
7
+ Msgr.client.start
8
+ end
9
+
6
10
  it 'sends messages on :index' do
7
- get '/'
11
+ get :index
12
+
13
+ Msgr::TestPool.run(count: 2)
14
+
15
+ expect(TestConsumer.queue).to eq [{fuubar: 'abc'}]
8
16
  end
9
17
  end
@@ -61,8 +61,8 @@ describe Msgr::Client do
61
61
  subject(:drain) { client.drain }
62
62
 
63
63
  let(:config) { {routing_file: 'spec/fixtures/msgr_routes_test_drain.rb'} }
64
- let(:channel_stub) { instance_double('Msgr::Channel', prefetch: true) }
65
- let(:queue_stub) { instance_double('Bunny::Queue', purge: true) }
64
+ let(:channel_stub) { instance_double(Msgr::Channel, prefetch: true) }
65
+ let(:queue_stub) { instance_double(Bunny::Queue, purge: true) }
66
66
 
67
67
  before do
68
68
  allow(Msgr::Channel).to receive(:new).and_return(channel_stub)
@@ -23,8 +23,8 @@ describe Msgr::Dispatcher do
23
23
 
24
24
  describe 'dispatch' do
25
25
  it 'acks messages automatically if auto_ack is enabled' do
26
- route_db = instance_double('Msgr::Route', consumer: 'MsgrAutoAckConsumer', action: :index)
27
- msg_db = instance_spy('Msgr::Message', route: route_db, acked?: false)
26
+ route_db = instance_double(Msgr::Route, consumer: 'MsgrAutoAckConsumer', action: :index)
27
+ msg_db = instance_spy(Msgr::Message, route: route_db, acked?: false)
28
28
 
29
29
  dispatcher.dispatch(msg_db)
30
30
 
@@ -33,8 +33,8 @@ describe Msgr::Dispatcher do
33
33
  end
34
34
 
35
35
  it 'does not ack messages if auto_ack is disabled' do
36
- route_db = instance_double('Msgr::Route', consumer: 'MsgrManualAckConsumer', action: :index)
37
- msg_db = instance_spy('Msgr::Message', route: route_db, acked?: false)
36
+ route_db = instance_double(Msgr::Route, consumer: 'MsgrManualAckConsumer', action: :index)
37
+ msg_db = instance_spy(Msgr::Message, route: route_db, acked?: false)
38
38
 
39
39
  dispatcher.dispatch(msg_db)
40
40
 
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'spec_helper'
4
+
5
+ describe Msgr::TestPool do
6
+ let(:pool) { described_class.new }
7
+
8
+ describe '.run' do
9
+ it 'passes through to #run' do
10
+ expect(pool).to receive(:run).with(count: 5) # rubocop:disable RSpec/MessageSpies
11
+ described_class.run(count: 5)
12
+ end
13
+ end
14
+ end
@@ -24,7 +24,7 @@ end
24
24
 
25
25
  describe Msgr do
26
26
  let(:queue) { Queue.new }
27
- let(:client) { Msgr::Client.new size: 1, prefix: SecureRandom.hex(2), uri: ENV['AMQP_SERVER'] }
27
+ let(:client) { Msgr::Client.new size: 1, prefix: SecureRandom.hex(2), uri: ENV.fetch('AMQP_SERVER', nil) }
28
28
 
29
29
  before do
30
30
  client.routes.configure do
@@ -85,7 +85,7 @@ describe Msgr do
85
85
  # Test whether the nacked message gets redelivered. In this case, it was not acked when acknowledging the other message
86
86
  message = Timeout.timeout(4) { queue.pop }
87
87
  expect(message.payload).to eq(messages[0].payload)
88
- expect(message.delivery_info.redelivered).to eq(true)
88
+ expect(message.delivery_info.redelivered).to be(true)
89
89
 
90
90
  expect(Receiver).to have_received(:batch).exactly(3).times
91
91
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: msgr
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.0
4
+ version: 1.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jan Graichen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-01-10 00:00:00.000000000 Z
11
+ date: 2023-08-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -44,20 +44,6 @@ dependencies:
44
44
  - - "<"
45
45
  - !ruby/object:Gem::Version
46
46
  version: '3.0'
47
- - !ruby/object:Gem::Dependency
48
- name: bundler
49
- requirement: !ruby/object:Gem::Requirement
50
- requirements:
51
- - - ">="
52
- - !ruby/object:Gem::Version
53
- version: '0'
54
- type: :development
55
- prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
57
- requirements:
58
- - - ">="
59
- - !ruby/object:Gem::Version
60
- version: '0'
61
47
  description: 'Msgr: Rails-like Messaging Framework'
62
48
  email:
63
49
  - jgraichen@altimos.de
@@ -69,7 +55,9 @@ files:
69
55
  - ".editorconfig"
70
56
  - ".github/workflows/test.yml"
71
57
  - ".gitignore"
58
+ - ".markdownlint.yml"
72
59
  - ".rubocop.yml"
60
+ - ".vscode/ltex.dictionary.en-US.txt"
73
61
  - Appraisals
74
62
  - CHANGELOG.md
75
63
  - Gemfile
@@ -123,7 +111,6 @@ files:
123
111
  - spec/integration/dummy/config/rabbitmq.yml
124
112
  - spec/integration/dummy/config/routes.rb
125
113
  - spec/integration/dummy/config/secrets.yml
126
- - spec/integration/dummy/db/test.sqlite3
127
114
  - spec/integration/dummy/log/.keep
128
115
  - spec/integration/dummy/public/404.html
129
116
  - spec/integration/dummy/public/422.html
@@ -139,6 +126,7 @@ files:
139
126
  - spec/unit/msgr/dispatcher_spec.rb
140
127
  - spec/unit/msgr/route_spec.rb
141
128
  - spec/unit/msgr/routes_spec.rb
129
+ - spec/unit/msgr/test_pool_spec.rb
142
130
  - spec/unit/msgr_spec.rb
143
131
  - spec/unit/spec_helper.rb
144
132
  - spec/unit/support/.keep
@@ -155,55 +143,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
155
143
  requirements:
156
144
  - - ">="
157
145
  - !ruby/object:Gem::Version
158
- version: '2.5'
146
+ version: '2.7'
159
147
  required_rubygems_version: !ruby/object:Gem::Requirement
160
148
  requirements:
161
149
  - - ">="
162
150
  - !ruby/object:Gem::Version
163
151
  version: '0'
164
152
  requirements: []
165
- rubygems_version: 3.1.6
153
+ rubygems_version: 3.4.18
166
154
  signing_key:
167
155
  specification_version: 4
168
156
  summary: 'Msgr: Rails-like Messaging Framework'
169
- test_files:
170
- - spec/fixtures/msgr_routes_test_1.rb
171
- - spec/fixtures/msgr_routes_test_drain.rb
172
- - spec/integration/dummy/Rakefile
173
- - spec/integration/dummy/app/assets/config/manifest.js
174
- - spec/integration/dummy/app/consumers/application_consumer.rb
175
- - spec/integration/dummy/app/consumers/test_consumer.rb
176
- - spec/integration/dummy/app/controllers/application_controller.rb
177
- - spec/integration/dummy/app/controllers/test_controller.rb
178
- - spec/integration/dummy/app/helpers/application_helper.rb
179
- - spec/integration/dummy/bin/bundle
180
- - spec/integration/dummy/bin/rails
181
- - spec/integration/dummy/bin/rake
182
- - spec/integration/dummy/config.ru
183
- - spec/integration/dummy/config/application.rb
184
- - spec/integration/dummy/config/boot.rb
185
- - spec/integration/dummy/config/database.yml
186
- - spec/integration/dummy/config/environment.rb
187
- - spec/integration/dummy/config/msgr.rb
188
- - spec/integration/dummy/config/rabbitmq.yml
189
- - spec/integration/dummy/config/routes.rb
190
- - spec/integration/dummy/config/secrets.yml
191
- - spec/integration/dummy/db/test.sqlite3
192
- - spec/integration/dummy/log/.keep
193
- - spec/integration/dummy/public/404.html
194
- - spec/integration/dummy/public/422.html
195
- - spec/integration/dummy/public/500.html
196
- - spec/integration/dummy/public/favicon.ico
197
- - spec/integration/msgr/dispatcher_spec.rb
198
- - spec/integration/msgr/railtie_spec.rb
199
- - spec/integration/spec_helper.rb
200
- - spec/integration/test_controller_spec.rb
201
- - spec/unit/msgr/client_spec.rb
202
- - spec/unit/msgr/connection_spec.rb
203
- - spec/unit/msgr/consumer_spec.rb
204
- - spec/unit/msgr/dispatcher_spec.rb
205
- - spec/unit/msgr/route_spec.rb
206
- - spec/unit/msgr/routes_spec.rb
207
- - spec/unit/msgr_spec.rb
208
- - spec/unit/spec_helper.rb
209
- - spec/unit/support/.keep
157
+ test_files: []
File without changes