sidejobs 4.0.0.2 → 5.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (64) hide show
  1. checksums.yaml +4 -4
  2. data/MIT-LICENSE +1 -1
  3. data/README.md +5 -5
  4. data/Rakefile +1 -3
  5. data/lib/sidejobs.rb +2 -1
  6. data/lib/sidejobs/daemon.rb +35 -33
  7. data/lib/sidejobs/extensions/active_job/queue_adapter.rb +29 -31
  8. data/lib/sidejobs/loggable.rb +7 -0
  9. data/lib/sidejobs/processor.rb +1 -6
  10. data/lib/sidejobs/queue.rb +1 -1
  11. data/lib/sidejobs/version.rb +1 -1
  12. metadata +16 -125
  13. data/test/daemon_test.rb +0 -71
  14. data/test/dummy/Rakefile +0 -5
  15. data/test/dummy/app/assets/javascripts/application.js +0 -13
  16. data/test/dummy/app/assets/stylesheets/application.css +0 -15
  17. data/test/dummy/app/controllers/application_controller.rb +0 -5
  18. data/test/dummy/app/helpers/application_helper.rb +0 -2
  19. data/test/dummy/app/jobs/charge_subscriptions_job.rb +0 -8
  20. data/test/dummy/app/jobs/clear_guest_users_job.rb +0 -8
  21. data/test/dummy/app/jobs/send_newsletters_job.rb +0 -8
  22. data/test/dummy/app/jobs/share_products_job.rb +0 -8
  23. data/test/dummy/app/jobs/update_exchanges_job.rb +0 -8
  24. data/test/dummy/app/mailers/user_mailer.rb +0 -7
  25. data/test/dummy/app/views/layouts/application.html.erb +0 -12
  26. data/test/dummy/app/views/user_mailer/invite.text.erb +0 -1
  27. data/test/dummy/bin/bundle +0 -4
  28. data/test/dummy/bin/rails +0 -5
  29. data/test/dummy/bin/rake +0 -5
  30. data/test/dummy/bin/setup +0 -30
  31. data/test/dummy/config.ru +0 -4
  32. data/test/dummy/config/application.rb +0 -25
  33. data/test/dummy/config/boot.rb +0 -5
  34. data/test/dummy/config/database.yml +0 -10
  35. data/test/dummy/config/database.yml.travis +0 -3
  36. data/test/dummy/config/environment.rb +0 -5
  37. data/test/dummy/config/environments/development.rb +0 -44
  38. data/test/dummy/config/environments/production.rb +0 -79
  39. data/test/dummy/config/environments/test.rb +0 -45
  40. data/test/dummy/config/initializers/assets.rb +0 -11
  41. data/test/dummy/config/initializers/backtrace_silencers.rb +0 -7
  42. data/test/dummy/config/initializers/cookies_serializer.rb +0 -3
  43. data/test/dummy/config/initializers/filter_parameter_logging.rb +0 -4
  44. data/test/dummy/config/initializers/inflections.rb +0 -16
  45. data/test/dummy/config/initializers/mime_types.rb +0 -4
  46. data/test/dummy/config/initializers/session_store.rb +0 -3
  47. data/test/dummy/config/initializers/sidejobs.rb +0 -7
  48. data/test/dummy/config/initializers/wrap_parameters.rb +0 -14
  49. data/test/dummy/config/locales/en.yml +0 -23
  50. data/test/dummy/config/routes.rb +0 -56
  51. data/test/dummy/config/secrets.yml +0 -22
  52. data/test/dummy/db/migrate/20161022211612_create_sidejobs.rb +0 -21
  53. data/test/dummy/db/schema.rb +0 -37
  54. data/test/dummy/log/development.log +0 -23
  55. data/test/dummy/log/sidejobs.log +0 -739
  56. data/test/dummy/log/test.log +0 -3903
  57. data/test/dummy/public/404.html +0 -61
  58. data/test/dummy/public/422.html +0 -61
  59. data/test/dummy/public/500.html +0 -60
  60. data/test/dummy/public/favicon.ico +0 -0
  61. data/test/generator_test.rb +0 -19
  62. data/test/processor_test.rb +0 -49
  63. data/test/queue_test.rb +0 -69
  64. data/test/test_helper.rb +0 -14
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c4cf6173fbef33ca84efaf2ed476035706ab71d3
4
- data.tar.gz: 4e4d08e0ab018af12efe024ec1b1f3504b9efdaa
3
+ metadata.gz: 576d715438f5bf28ed6f478ba5d81a47bf737907
4
+ data.tar.gz: dccae5be6356b8aac334dc6a77a4f46fd418d4e1
5
5
  SHA512:
