resque-scheduler-web 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (36) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +3 -3
  3. data/.rubocop.yml +1 -0
  4. data/.travis.yml +11 -0
  5. data/README.md +8 -2
  6. data/Rakefile +10 -1
  7. data/app/assets/javascripts/resque_web/plugins/resque_scheduler/application.js +0 -0
  8. data/app/assets/stylesheets/resque_web/plugins/resque_scheduler/application.css +3 -0
  9. data/app/controllers/resque_web/plugins/resque_scheduler/delayed_controller.rb +9 -1
  10. data/app/controllers/resque_web/plugins/resque_scheduler/schedules_controller.rb +7 -1
  11. data/app/helpers/resque_web/plugins/resque_scheduler/delayed_helper.rb +9 -0
  12. data/app/helpers/resque_web/plugins/resque_scheduler/schedules_helper.rb +29 -1
  13. data/app/models/resque_web/plugins/resque_scheduler/job_finder.rb +15 -9
  14. data/app/models/resque_web/plugins/resque_scheduler/job_finder/working_job_finder.rb +22 -5
  15. data/app/views/resque_web/plugins/resque_scheduler/delayed/index.erb +1 -1
  16. data/lib/resque/scheduler/web.rb +1 -1
  17. data/lib/resque/scheduler/web/version.rb +1 -1
  18. data/lib/resque_web/plugins/resque_scheduler/engine.rb +10 -6
  19. data/resque-scheduler-web.gemspec +10 -5
  20. data/spec/controllers/delayed_controller_spec.rb +10 -18
  21. data/spec/controllers/schedules_controller_spec.rb +28 -21
  22. data/spec/dummy/app/controllers/application_controller.rb +1 -0
  23. data/spec/dummy/config/application.rb +1 -0
  24. data/spec/dummy/log/test.log +5666 -0
  25. data/spec/features/navigation_spec.rb +1 -2
  26. data/spec/features/schedules/requeuing_a_job_with_parameters_spec.rb +8 -4
  27. data/spec/features/schedules/scheduled_jobs_page_spec.rb +8 -2
  28. data/spec/models/job_finder/working_job_finder_spec.rb +9 -7
  29. data/spec/models/job_finder_spec.rb +16 -13
  30. data/spec/rails_helper.rb +12 -9
  31. data/spec/routing/delayed_routing_spec.rb +5 -3
  32. data/spec/spec_helper.rb +6 -7
  33. data/spec/support/redis_instance.rb +13 -11
  34. data/spec/support/test_jobs.rb +9 -4
  35. metadata +68 -24
  36. data/spec/dummy/app/helpers/application_helper.rb +0 -2
@@ -1,7 +1,6 @@
1
1
  require 'rails_helper'
2
2
 
3
3
  feature 'the tabs added to the resque web interface work correctly' do
4
-
5
4
  scenario 'the Schedule tab works' do
6
5
  visit ResqueWeb::Engine.app.url_helpers.overview_path
7
6
  click_link 'Schedule'
@@ -13,4 +12,4 @@ feature 'the tabs added to the resque web interface work correctly' do
13
12
  click_link 'Delayed'
14
13
  expect(current_path).to eq resque_scheduler_engine_routes.delayed_path
15
14
  end
16
- end
15
+ end
@@ -1,12 +1,17 @@
1
1
  require 'rails_helper'
2
2
 
3
3
  feature 'requeuing a job that has defined params' do
4
-
5
4
  before do
6
5
  Resque.schedule = Test::RESQUE_SCHEDULE
7
6
  Resque::Scheduler.load_schedule!
8
7
  end
9
8
 
9
+ after do
10
+ Resque.reset_delayed_queue
11
+ Resque.queues.each { |q| Resque.remove_queue q }
12
+ Resque.schedule = {}
13
+ end
14
+
10
15
  # Given I have a job which requires params in the schedule
11
16
  # When I press the requeue button
12
17
  # Then I should be presented with a form that prompts me for the params
@@ -16,7 +21,6 @@ feature 'requeuing a job that has defined params' do
16
21
  # When I visit the queue page
