delayed_job_groups_plugin 0.4.1 → 0.6.2

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: 8e0fcf7a3d3099755aad28122f38afb96cec8896576cb54b47c2b4f7adfd2b94
4
- data.tar.gz: 5241cc7d7365f07179896559c1aae27df4bf1e8010a49b2e0a2323f752b9efe4
3
+ metadata.gz: a6ebba61f2d0ba4a6ab2572a5648030c14b58ae99e4412fbd4a89257128f587a
4
+ data.tar.gz: 5c1457109671e7ab379f32d3a5e52750de3fd775fa83c3a70723fec29b146d0b
5
5
  SHA512:
6
- metadata.gz: a6e7381efe91a0aa89492a58f7820e71f3c6d6c35d1e5ddaf4dd777dd63d6707f5f268587569a7da1f57dcd404df859f9980e9bbae1acffbf54c76841f0af8f1
7
- data.tar.gz: '029c2dd29ed387c254f869c58295c41b446bfb42f87948e5980047ab47c2f7571fe794b65e7f9aa4d73162771d61361e67d6495f7ba4e02e754da29be0ee611e'
6
+ metadata.gz: f25332bf31e68b50e1925dd77407caaf0e577f997804dadb24a9c1fce0045353431d48187d69582b3884217a928df2a91157d4ee9e7d8c7e45889860222b89ba
7
+ data.tar.gz: ff86634ad4296c5c4f2e17cbc0acee72e1c9d97b567298565d2fa457ac69245f47348cc7551dbfe397a9fd8e552a1bd994e7f487cd5fe8cd7a0eaef3da75fd1c
@@ -0,0 +1,72 @@
1
+ version: 2.1
2
+ jobs:
3
+ lint:
4
+ docker:
5
+ - image: salsify/ruby_ci:2.5.8
6
+ working_directory: ~/delayed_job_groups
7
+ steps:
8
+ - checkout
9
+ - restore_cache:
10
+ keys:
11
+ - v1-gems-ruby-2.5.8-{{ checksum "delayed_job_groups.gemspec" }}-{{ checksum "Gemfile" }}
12
+ - v1-gems-ruby-2.5.8-
13
+ - run:
14
+ name: Install Gems
15
+ command: |
16
+ if ! bundle check --path=vendor/bundle; then
17
+ bundle install --path=vendor/bundle --jobs=4 --retry=3
18
+ bundle clean
19
+ fi
20
+ - save_cache:
21
+ key: v1-gems-ruby-2.5.8-{{ checksum "delayed_job_groups.gemspec" }}-{{ checksum "Gemfile" }}
22
+ paths:
23
+ - "vendor/bundle"
24
+ - "gemfiles/vendor/bundle"
25
+ - run:
26
+ name: Run Rubocop
27
+ command: bundle exec rubocop
28
+ test:
29
+ parameters:
30
+ gemfile:
31
+ type: string
32
+ docker:
33
+ - image: salsify/ruby_ci:2.5.8
34
+ environment:
35
+ CIRCLE_TEST_REPORTS: "test-results"
36
+ BUNDLE_GEMFILE: << parameters.gemfile >>
37
+ working_directory: ~/delayed_job_groups
38
+ steps:
39
+ - checkout
40
+ - restore_cache:
41
+ keys:
42
+ - v1-gems-ruby-2.5.8-{{ checksum "delayed_job_groups.gemspec" }}-{{ checksum "<< parameters.gemfile >>" }}
43
+ - v1-gems-ruby-2.5.8-
44
+ - run:
45
+ name: Install Gems
46
+ command: |
47
+ if ! bundle check --path=vendor/bundle; then
48
+ bundle install --path=vendor/bundle --jobs=4 --retry=3
49
+ bundle clean
50
+ fi
51
+ - save_cache:
52
+ key: v1-gems-ruby-2.5.8-{{ checksum "delayed_job_groups.gemspec" }}-{{ checksum "<< parameters.gemfile >>" }}
53
+ paths:
54
+ - "vendor/bundle"
55
+ - "gemfiles/vendor/bundle"
56
+ - run:
57
+ name: Run Tests
58
+ command: |
59
+ bundle exec rspec --format RspecJunitFormatter --out $CIRCLE_TEST_REPORTS/rspec/junit.xml --format progress spec
60
+ - store_test_results:
61
+ path: "test-results"
62
+ workflows:
63
+ build:
64
+ jobs:
65
+ - lint
66
+ - test:
67
+ matrix:
68
+ parameters:
69
+ gemfile:
70
+ - "gemfiles/rails_5.2.gemfile"
71
+ - "gemfiles/rails_6.0.gemfile"
72
+ - "gemfiles/rails_6.1.gemfile"
@@ -2,7 +2,10 @@ inherit_gem:
2
2
  salsify_rubocop: conf/rubocop.yml