6
- metadata.gz: 05937dadb1ed74f1f361f61860b9c66db7be132d3ae7b83ec464008f5120bb83a5208b36e09b8636cdd9352450e679458cc613b5f39750a0682a92a24f022cba
7
- data.tar.gz: a50c5625bbe904b1fdef3a27ec1a7c846c6be3cb8ada680b3a52041a70c3cc65ce7a5ddcfb694e91f90eb7f50de865f07f226b60ca069818771477906cec9302
6
+ metadata.gz: 6c1be39cf38b2c6bc18eaadcc211ae732e3e8c1c4c710c551ca8514d7ae6162a9868bda36a49875d06bcd0a3d5a8bfb12c46faa9a677d34a9c103cab589390ed
7
+ data.tar.gz: 715e43fbf5241459c37801b5a4d43a8c1b4ac1f235da2451d512eb78482a573dcb0f51f62c2547bc62805565cf588feebf815aa9040d76c389a1196cd7ba9fd6
@@ -1,4 +1,4 @@
1
- Copyright 2016 Mathías Montossi
1
+ Copyright 2017 Museways
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining
4
4
  a copy of this software and associated documentation files (the
data/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  [![Gem Version](https://badge.fury.io/rb/sidejobs.svg)](http://badge.fury.io/rb/sidejobs)
2
- [![Code Climate](https://codeclimate.com/github/mmontossi/sidejobs/badges/gpa.svg)](https://codeclimate.com/github/mmontossi/sidejobs)
3
- [![Build Status](https://travis-ci.org/mmontossi/sidejobs.svg)](https://travis-ci.org/mmontossi/sidejobs)
4
- [![Dependency Status](https://gemnasium.com/mmontossi/sidejobs.svg)](https://gemnasium.com/mmontossi/sidejobs)
2
+ [![Code Climate](https://codeclimate.com/github/museways/sidejobs/badges/gpa.svg)](https://codeclimate.com/github/museways/sidejobs)
3
+ [![Build Status](https://travis-ci.org/museways/sidejobs.svg)](https://travis-ci.org/museways/sidejobs)
4
+ [![Dependency Status](https://gemnasium.com/museways/sidejobs.svg)](https://gemnasium.com/museways/sidejobs)
5
5
 
6
6
  # Sidejobs
7
7
 
@@ -89,11 +89,11 @@ Sidejobs::Job.failing.where('attempts > ?', 3).destroy_all
89
89
 
90
90
  Any issue, pull request, comment of any kind is more than welcome!
91
91
 
92
- I will mainly ensure compatibility to PostgreSQL, AWS, Redis, Elasticsearch, FreeBSD and Memcached
92
+ I will mainly ensure compatibility to last versions of Ruby, Rails and PostgreSQL
93
93
 
94
94
  ## Credits
95
95
 
96
- This gem is maintained and funded by [mmontossi](https://github.com/mmontossi).
96
+ This gem is maintained and funded by [museways](https://github.com/museways).
97
97
 
98
98
  ## License
99
99
 
data/Rakefile CHANGED
@@ -4,16 +4,14 @@ rescue LoadError
4
4
  puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
5
5
  end
6
6
 
7
- Bundler::GemHelper.install_tasks
7
+ require 'bundler/gem_tasks'
8
8
 
9
9
  require 'rake/testtask'
10
10
 
11
11
  Rake::TestTask.new(:test) do |t|
12
- t.libs << 'lib'
13
12
  t.libs << 'test'
14
13
  t.pattern = 'test/**/*_test.rb'
15
14
  t.verbose = false
16
- t.warning = false
17
15
  end
18
16
 
19
17
  task default: :test
@@ -1,5 +1,6 @@
1
1
  require 'sidejobs/extensions/active_job/queue_adapter'
2
2
  require 'sidejobs/configuration'
3
+ require 'sidejobs/loggable'
3
4
  require 'sidejobs/daemon'
4
5
  require 'sidejobs/job'
5
6
  require 'sidejobs/processor'
@@ -19,7 +20,7 @@ module Sidejobs
19
20
  end
20
21
 
21
22
  def logger
22
- @logger ||= Logger.new(Rails.root.join('log/sidejobs.log'))
23
+ @logger ||= ActiveSupport::Logger.new(Rails.root.join('log/sidejobs.log'))
23
24
  end
24
25
 
25
26
  def configuration
@@ -1,9 +1,6 @@
1
1
  module Sidejobs
2
2
  class Daemon
3
-
4
- def initialize
5
- @stopping = false
6
- end
3
+ include Loggable
7
4
 
8
5
  def running?
9
6
  if pid
@@ -20,24 +17,19 @@ module Sidejobs
20
17
 
21
18
  def start
22
19
  unless running?
23
- daemonize
24
- write_pid
25
- trap_signals
26
- process
20
+ spawn
27
21
  end
28
22
  end
29
23
 
30
24
  def stop
31
25
  if running?
32
26
  Process.kill :TERM, pid
33
- delete_pid
34
27
  end
35
28
  end
36
29
 
37
30
  def restart
38
31
  if running?
39
- stop
40
- start
32
+ Process.kill :HUP, pid
41
33
  else
42
34
  start
43
35
  end
@@ -47,31 +39,30 @@ module Sidejobs
47
39
  File.read(pid_path).to_i rescue nil
48
40
  end
49
41
 
50
- def stopping?
51
- @stopping == true
52
- end
53
-
54
42
  private
55
43
 
44
+ def spawn
45
+ daemonize
46
+ write_pid
47
+ trap_signals
48
+ process
49
+ end
50
+
56
51
  def daemonize
57
- exit if fork
58
- Process.setsid
59
- exit if fork
60
- Dir.chdir '/'
61
- File.umask 0000
62
- $stdout.reopen log_path, 'a'
63
- $stderr.reopen $stdout
64
- $stdout.sync = true
52
+ Process.daemon
65
53
  end
66
54
 
67
55
  def trap_signals
68
56
  trap :TERM do
69
- @stopping = true
57
+ @signal = :stop
58
+ end
59
+ trap :HUP do
60
+ @signal = :restart
70
61
  end
71
62
  end
72
63
 
73
64
  def delete_pid
74
- File.unlink pid_path
65
+ FileUtils.rm_rf pid_path
75
66
  end
76
67
 
77
68
  def write_pid
@@ -79,25 +70,36 @@ module Sidejobs
79
70
  File.write pid_path, Process.pid
80
71
  end
81
72
 
82
- def log_path
83
- Rails.root.join 'log/sidejobs.log'
84
- end
85
-
86
73
  def pid_path
87
- Rails.root.join 'tmp/pids/sidejobs.pid'
74
+ Rails.root.join 'tmp/sidejobs.pid'
88
75
  end
89
76
 
90
77
  def processor
91
78
  @processor ||= Processor.new
92
79
  end
93
80
 
81
+ def handle_signal
82
+ case @signal
83
+ when :stop
84
+ delete_pid
85
+ when :restart
86
+ @signal = nil
87
+ spawn
88
+ end
89
+ end
90
+
91
+ def signal_received?
92
+ @signal.present?
93
+ end
94
+
94
95
  def process
95
- Sidejobs.logger.info 'Starting'
96
- until stopping? do
96
+ logger.info "Started #{pid} at #{Time.zone.now}"
97
+ until signal_received? do
97
98
  processor.process
98
99
  sleep Sidejobs.configuration.sleep_delay
99
100
  end
100
- Sidejobs.logger.info 'Stopping'
101
+ logger.info "Stopped #{pid} at #{Time.zone.now}"
102
+ handle_signal
101
103
  end
102
104
 
103
105
  end
@@ -3,43 +3,41 @@ module Sidejobs
3
3
  module ActiveJob
4
4
  module QueueAdapters
5
5
  class SidejobsAdapter
6
- class << self
7
6
 
8
- def enqueue(job)
9
- Sidejobs.queue.add(
10
- job.serialize,
11
- queue: job.queue_name,
12
- priority: calculate_priority(job.queue_name)
13
- )
14
- end
7
+ def enqueue(job)
8
+ Sidejobs.queue.add(
9
+ job.serialize,
10
+ queue: job.queue_name,
11
+ priority: calculate_priority(job.queue_name)
12
+ )
13
+ end
15
14
 
16
- def enqueue_at(job, timestamp)
17
- Sidejobs.queue.add(
18
- job.serialize,
19
- queue: job.queue_name,
20
- priority: calculate_priority(job.queue_name),
21
- schedule_at: Time.at(timestamp)
22
- )
23
- end
15
+ def enqueue_at(job, timestamp)
16
+ Sidejobs.queue.add(
17
+ job.serialize,
18
+ queue: job.queue_name,
19
+ priority: calculate_priority(job.queue_name),
20
+ schedule_at: Time.at(timestamp)
21
+ )
22
+ end
24
23
 
25
- private
24
+ private
26
25
 
27
- def calculate_priority(queue)
28
- case queue
29
- when 'mailers'
30
- 80
31
- when 'high_priority'
32
- 60
33
- when 'default'
34
- 40
35
- when 'low_priority'
36
- 20
37
- else
38
- 0
39
- end
26
+ def calculate_priority(queue)
27
+ case queue
28
+ when 'mailers'
29
+ 80
30
+ when 'high_priority'
31
+ 60
32
+ when 'default'
33
+ 40
34
+ when 'low_priority'
35
+ 20
36
+ else
37
+ 0
40
38
  end
41
-
42
39
  end
40
+
43
41
  end
44
42
  end
45
43
  end
@@ -0,0 +1,7 @@
1
+ module Sidejobs
2
+ module Loggable
3
+
4
+ delegate :logger, to: Sidejobs
5
+
6
+ end
7
+ end
@@ -1,22 +1,17 @@
1
1
  module Sidejobs
2
2
  class Processor
3
+ include Loggable
3
4
 
4
5
  def process
5
- original_logger = ActiveRecord::Base.logger
6
- ActiveRecord::Base.logger = Sidejobs.logger
7
6
  Sidejobs.queue.fetch.each do |job|
8
- Sidejobs.logger.info "Processing #{job.data['job_class']} ##{job.id} attempt #{job.attempts+1} at #{job.queue}"
9
7
  job.update status: 'processing', processed_at: Time.now, attempts: job.attempts+1
10
8
  begin
11
9
  ActiveJob::Base.execute job.data
12
10
  job.update status: 'complete', completed_at: Time.now
13
- Sidejobs.logger.info 'Done'
14
11
  rescue => exception
15
12
  job.update status: 'failing', failed_at: Time.now, error: exception.message
16
- Sidejobs.logger.info "Error: #{exception.message}"
17
13
  end
18
14
  end
19
- ActiveRecord::Base.logger = original_logger
20
15
  end
21
16
 
22
17
  end
@@ -3,7 +3,7 @@ module Sidejobs
3
3
 
4
4
  def add(data, options={})
5
5
  Job.create(
6
- data: data.to_json,
6
+ data: data,
7
7
  queue: (options[:queue] || 'default'),
8
8
  priority: (options[:priority] || 0),
9
9
  scheduled_at: options[:schedule_at]
@@ -1,5 +1,5 @@
1
1
  module Sidejobs
2
2
 
3
- VERSION = '4.0.0.2'
3
+ VERSION = '5.1.0'
4
4
 
5
5
  end
metadata CHANGED
@@ -1,66 +1,60 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sidejobs
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.0.0.2
4
+ version: 5.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - mmontossi
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-12-14 00:00:00.000000000 Z
11
+ date: 2017-10-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
18
- - !ruby/object:Gem::Version
19
- version: 4.2.0
20
- - - "<"
17
+ - - "~>"
21
18
  - !ruby/object:Gem::Version
22
- version: 4.3.0
19
+ version: '5.1'
23
20
  type: :runtime
24
21
  prerelease: false
25
22
  version_requirements: !ruby/object:Gem::Requirement
26
23
  requirements:
27
- - - ">="
28
- - !ruby/object:Gem::Version
29
- version: 4.2.0
30
- - - "<"
24
+ - - "~>"
31
25
  - !ruby/object:Gem::Version
32
- version: 4.3.0
26
+ version: '5.1'
33
27
  - !ruby/object:Gem::Dependency
34
28
  name: pg
35
29
  requirement: !ruby/object:Gem::Requirement
36
30
  requirements:
37
31
  - - "~>"
38
32
  - !ruby/object:Gem::Version
39
- version: '0.18'
33
+ version: '0.21'
40
34
  type: :development
41
35
  prerelease: false
42
36
  version_requirements: !ruby/object:Gem::Requirement
43
37
  requirements:
44
38
  - - "~>"
45
39
  - !ruby/object:Gem::Version
46
- version: '0.18'
40
+ version: '0.21'
47
41
  - !ruby/object:Gem::Dependency
48
42
  name: mocha
49
43
  requirement: !ruby/object:Gem::Requirement
50
44
  requirements:
51
45
  - - "~>"
52
46
  - !ruby/object:Gem::Version
53
- version: '1.1'
47
+ version: '1.2'
54
48
  type: :development
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
51
  requirements:
58
52
  - - "~>"
59
53
  - !ruby/object:Gem::Version
60
- version: '1.1'
54
+ version: '1.2'
61
55
  description: Versatile async database based jobs for rails.
62
56
  email:
63
- - mmontossi@gmail.com
57
+ - hi@museways.com
64
58
  executables: []
65
59
  extensions: []
66
60
  extra_rdoc_files: []
@@ -76,64 +70,13 @@ files:
76
70
  - lib/sidejobs/daemon.rb
77
71
  - lib/sidejobs/extensions/active_job/queue_adapter.rb
78
72
  - lib/sidejobs/job.rb
73
+ - lib/sidejobs/loggable.rb
79
74
  - lib/sidejobs/processor.rb
80
75
  - lib/sidejobs/queue.rb
81
76
  - lib/sidejobs/railtie.rb
82
77
  - lib/sidejobs/version.rb
83
78
  - lib/tasks/sidejobs.rake
84
- - test/daemon_test.rb
85
- - test/dummy/Rakefile
86
- - test/dummy/app/assets/javascripts/application.js
87
- - test/dummy/app/assets/stylesheets/application.css
88
- - test/dummy/app/controllers/application_controller.rb
89
- - test/dummy/app/helpers/application_helper.rb
90
- - test/dummy/app/jobs/charge_subscriptions_job.rb
91
- - test/dummy/app/jobs/clear_guest_users_job.rb
92
- - test/dummy/app/jobs/send_newsletters_job.rb
93
- - test/dummy/app/jobs/share_products_job.rb
94
- - test/dummy/app/jobs/update_exchanges_job.rb
95
- - test/dummy/app/mailers/user_mailer.rb
96
- - test/dummy/app/views/layouts/application.html.erb
97
- - test/dummy/app/views/user_mailer/invite.text.erb
98
- - test/dummy/bin/bundle
99
- - test/dummy/bin/rails
100
- - test/dummy/bin/rake
101
- - test/dummy/bin/setup
102
- - test/dummy/config.ru
103
- - test/dummy/config/application.rb
104
- - test/dummy/config/boot.rb
105
- - test/dummy/config/database.yml
106
- - test/dummy/config/database.yml.travis
107
- - test/dummy/config/environment.rb
108
- - test/dummy/config/environments/development.rb
109
- - test/dummy/config/environments/production.rb
110
- - test/dummy/config/environments/test.rb
111
- - test/dummy/config/initializers/assets.rb
112
- - test/dummy/config/initializers/backtrace_silencers.rb
113
- - test/dummy/config/initializers/cookies_serializer.rb
114
- - test/dummy/config/initializers/filter_parameter_logging.rb
115
- - test/dummy/config/initializers/inflections.rb
116
- - test/dummy/config/initializers/mime_types.rb
117
- - test/dummy/config/initializers/session_store.rb
118
- - test/dummy/config/initializers/sidejobs.rb
119
- - test/dummy/config/initializers/wrap_parameters.rb
120
- - test/dummy/config/locales/en.yml
121
- - test/dummy/config/routes.rb
122
- - test/dummy/config/secrets.yml
123
- - test/dummy/db/migrate/20161022211612_create_sidejobs.rb
124
- - test/dummy/db/schema.rb
125
- - test/dummy/log/development.log
126
- - test/dummy/log/sidejobs.log
127
- - test/dummy/log/test.log
128
- - test/dummy/public/404.html
129
- - test/dummy/public/422.html
130
- - test/dummy/public/500.html
131
- - test/dummy/public/favicon.ico
132
- - test/generator_test.rb
133
- - test/processor_test.rb
134
- - test/queue_test.rb
135
- - test/test_helper.rb
136
- homepage: https://github.com/mmontossi/sidejobs
79
+ homepage: https://github.com/museways/sidejobs
137
80
  licenses:
138
81
  - MIT
139
82
  metadata: {}
@@ -145,7 +88,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
145
88
  requirements:
146
89
  - - ">="
147
90
  - !ruby/object:Gem::Version
148
- version: 2.0.0
91
+ version: '0'
149
92
  required_rubygems_version: !ruby/object:Gem::Requirement
150
93
  requirements:
151
94
  - - ">="
@@ -153,60 +96,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
153
96
  version: '0'
154
97
  requirements: []
155
98
  rubyforge_project:
156
- rubygems_version: 2.5.1
99
+ rubygems_version: 2.6.13
157
100
  signing_key:
158
101
  specification_version: 4
159
102
  summary: Async jobs for rails
160
- test_files:
161
- - test/daemon_test.rb
162
- - test/dummy/app/assets/javascripts/application.js
163
- - test/dummy/app/assets/stylesheets/application.css
164
- - test/dummy/app/controllers/application_controller.rb
165
- - test/dummy/app/helpers/application_helper.rb
166
- - test/dummy/app/jobs/charge_subscriptions_job.rb
167
- - test/dummy/app/jobs/clear_guest_users_job.rb
168
- - test/dummy/app/jobs/send_newsletters_job.rb
169
- - test/dummy/app/jobs/share_products_job.rb
170
- - test/dummy/app/jobs/update_exchanges_job.rb
171
- - test/dummy/app/mailers/user_mailer.rb
172
- - test/dummy/app/views/layouts/application.html.erb
173
- - test/dummy/app/views/user_mailer/invite.text.erb
174
- - test/dummy/bin/bundle
175
- - test/dummy/bin/rails
176
- - test/dummy/bin/rake
177
- - test/dummy/bin/setup
178
- - test/dummy/config/application.rb
179
- - test/dummy/config/boot.rb
180
- - test/dummy/config/database.yml
181
- - test/dummy/config/database.yml.travis
182
- - test/dummy/config/environment.rb
183
- - test/dummy/config/environments/development.rb
184
- - test/dummy/config/environments/production.rb
185
- - test/dummy/config/environments/test.rb
186
- - test/dummy/config/initializers/assets.rb
187
- - test/dummy/config/initializers/backtrace_silencers.rb
188
- - test/dummy/config/initializers/cookies_serializer.rb
189
- - test/dummy/config/initializers/filter_parameter_logging.rb
190
- - test/dummy/config/initializers/inflections.rb
191
- - test/dummy/config/initializers/mime_types.rb
192
- - test/dummy/config/initializers/session_store.rb
193
- - test/dummy/config/initializers/sidejobs.rb
194
- - test/dummy/config/initializers/wrap_parameters.rb
195
- - test/dummy/config/locales/en.yml
196
- - test/dummy/config/routes.rb
197
- - test/dummy/config/secrets.yml
198
- - test/dummy/config.ru
199
- - test/dummy/db/migrate/20161022211612_create_sidejobs.rb
200
- - test/dummy/db/schema.rb
201
- - test/dummy/log/development.log
202
- - test/dummy/log/sidejobs.log
203
- - test/dummy/log/test.log
204
- - test/dummy/public/404.html
205
- - test/dummy/public/422.html
206
- - test/dummy/public/500.html
207
- - test/dummy/public/favicon.ico
208
- - test/dummy/Rakefile
209
- - test/generator_test.rb
210
- - test/processor_test.rb
211
- - test/queue_test.rb
212
- - test/test_helper.rb
103
+ test_files: []