17
22
  # Then I should see the job on the page with the new params
18
23
  scenario 'I am prompted to enter the params required for the requeued job' do
19
-
20
24
  job_name = 'job_with_params'
21
25
  queue_name = 'quick'
22
26
  job_class = 'JobWithParams'
@@ -28,9 +32,9 @@ feature 'requeuing a job that has defined params' do
28
32
  click_button 'Queue now'
29
33
 
30
34
  expect(current_path).to eq ResqueWeb::Engine.app.url_helpers.overview_path
31
- click_link queue_name
35
+ find('.queues .queue a', text: queue_name).click
32
36
 
33
37
  expect(page).to have_content job_class
34
38
  expect(page).to have_css 'td.args', text: /"log_level"=>"info"/
35
39
  end
36
- end
40
+ end
@@ -1,7 +1,6 @@
1
1
  require 'rails_helper'
2
2
 
3
3
  feature 'Viewing the schedule page and interacting with it' do
4
-
5
4
  def visit_scheduler_page
6
5
  visit resque_scheduler_engine_routes.schedules_path
7
6
  end
@@ -42,6 +41,13 @@ feature 'Viewing the schedule page and interacting with it' do
42
41
  visit_scheduler_page
43
42
  end
44
43
 
44
+ after do
45
+ Resque.reset_delayed_queue
46
+ Resque.queues.each { |q| Resque.remove_queue q }
47
+ Resque.schedule = {}
48
+ Resque::Scheduler.env = 'test'
49
+ end
50
+
45
51
  it 'Link to Schedule page in navigation works' do
46
52
  visit '/resque_web'
47
53
  click_link 'Schedule'
@@ -77,4 +83,4 @@ feature 'Viewing the schedule page and interacting with it' do
77
83
 
78
84
  assert !page.body.include?('Delete')
79
85
  end
80
- end
86
+ end
@@ -1,7 +1,7 @@
1
- require_relative '../../../app/models/resque_web/plugins/resque_scheduler/job_finder/working_job_finder'
1
+ require_relative '../../../app/models/resque_web/plugins/'\
2
+ 'resque_scheduler/job_finder/working_job_finder'
2
3
 
3
4
  describe ResqueWeb::Plugins::ResqueScheduler::JobFinder::WorkingJobFinder do
4
-
5
5
  before do
6
6
  Resque.enqueue(OngoingJob)
7
7
  @worker_thread = Thread.new do
@@ -14,25 +14,27 @@ describe ResqueWeb::Plugins::ResqueScheduler::JobFinder::WorkingJobFinder do
14
14
 
15
15
  after do
16
16
  @worker_thread.kill
17
+ Resque.reset_delayed_queue
18
+ Resque.queues.each { |q| Resque.remove_queue q }
17
19
  end
18
20
 
19
21
  it 'finds a working job when the search term matches' do
20
- finder = ResqueWeb::Plugins::ResqueScheduler::JobFinder::WorkingJobFinder.new('going')
22
+ finder = described_class.new('going')
21
23
  expect(finder.find_jobs.first['class']).to eq 'OngoingJob'
22
24
  end
23
25
 
24
26
  it 'does not find a working job when the search term does not match' do
25
- finder = ResqueWeb::Plugins::ResqueScheduler::JobFinder::WorkingJobFinder.new('donkey')
27
+ finder = described_class.new('donkey')
26
28
  expect(finder.find_jobs).to be_empty
27
29
  end
28
30
 
29
31
  it 'adds the queue name to the returned jobs' do
30
- finder = ResqueWeb::Plugins::ResqueScheduler::JobFinder::WorkingJobFinder.new('going')
32
+ finder = described_class.new('going')
31
33
  expect(finder.find_jobs.first['queue']).to eq 'quick'
32
34
  end
33
35
 
34
36
  it 'sets the where_at value to "working" for the returned jobs' do
35
- finder = ResqueWeb::Plugins::ResqueScheduler::JobFinder::WorkingJobFinder.new('going')
37
+ finder = described_class.new('going')
36
38
  expect(finder.find_jobs.first['where_at']).to eq 'working'