3
3
 
4
4
  AllCops:
5
- TargetRubyVersion: 2.3
5
+ TargetRubyVersion: 2.5
6
+ Exclude:
7
+ - 'vendor/**/*'
8
+ - 'gemfiles/vendor/**/*'
6
9
 
7
10
  Style/FrozenStringLiteralComment:
8
11
  Enabled: true
data/Appraisals CHANGED
@@ -1,21 +1,17 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- appraise 'rails-4.2' do
4
- gem 'activerecord', '4.2.10'
5
- gem 'activesupport', '4.2.10'
6
- end
7
-
8
- appraise 'rails-5.0' do
9
- gem 'activerecord', '5.0.7'
10
- gem 'activesupport', '5.0.7'
3
+ appraise 'rails-5.2' do
4
+ gem 'sqlite3', '~> 1.3.6'
5
+ gem 'activerecord', '5.2.1'
6
+ gem 'activesupport', '5.2.1'
11
7
  end
12
8
 
13
- appraise 'rails-5.1' do
14
- gem 'activerecord', '5.1.6'
15
- gem 'activesupport', '5.1.6'
9
+ appraise 'rails-6.0' do
10
+ gem 'activerecord', '6.0.3'
11
+ gem 'activesupport', '6.0.3'
16
12
  end
17
13
 
18
- appraise 'rails-5.2' do
19
- gem 'activerecord', '5.2.1 '
20
- gem 'activesupport', '5.2.1 '
14
+ appraise 'rails-6.1' do
15
+ gem 'activerecord', '6.1.0'
16
+ gem 'activesupport', '6.1.0'
21
17
  end
@@ -1,5 +1,25 @@
1
1
  # Changelog
2
2
 
3
+ ### 0.6.2
4
+ * Defer including extension until delayed_job_active_record is loaded
5
+
6
+ ### 0.6.1
7
+ * Fix job_group_id `belongs_to` behavior when `config.active_record.belongs_to_required_by_default` is enabled.
8
+
9
+ ### 0.6.0
10
+ * Add support for Rails 6.1.
11
+
12
+ ### 0.5.0
13
+ * Drop support for Ruby 2.3 and 2.4.
14
+ * Drop support for Rails < 5.2.
15
+ * Bugfix for rails version in generated migration files
16
+
17
+ ### 0.4.3
18
+ * Bugfix for `on_completion_job` when `failure_cancels_group` is set to false.
19
+
20
+ ### 0.4.2
21
+ * Add support for Rails 6.0.
22
+
3
23
  ### 0.4.1
4
24
  * Bugfix for `on_completion_job` and `on_cancellation_job` YAML serialization
5
25
 
data/README.md CHANGED
@@ -100,7 +100,8 @@ job_group.cancel
100
100
 
101
101
  Configuration to allow failed jobs not to cancel the group
102
102
  ```ruby
103
- # We can optionally pass options that will allow jobs to fail without cancelling the group
103
+ # We can optionally pass options that will allow jobs to fail without cancelling the group.
104
+ # This also allows the on_completion job to fire once all jobs have either succeeded or failed.
104
105
  job_group = Delayed::JobGroups::JobGroup.create!(failure_cancels_group: false)
105
106
  ```
106
107
 
@@ -19,7 +19,7 @@ Gem::Specification.new do |spec|
19
19
  spec.test_files = Dir.glob('spec/**/*')
20
20
  spec.require_paths = ['lib']
21
21
 
22
- spec.required_ruby_version = '>= 2.3'
22
+ spec.required_ruby_version = '>= 2.5'
23
23
 
