resque-integration 3.8.1 → 3.8.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,5 +1,5 @@
1
1
  module Resque
2
2
  module Integration
3
- VERSION = '3.8.1'.freeze
3
+ VERSION = '3.8.2'.freeze
4
4
  end
5
5
  end
@@ -88,7 +88,7 @@ describe Resque::Integration::Unique, '#dequeue' do
88
88
 
89
89
  @queue = :queue2
90
90
 
91
- def self.execute(x)
91
+ def self.execute(*params)
92
92
  sleep 0.1
93
93
  end
94
94
  end
@@ -105,14 +105,24 @@ describe Resque::Integration::Unique, '#dequeue' do
105
105
  meta.should be_failed
106
106
  end
107
107
 
108
+ it 'dequeues and unlocks job without args if job is not in work now' do
109
+ JobDequeueTest.enqueue
110
+ JobDequeueTest.should be_enqueued
111
+
112
+ JobDequeueTest.dequeue
113
+ JobDequeueTest.should_not be_enqueued
114
+ JobDequeueTest.should_not be_locked
115
+
116
+ meta = JobDequeueTest.get_meta(JobDequeueTest.meta_id)
117
+ meta.should be_failed
118
+ end
119
+
108
120
  it 'does not dequeue jobs in progress' do
109
121
  meta = JobDequeueTest.enqueue(1)
110
122
 
111
123
  job = Resque.reserve(:queue2)
112
124
 
113
- worker = Thread.new {
114
- job.perform
115
- }
125
+ worker = Thread.new { job.perform }
116
126
 
117
127
  sleep 0.01 # give a worker some time to start
118
128
  meta.reload!
@@ -124,6 +134,24 @@ describe Resque::Integration::Unique, '#dequeue' do
124
134
 
125
135
  worker.join
126
136
  end
137
+
138
+ it 'does not dequeue jobs without args in progress' do
139
+ meta = JobDequeueTest.enqueue
140
+
141
+ job = Resque.reserve(:queue2)
142
+
143
+ worker = Thread.new { job.perform }
144
+
145
+ sleep 0.01 # give a worker some time to start
146
+ meta.reload!
147
+ meta.should be_working
148
+
149
+ JobDequeueTest.dequeue
150
+ JobDequeueTest.should be_locked
151
+ JobDequeueTest.should be_enqueued
152
+
153
+ worker.join
154
+ end
127
155
  end
128
156
 
129
157
  describe Resque::Integration::Unique, '#on_failure_retry' do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: resque-integration
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.8.1
4
+ version: 3.8.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexei Mikhailov
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2021-08-20 00:00:00.000000000 Z
12
+ date: 2024-01-09 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: resque
@@ -292,6 +292,7 @@ files:
292
292
  - Appraisals
293
293
  - CHANGELOG.md
294
294
  - Gemfile
295
+ - Gemfile.lock
295
296
  - README.md
296
297
  - Rakefile
297
298
  - app/assets/javascripts/standalone/progress_bar.js
@@ -306,6 +307,14 @@ files:
306
307
  - docker-compose.development.yml
307
308
  - docker-compose.drone.yml
308
309
  - docker-compose.yml
310
+ - gemfiles/rails4.2.gemfile
311
+ - gemfiles/rails4.2.gemfile.lock
312
+ - gemfiles/rails5.0.gemfile
313
+ - gemfiles/rails5.0.gemfile.lock
314
+ - gemfiles/rails5.1.gemfile
315
+ - gemfiles/rails5.1.gemfile.lock
316
+ - gemfiles/rails5.2.gemfile
317
+ - gemfiles/rails5.2.gemfile.lock
309
318
  - lib/generators/resque/integration/install/install_generator.rb
310
319
  - lib/resque-integration.rb
311
320
  - lib/resque/integration.rb
@@ -372,8 +381,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
372
381
  - !ruby/object:Gem::Version
373
382
  version: '0'
374
383
  requirements: []
375
- rubyforge_project:
376
- rubygems_version: 2.6.1
384
+ rubygems_version: 3.0.3
377
385
  signing_key:
378
386
  specification_version: 4
379
387
  summary: Seamless integration of resque with resque-progress and resque-lock