37
39
  end
38
- end
40
+ end
@@ -1,8 +1,10 @@
1
- require_relative '../../app/models/resque_web/plugins/resque_scheduler/job_finder'
1
+ require_relative '../../app/models/resque_web/plugins/'\
2
+ 'resque_scheduler/job_finder'
2
3
 
3
4
  describe ResqueWeb::Plugins::ResqueScheduler::JobFinder do
4
-
5
- let(:non_matching_finder) { ResqueWeb::Plugins::ResqueScheduler::JobFinder.new('donkey') }
5
+ let(:non_matching_finder) do
6
+ described_class.new('donkey')
7
+ end
6
8
 
7
9
  after do
8
10
  Resque.reset_delayed_queue
@@ -10,9 +12,10 @@ describe ResqueWeb::Plugins::ResqueScheduler::JobFinder do
10
12
  end
11
13
 
12
14
  context 'with a scheduled job queued in the future' do
13
-
14
15
  let(:time_in_future) { Time.now + 60 }
15
- let(:matching_finder) { ResqueWeb::Plugins::ResqueScheduler::JobFinder.new('ivar') }
16
+ let(:matching_finder) do
17
+ described_class.new('ivar')
18
+ end
16
19
 
17
20
  before do
18
21
  Resque.enqueue_at(time_in_future, SomeIvarJob)
@@ -31,24 +34,25 @@ describe ResqueWeb::Plugins::ResqueScheduler::JobFinder do
31
34
  end
32
35
 
33
36
  it 'sets the timestamp for the delayed scheduled jobs' do
34
- expect(matching_finder.find_jobs.first['timestamp']).to eq time_in_future.to_i
37
+ first_job_timestamp = matching_finder.find_jobs.first['timestamp']
38
+ expect(first_job_timestamp).to eq time_in_future.to_i
35
39
  end
36
40
  end
37
41
 
38
42
  context 'with a job currently in the queue' do
39
-
40
- let(:matching_finder) { ResqueWeb::Plugins::ResqueScheduler::JobFinder.new('quick') }
43
+ let(:matching_finder) do
44
+ described_class.new('quick')
45
+ end
41
46
 
42
47
  before do
43
48
  Resque.enqueue(SomeQuickJob)
44
49
  end
45
50
 
46
51
  it 'returns an empty result set with a nil search term' do
47
- finder = ResqueWeb::Plugins::ResqueScheduler::JobFinder.new(nil)
48
- expect(finder.find_jobs).to be_empty
52
+ expect(described_class.new(nil).find_jobs).to be_empty
49
53
  end
50
54
 
51
- it 'should find matching queued job' do
55
+ it 'finds a matching queued job' do
52
56
  expect(matching_finder.find_jobs.first['class']).to eq 'SomeQuickJob'
53
57
  end
54
58
 
@@ -64,5 +68,4 @@ describe ResqueWeb::Plugins::ResqueScheduler::JobFinder do
64
68
  expect(non_matching_finder.find_jobs).to be_empty
65
69
  end
66
70
  end
67
-
68
- end
71
+ end
data/spec/rails_helper.rb CHANGED
@@ -1,10 +1,12 @@
1
1
  require 'spec_helper'
2
2
 