24
24
  spec.add_dependency 'delayed_job', '>= 4.1'
25
25
  spec.add_dependency 'delayed_job_active_record', '>= 4.1'
@@ -27,13 +27,14 @@ Gem::Specification.new do |spec|
27
27
  spec.post_install_message = 'See https://github.com/salsify/delayed_job_groups_plugin#installation for upgrade/installation notes.'
28
28
 
29
29
  spec.add_development_dependency 'appraisal'
30
- spec.add_dependency 'activerecord', '>= 4.2', '< 5.3'
31
- spec.add_development_dependency 'coveralls'
30
+ spec.add_dependency 'activerecord', '>= 5.2', '< 7'
31
+ spec.add_development_dependency 'coveralls_reborn', '>= 0.18.0'
32
32
  spec.add_development_dependency 'database_cleaner', '>= 1.2'
33
33
  spec.add_development_dependency 'mime-types'
34
34
  spec.add_development_dependency 'rake'
35
35
  spec.add_development_dependency 'rspec', '~> 3'
36
36
  spec.add_development_dependency 'rspec-its'
37
+ spec.add_development_dependency 'rspec_junit_formatter'
37
38
  spec.add_development_dependency 'salsify_rubocop', '0.52.1.1'
38
39
  spec.add_development_dependency 'simplecov'
39
40
  spec.add_development_dependency 'sqlite3'
@@ -2,7 +2,8 @@
2
2
 
3
3
  source "https://rubygems.org"
4
4
 
5
- gem "activerecord", "5.2.1 "
6
- gem "activesupport", "5.2.1 "
5
+ gem "sqlite3", "~> 1.3.6"
6
+ gem "activerecord", "5.2.1"
7
+ gem "activesupport", "5.2.1"
7
8
 
8
9
  gemspec path: "../"
@@ -2,7 +2,7 @@
2
2
 
3
3
  source "https://rubygems.org"
4
4
 
5
- gem "activerecord", "5.0.7"
6
- gem "activesupport", "5.0.7"
5
+ gem "activerecord", "6.0.3"
6
+ gem "activesupport", "6.0.3"
7
7
 
8
8
  gemspec path: "../"
@@ -2,7 +2,7 @@
2
2
 
3
3
  source "https://rubygems.org"
4
4
 
5
- gem "activerecord", "5.1.6"
6
- gem "activesupport", "5.1.6"
5
+ gem "activerecord", "6.1.0"
6
+ gem "activesupport", "6.1.0"
7
7
 
8
8
  gemspec path: "../"
@@ -15,7 +15,7 @@ module Delayed
15
15
  attr_accessible :job_group_id, :blocked
16
16
  end
17
17
 
18
- belongs_to :job_group, class_name: 'Delayed::JobGroups::JobGroup'
18
+ belongs_to :job_group, class_name: 'Delayed::JobGroups::JobGroup', required: false
19
19
 
20
20
  class << self
21
21
  prepend ReadyToRunExtension
@@ -28,8 +28,9 @@ module Delayed
28
28
 
29
29
  lifecycle.after(:perform) do |_worker, job|
30
30
  # Make sure we only check to see if the job group is complete
31
- # if the job succeeded
32
- if job.in_job_group? && job_completed?(job)
31
+ # if the job succeeded or the job has failed (maxed out retries) with failure_cancels_group
32
+ # set to false
33
+ if job.in_job_group? && (job_completed?(job) || job_acceptably_failed?(job))
33
34
  JobGroup.check_for_completion(job.job_group_id)
34
35
  end
35
36
  end
@@ -44,6 +45,12 @@ module Delayed
44
45
  # if it has completed
45
46
  job.destroyed?
46
47
  end
48
+
49
+ def self.job_acceptably_failed?(job)
50
+ # Job has set failed_at (retries have maxed out) and failure_cancels_group is false signaling
51
+ # that the group should complete despite failures.
52
+ job.failed_at.present? && job.job_group.present? && !job.job_group.failure_cancels_group?
53
+ end
47
54
  end
48
55
  end
49
56
  end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Delayed
4
+ module JobGroups
5
+ class Railtie < ::Rails::Railtie
6
+ config.after_initialize do
7
+ Delayed::Backend::ActiveRecord::Job.include(Delayed::JobGroups::JobExtensions)
8
+ end
9
+ end
10
+ end
11
+ end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Delayed
4
4
  module JobGroups