3
- require File.expand_path("../dummy/config/environment.rb", __FILE__)
4
- ActiveRecord::Migrator.migrations_paths = [File.expand_path(
5
- '../../test/dummy/db/migrate',
6
- __FILE__
7
- )]
3
+ require File.expand_path('../dummy/config/environment.rb', __FILE__)
4
+ ActiveRecord::Migrator.migrations_paths = [
5
+ File.expand_path(
6
+ '../../test/dummy/db/migrate',
7
+ __FILE__
8
+ )
9
+ ]
8
10
  ActiveRecord::Migrator.migrations_paths << File.expand_path(
9
11
  '../../db/migrate',
10
12
  __FILE__
@@ -12,7 +14,6 @@ ActiveRecord::Migrator.migrations_paths << File.expand_path(
12
14
 
13
15
  require 'rspec/rails'
14
16
 
15
-
16
17
  # So we can access the Engine class and its path helpers
17
18
  $LOAD_PATH.unshift File.dirname(File.expand_path(__FILE__)) + '/../lib'
18
19
 
@@ -20,6 +21,8 @@ RSpec.configure do |config|
20
21
  config.infer_spec_type_from_file_location!
21
22
  end
22
23
 
23
- RedisInstance.run!
24
-
25
-
24
+ # Travis fails to find Redis without this, although it works locally.
25
+ # No idea why.
26
+ Resque.redis = Redis.new(
27
+ hostname: '127.0.0.1', port: RedisInstance.port, thread_safe: true
28
+ )
@@ -1,9 +1,11 @@
1
1
  require 'rails_helper'
2
2
 
3
- describe ResqueWeb::Plugins::ResqueScheduler::DelayedController, type: :routing do
3
+ describe ResqueWeb::Plugins::ResqueScheduler::DelayedController,
4
+ type: :routing do
4
5
  routes { ResqueWeb::Plugins::ResqueScheduler::Engine.routes }
5
6
 
6
7
  it 'routes to POST cancel_now' do
7
- expect(post 'delayed/cancel_now').to route_to('resque_web/plugins/resque_scheduler/delayed#cancel_now')
8
+ expected_route = 'resque_web/plugins/resque_scheduler/delayed#cancel_now'
9
+ expect(post 'delayed/cancel_now').to route_to(expected_route)
8
10
  end
9
- end
11
+ end
data/spec/spec_helper.rb CHANGED
@@ -1,3 +1,6 @@
1
+ require 'codeclimate-test-reporter'
2
+ CodeClimate::TestReporter.start
3
+
1
4
  ENV['RAILS_ENV'] = 'test'
2
5
 
3
6
  require 'resque'
@@ -41,9 +44,6 @@ RSpec.configure do |config|
41
44
  mocks.verify_partial_doubles = true
42
45
  end
43
46
 
44
- # The settings below are suggested to provide a good initial experience
45
- # with RSpec, but feel free to customize to your heart's content.
46
- =begin
47
47
  # These two settings work together to allow you to limit a spec run
48
48
  # to individual examples or groups you care about by tagging them with
49
49
  # `:focus` metadata. When nothing is tagged with `:focus`, all examples
@@ -56,11 +56,11 @@ RSpec.configure do |config|
56
56
  # - http://myronmars.to/n/dev-blog/2012/06/rspecs-new-expectation-syntax
57
57
  # - http://teaisaweso.me/blog/2013/05/27/rspecs-new-message-expectation-syntax/
58
58
  # - http://myronmars.to/n/dev-blog/2014/05/notable-changes-in-rspec-3#new__config_option_to_disable_rspeccore_monkey_patching
59
- config.disable_monkey_patching!
59
+ # config.disable_monkey_patching!
60
60
 
61
61
  # This setting enables warnings. It's recommended, but in some cases may
62
62
  # be too noisy due to issues in dependencies.
63
- config.warnings = true
63
+ # config.warnings = true
64
64
 
65
65
  # Many RSpec users commonly either run the entire suite or an individual
66
66
  # file, and it's useful to allow more verbose output when running an
@@ -75,7 +75,7 @@ RSpec.configure do |config|
75
75
  # Print the 10 slowest examples and example groups at the
76
76
  # end of the spec run, to help surface which specs are running
77
77
  # particularly slow.
78
- config.profile_examples = 10
78
+ # config.profile_examples = 10
79
79
 
80
80
  # Run specs in random order to surface order dependencies. If you find an
81
81
  # order dependency and want to debug it, you can fix the order by providing
@@ -88,7 +88,6 @@ RSpec.configure do |config|
88
88
  # test failures related to randomization by passing the same `--seed` value
89
89
  # as the one that triggered the failure.
90
90
  Kernel.srand config.seed
91
- =end
92
91
  end
93
92
 
94
93
  def resque_scheduler_engine_routes
@@ -3,6 +3,9 @@ require 'socket'
3
3
  require 'timeout'
4
4
  require 'fileutils'
5
5
 
6
+ # This provides a Redis instance for the test environment. It manages bootup and
7
+ # shutdown etc, whilst preventing conflicts with other things that may be
8
+ # running on the same port.
6
9
  class RedisInstance
7
10
  class << self
8
11
  @running = false
@@ -33,22 +36,25 @@ class RedisInstance
33
36
  @pid = nil
34
37
  end
35
38
 
39
+ def port
40
+ @port ||= random_port
41
+ end
42
+
36
43
  private
37
44
 
38
45
  def post_boot_waiting_and_such
39
46
  wait_for_pid
40
47
  puts "Booted isolated Redis on #{port} with PID #{pid}."
41
-
42
48
  wait_for_redis_boot
43
-
44
- # Ensure we tear down Redis on Ctrl+C / test failure.
45
- at_exit { stop! }
49
+ at_exit { stop! } # Ensure we tear down Redis on Ctrl+C / test failure.
46
50
  end
47
51
 
48
52
  def ensure_redis_server_present!
49
- unless system('redis-server -v')
50
- fail "** can't find `redis-server` in your path"
51
- end
53
+ fail "** can't find `redis-server` in your path" unless redis_detected?
54
+ end
55
+
56
+ def redis_detected?
57
+ system('redis-server -v')
52
58
  end
53
59
 
54
60
  def wait_for_redis_boot
@@ -91,10 +97,6 @@ class RedisInstance
91
97
  end
92
98
  end
93
99
 
94
- def port
95
- @port ||= random_port
96
- end
97
-
98
100
  def pid_file
99
101
  '/tmp/redis-scheduler-test.pid'
100
102
  end
@@ -9,25 +9,31 @@ class OngoingJob
9
9
  end
10
10
  end
11
11
 
12
+ # Generic job to use as a base class for the test jobs below.
12
13
  class SomeJob
13
14
  def self.perform(_repo_id, _path)
14
15
  end
15
16
  end
16
17
 
18
+ # Test job
17
19
  class SomeQuickJob < SomeJob
18
20
  @queue = :quick
19
21
  end
20
22
 
23
+ # Test job
21
24
  class SomeIvarJob < SomeJob
22
25
  @queue = :ivar
23
26
  end
24
27
 
28
+ # Job for tests where we put it into more than one environment and test that it
29
+ # only shows up for one.
25
30
  class SomeSharedEnvJob < SomeJob
26
31
  def self.queue
27
32
  :shared_job
28
33
  end
29
34
  end
30
35
 
36
+ # Job for tests, where we expect there to be parameters provided.
31
37
  class JobWithParams
32
38
  @queue = :quick
33
39
 
@@ -38,8 +44,9 @@ end
38
44
 
39
45
  JobWithoutParams = Class.new(JobWithParams)
40
46
 
41
-
47
+ # Test module
42
48
  module Foo
49
+ # Test class
43
50
  class Bar
44
51
  def self.queue
45
52
  'bar'
@@ -47,6 +54,7 @@ module Foo
47
54
  end
48
55
  end
49
56
 
57
+ # This is just a container for a dummy schedule.
50
58
  module Test
51
59
  RESQUE_SCHEDULE = {
52
60
  'job_without_params' => {
@@ -72,6 +80,3 @@ module Test
72
80
  }
73
81
  }
74
82
  end
75
-
76
-
77
-
metadata CHANGED
@@ -1,85 +1,85 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: resque-scheduler-web
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matt Gibson
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-04-11 00:00:00.000000000 Z
11
+ date: 2015-04-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: bundler
14
+ name: resque-web
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.6'
20
- type: :development
19
+ version: '0'
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.6'
26
+ version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: rake
28
+ name: resque-scheduler
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '10.0'
34
- type: :development
33
+ version: '4.0'
34
+ type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '10.0'
40
+ version: '4.0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: rails
42
+ name: bundler
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '4.2'
47
+ version: '1.6'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '4.2'
54
+ version: '1.6'
55
55
  - !ruby/object:Gem::Dependency
56
- name: resque-web
56
+ name: rake
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '0'
61
+ version: '10.0'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '0'
68
+ version: '10.0'
69
69
  - !ruby/object:Gem::Dependency
70
- name: resque-scheduler
70
+ name: rails
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '4.0'
75
+ version: '4.2'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '4.0'
82
+ version: '4.2'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: sqlite3
85
85
  requirement: !ruby/object:Gem::Requirement
@@ -122,6 +122,48 @@ dependencies:
122
122
  - - "~>"
123
123
  - !ruby/object:Gem::Version
124
124
  version: '2.4'
125
+ - !ruby/object:Gem::Dependency
126
+ name: codeclimate-test-reporter
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - ">="
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - ">="
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
139
+ - !ruby/object:Gem::Dependency
140
+ name: rubocop
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ">="
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
153
+ - !ruby/object:Gem::Dependency
154
+ name: rubocop-rspec
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - ">="
158
+ - !ruby/object:Gem::Version
159
+ version: '0'
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - ">="
165
+ - !ruby/object:Gem::Version
166
+ version: '0'
125
167
  - !ruby/object:Gem::Dependency
126
168
  name: sass
127
169
  requirement: !ruby/object:Gem::Requirement
@@ -137,8 +179,8 @@ dependencies:
137
179
  - !ruby/object:Gem::Version
138
180
  version: '3.4'
139
181
  description: Use this if you want to move to the new Resque Web plugin architecture
140
- via the resque-web gem, rather than the Sinatra-based approach that is bundled with
141
- Resque 1.x
182
+ for Resque Scheduler via theresque-web gem, rather than the Sinatra-based approach
183
+ that is bundled with Resque 1.x
142
184
  email:
143
185
  - downrightlies@gmail.com
144
186
  executables: []
@@ -147,10 +189,14 @@ extra_rdoc_files: []
147
189
  files:
148
190
  - ".gitignore"
149
191
  - ".rspec"
192
+ - ".rubocop.yml"
193
+ - ".travis.yml"
150
194
  - Gemfile
151
195
  - LICENSE.txt
152
196
  - README.md
153
197
  - Rakefile
198
+ - app/assets/javascripts/resque_web/plugins/resque_scheduler/application.js
199
+ - app/assets/stylesheets/resque_web/plugins/resque_scheduler/application.css
154
200
  - app/controllers/resque_web/plugins/resque_scheduler/delayed_controller.rb
155
201
  - app/controllers/resque_web/plugins/resque_scheduler/schedules_controller.rb
156
202
  - app/helpers/resque_web/plugins/resque_scheduler/delayed_helper.rb
@@ -178,7 +224,6 @@ files:
178
224
  - spec/dummy/app/assets/stylesheets/application.css
179
225
  - spec/dummy/app/controllers/application_controller.rb
180
226
  - spec/dummy/app/controllers/concerns/.keep
181
- - spec/dummy/app/helpers/application_helper.rb
182
227
  - spec/dummy/app/mailers/.keep
183
228
  - spec/dummy/app/models/.keep
184
229
  - spec/dummy/app/models/concerns/.keep
@@ -247,7 +292,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
247
292
  version: '0'
248
293
  requirements: []
249
294
  rubyforge_project:
250
- rubygems_version: 2.4.5
295
+ rubygems_version: 2.4.6
251
296
  signing_key:
252
297
  specification_version: 4
253
298
  summary: This gem provides tabs in Resque Web for managing Resque Scheduler.
@@ -261,7 +306,6 @@ test_files:
261
306
  - spec/dummy/app/assets/stylesheets/application.css
262
307
  - spec/dummy/app/controllers/application_controller.rb
263
308
  - spec/dummy/app/controllers/concerns/.keep
264
- - spec/dummy/app/helpers/application_helper.rb
265
309
  - spec/dummy/app/mailers/.keep
266
310
  - spec/dummy/app/models/.keep
267
311
  - spec/dummy/app/models/concerns/.keep