5
- VERSION = '0.4.1'
5
+ VERSION = '0.6.2'
6
6
  end
7
7
  end
@@ -11,6 +11,12 @@ require 'delayed/job_groups/plugin'
11
11
  require 'delayed/job_groups/yaml_loader'
12
12
  require 'delayed/job_groups/version'
13
13
 
14
- Delayed::Backend::ActiveRecord::Job.send(:include, Delayed::JobGroups::JobExtensions)
14
+ if defined?(Rails::Railtie)
15
+ # Postpone initialization to railtie for correct order
16
+ require 'delayed/job_groups/railtie'
17
+ else
18
+ # Do the same as in the railtie
19
+ Delayed::Backend::ActiveRecord::Job.include(Delayed::JobGroups::JobExtensions)
20
+ end
15
21
 
16
22
  Delayed::Worker.plugins << Delayed::JobGroups::Plugin
@@ -11,7 +11,7 @@ module DelayedJobGroupsPlugin
11
11
  source_paths << File.join(File.dirname(__FILE__), 'templates')
12
12
 
13
13
  def create_migration_file
14
- migration_template('migration.rb', 'db/migrate/create_delayed_job_groups.rb')
14
+ migration_template('migration.erb', 'db/migrate/create_delayed_job_groups.rb')
15
15
  end
16
16
 
17
17
  def self.next_migration_number(dirname)
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- class CreateDelayedJobGroups < ActiveRecord::Migration
3
+ class CreateDelayedJobGroups < ActiveRecord::Migration[<%= ActiveRecord::VERSION::MAJOR %>.<%= ActiveRecord::VERSION::MINOR %>]
4
4
 
5
5
  def up
6
6
  add_column(:delayed_jobs, :blocked, :boolean, default: false, null: false)
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ describe "delayed job extensions" do
4
+ it "provides an optional job_group_id" do
5
+ job_group = Delayed::JobGroups::JobGroup.create!
6
+ expect(Delayed::Job.new(job_group_id: job_group.id)).to be_valid
7
+ expect(Delayed::Job.new).to be_valid
8
+ end
9
+ end
@@ -103,7 +103,7 @@ describe Delayed::JobGroups::JobGroup do
103
103
 
104
104
  context "when on failed jobs exist" do
105
105
  before do
106
- job.update_attributes!(failed_at: Time.now)
106
+ job.update!(failed_at: Time.now)
107
107
  Delayed::JobGroups::JobGroup.check_for_completion(job_group.id)
108
108
  end
109
109
 
@@ -229,7 +229,7 @@ describe Delayed::JobGroups::JobGroup do
229
229
  let(:failure_cancels_group) { true }
230
230
 
231
231
  before do
232
- job_group.update_attributes!(failure_cancels_group: failure_cancels_group)
232
+ job_group.update!(failure_cancels_group: failure_cancels_group)
233
233
  end
234
234
 
235
235
  context "when failures should cancel the group" do
@@ -83,6 +83,7 @@ describe Delayed::JobGroups::Plugin do
83
83
 
84
84
  # Run the job which should fail and cancel the JobGroup
85
85
  Delayed::Worker.new.work_off(1)
86
+ # Completion job is not invoked
86
87
  expect(CompletionJob.invoked).to be(false)
87
88
  expect(failed_job_count).to eq 1
88
89
  expect(queued_job_count).to eq 0
@@ -92,7 +93,7 @@ describe Delayed::JobGroups::Plugin do
92
93
 
93
94
  context "with failure_cancels_group disabled" do
94
95
 
95
- before { job_group.update_attributes!(failure_cancels_group: false) }
96
+ before { job_group.update!(failure_cancels_group: false) }
96
97
 
97
98
  it "does not cancel the group" do
98
99
  Delayed::Worker.max_attempts = 1
@@ -109,6 +110,59 @@ describe Delayed::JobGroups::Plugin do
109
110
  expect(failed_job_count).to eq 1
110
111
  expect(queued_job_count).to eq 1
111
112
  expect(job_group_count).to eq 1
113
+
114
+ # Run the last job
115
+ Delayed::Worker.new.work_off(1)
116
+ expect(failed_job_count).to eq 1
117
+ expect(queued_job_count).to eq 1
118
+ expect(job_group_count).to eq 0
119
+
120
+ # Run the completion job
121
+ Delayed::Worker.new.work_off(1)
122
+ # Completion job is invoked
123
+ expect(CompletionJob.invoked).to be(true)
124
+ expect(failed_job_count).to eq 1
125
+ expect(queued_job_count).to eq 0
126
+ expect(job_group_count).to eq 0
127
+ end
128
+
129
+ it "runs completion job if last job failed" do
130
+ Delayed::Worker.max_attempts = 2
131
+
132
+ job_group.enqueue(NoOpJob.new)
133
+ job_group.enqueue(FailingJob.new)
134
+ job_group.mark_queueing_complete
135
+ expect(queued_job_count).to eq 2
136
+ expect(job_group_count).to eq 1
137
+
138
+ # Run the non failing job
139
+ Delayed::Worker.new.work_off(1)
140
+ expect(failed_job_count).to eq 0
141
+ expect(queued_job_count).to eq 1
142
+ expect(job_group_count).to eq 1
143
+
144
+ # Run the job which should error
145
+ Delayed::Worker.new.work_off(1)
146
+ # Completion job is not invoked
147
+ expect(CompletionJob.invoked).to be(false)
148
+ expect(failed_job_count).to eq 0
149
+ expect(queued_job_count).to eq 1
150
+ expect(job_group_count).to eq 1
151
+
152
+ # Run the job again which should fail
153
+ Timecop.travel(1.minute.from_now)
154
+ Delayed::Worker.new.work_off(1)
155
+ expect(failed_job_count).to eq 1
156
+ expect(queued_job_count).to eq 1
157
+ expect(job_group_count).to eq 0
158
+
159
+ # Run the completion job
160
+ Delayed::Worker.new.work_off(1)
161
+ # Completion job is invoked
162
+ expect(CompletionJob.invoked).to be(true)
163
+ expect(failed_job_count).to eq 1
164
+ expect(queued_job_count).to eq 0
165
+ expect(job_group_count).to eq 0
112
166
  end
113
167
  end
114
168
  end
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: delayed_job_groups_plugin
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.1
4
+ version: 0.6.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Joel Turkel
8
8
  - Randy Burkes
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2019-01-18 00:00:00.000000000 Z
12
+ date: 2021-01-29 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: delayed_job
@@ -59,34 +59,34 @@ dependencies:
59
59
  requirements:
60
60
  - - ">="
61
61
  - !ruby/object:Gem::Version
62
- version: '4.2'
62
+ version: '5.2'
63
63
  - - "<"
64
64
  - !ruby/object:Gem::Version
65
- version: '5.3'
65
+ version: '7'
66
66
  type: :runtime
67
67
  prerelease: false
68
68
  version_requirements: !ruby/object:Gem::Requirement
69
69
  requirements:
70
70
  - - ">="
71
71
  - !ruby/object:Gem::Version
72
- version: '4.2'
72
+ version: '5.2'
73
73
  - - "<"
74
74
  - !ruby/object:Gem::Version
75
- version: '5.3'
75
+ version: '7'
76
76
  - !ruby/object:Gem::Dependency
77
- name: coveralls
77
+ name: coveralls_reborn
78
78
  requirement: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - ">="
81
81
  - !ruby/object:Gem::Version
82
- version: '0'
82
+ version: 0.18.0
83
83
  type: :development
84
84
  prerelease: false
85
85
  version_requirements: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - ">="
88
88
  - !ruby/object:Gem::Version
89
- version: '0'
89
+ version: 0.18.0
90
90
  - !ruby/object:Gem::Dependency
91
91
  name: database_cleaner
92
92
  requirement: !ruby/object:Gem::Requirement
@@ -157,6 +157,20 @@ dependencies:
157
157
  - - ">="
158
158
  - !ruby/object:Gem::Version
159
159
  version: '0'
160
+ - !ruby/object:Gem::Dependency
161
+ name: rspec_junit_formatter
162
+ requirement: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - ">="
165
+ - !ruby/object:Gem::Version
166
+ version: '0'
167
+ type: :development
168
+ prerelease: false
169
+ version_requirements: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - ">="
172
+ - !ruby/object:Gem::Version
173
+ version: '0'
160
174
  - !ruby/object:Gem::Dependency
161
175
  name: salsify_rubocop
162
176
  requirement: !ruby/object:Gem::Requirement
@@ -222,10 +236,10 @@ executables: []
222
236
  extensions: []
223
237
  extra_rdoc_files: []
224
238
  files:
239
+ - ".circleci/config.yml"
225
240
  - ".gitignore"
226
241
  - ".rspec"
227
242
  - ".rubocop.yml"
228
- - ".travis.yml"
229
243
  - Appraisals
230
244
  - CHANGELOG.md
231
245
  - Gemfile
@@ -233,21 +247,22 @@ files:
233
247
  - README.md
234
248
  - Rakefile
235
249
  - delayed_job_groups.gemspec
236
- - gemfiles/rails_4.2.gemfile
237
- - gemfiles/rails_5.0.gemfile
238
- - gemfiles/rails_5.1.gemfile
239
250
  - gemfiles/rails_5.2.gemfile
251
+ - gemfiles/rails_6.0.gemfile
252
+ - gemfiles/rails_6.1.gemfile
240
253
  - lib/delayed/job_groups/compatibility.rb
241
254
  - lib/delayed/job_groups/job_extensions.rb
242
255
  - lib/delayed/job_groups/job_group.rb
243
256
  - lib/delayed/job_groups/plugin.rb
257
+ - lib/delayed/job_groups/railtie.rb
244
258
  - lib/delayed/job_groups/version.rb
245
259
  - lib/delayed/job_groups/yaml_loader.rb
246
260
  - lib/delayed_job_groups_plugin.rb
247
261
  - lib/generators/delayed_job_groups_plugin/install_generator.rb
248
- - lib/generators/delayed_job_groups_plugin/templates/migration.rb
262
+ - lib/generators/delayed_job_groups_plugin/templates/migration.erb
249
263
  - spec/db/database.yml
250
264
  - spec/db/schema.rb
265
+ - spec/delayed/job_groups/job_extensions_spec.rb
251
266
  - spec/delayed/job_groups/job_group_spec.rb
252
267
  - spec/delayed/job_groups/plugin_spec.rb
253
268
  - spec/delayed/job_groups/yaml_loader_spec.rb
@@ -266,16 +281,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
266
281
  requirements:
267
282
  - - ">="
268
283
  - !ruby/object:Gem::Version
269
- version: '2.3'
284
+ version: '2.5'
270
285
  required_rubygems_version: !ruby/object:Gem::Requirement
271
286
  requirements:
272
287
  - - ">="
273
288
  - !ruby/object:Gem::Version
274
289
  version: '0'
275
290
  requirements: []
276
- rubyforge_project:
277
- rubygems_version: 2.7.7
278
- signing_key:
291
+ rubygems_version: 3.0.8
292
+ signing_key:
279
293
  specification_version: 4
280
294
  summary: Delayed::Job job groups plugin
281
295
  test_files:
@@ -284,5 +298,6 @@ test_files:
284
298
  - spec/delayed/job_groups/plugin_spec.rb
285
299
  - spec/delayed/job_groups/job_group_spec.rb
286
300
  - spec/delayed/job_groups/yaml_loader_spec.rb
301
+ - spec/delayed/job_groups/job_extensions_spec.rb
287
302
  - spec/db/schema.rb
288
303
  - spec/db/database.yml
@@ -1,14 +0,0 @@
1
- language: ruby
2
- sudo: false
3
- gemfile:
4
- - gemfiles/rails_4.2.gemfile
5
- - gemfiles/rails_5.0.gemfile
6
- - gemfiles/rails_5.1.gemfile
7
- - gemfiles/rails_5.2.gemfile
8
- rvm:
9
- - 2.3.8
10
- - 2.4.5
11
- - 2.5.3
12
- script:
13
- - bundle exec rspec
14
- - bundle exec rubocop
@@ -1,8 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "activerecord", "4.2.10"
6
- gem "activesupport", "4.2.10"
7
-
8
- gemspec path: "../"