sidekiq-cron 0.6.3 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -5,9 +5,7 @@ require './test/test_helper'
5
5
  describe 'Cron Poller' do
6
6
  before do
7
7
  Sidekiq.redis = REDIS
8
- Sidekiq.redis do |conn|
9
- conn.flushdb
10
- end
8
+ Redis.current.flushdb
11
9
 
12
10
  #clear all previous saved data from redis
13
11
  Sidekiq.redis do |conn|
@@ -28,8 +26,8 @@ describe 'Cron Poller' do
28
26
  end
29
27
 
30
28
  it 'not enqueue any job - new jobs' do
31
- now = Time.now.utc
32
- enqueued_time = Time.new(now.year, now.month, now.day, now.hour + 1, 5, 1)
29
+ now = Time.now.utc + 3600
30
+ enqueued_time = Time.new(now.year, now.month, now.day, now.hour, 5, 1)
33
31
  Time.stubs(:now).returns(enqueued_time)
34
32
  #new jobs!
35
33
  Sidekiq::Cron::Job.create(@args)
@@ -43,19 +41,20 @@ describe 'Cron Poller' do
43
41
  end
44
42
 
45
43
  #30 seconds after!
46
- enqueued_time = Time.new(now.year, now.month, now.day, now.hour + 1, 5, 30)
44
+ enqueued_time = Time.new(now.year, now.month, now.day, now.hour, 5, 30)
47
45
  Time.stubs(:now).returns(enqueued_time)
48
- @poller.enqueue
49
46
 
50
- Sidekiq.redis do |conn|
51
- assert_equal 0, conn.llen("queue:default")
52
- assert_equal 0, conn.llen("queue:super")
53
- end
47
+ @poller.enqueue
48
+
49
+ Sidekiq.redis do |conn|
50
+ assert_equal 0, conn.llen("queue:default")
51
+ assert_equal 0, conn.llen("queue:super")
52
+ end
54
53
  end
55
54
 
56
55
  it 'should enqueue only job with cron */2' do
57
- now = Time.now.utc
58
- enqueued_time = Time.new(now.year, now.month, now.day, now.hour + 1, 5, 1)
56
+ now = Time.now.utc + 3600
57
+ enqueued_time = Time.new(now.year, now.month, now.day, now.hour, 5, 1)
59
58
  Time.stubs(:now).returns(enqueued_time)
60
59
  #new jobs!
61
60
  Sidekiq::Cron::Job.create(@args)
@@ -68,7 +67,7 @@ describe 'Cron Poller' do
68
67
  assert_equal 0, conn.llen("queue:super")
69
68
  end
70
69
 
71
- enqueued_time = Time.new(now.year, now.month, now.day, now.hour + 1, 6, 1)
70
+ enqueued_time = Time.new(now.year, now.month, now.day, now.hour, 6, 1)
72
71
  Time.stubs(:now).returns(enqueued_time)
73
72
  @poller.enqueue
74
73
 
@@ -79,8 +78,8 @@ describe 'Cron Poller' do
79
78
  end
80
79
 
81
80
  it 'should enqueue both jobs' do
82
- now = Time.now.utc
83
- enqueued_time = Time.new(now.year, now.month, now.day, now.hour + 1, 8, 1)
81
+ now = Time.now.utc + 3600
82
+ enqueued_time = Time.new(now.year, now.month, now.day, now.hour, 8, 1)
84
83
  Time.stubs(:now).returns(enqueued_time)
85
84
  #new jobs!
86
85
  Sidekiq::Cron::Job.create(@args)
@@ -93,7 +92,7 @@ describe 'Cron Poller' do
93
92
  assert_equal 0, conn.llen("queue:super")
94
93
  end
95
94
 
96
- enqueued_time = Time.new(now.year, now.month, now.day, now.hour + 1, 10, 5)
95
+ enqueued_time = Time.new(now.year, now.month, now.day, now.hour, 10, 5)
97
96
  Time.stubs(:now).returns(enqueued_time)
98
97
  @poller.enqueue
99
98
 
@@ -104,8 +103,8 @@ describe 'Cron Poller' do
104
103
  end
105
104
 
106
105
  it 'should enqueue both jobs but only one time each' do
107
- now = Time.now.utc
108
- enqueued_time = Time.new(now.year, now.month, now.day, now.hour + 1, 8, 1)
106
+ now = Time.now.utc + 3600
107
+ enqueued_time = Time.new(now.year, now.month, now.day, now.hour, 8, 1)
109
108
  Time.stubs(:now).returns(enqueued_time)
110
109
  #new jobs!
111
110
  Sidekiq::Cron::Job.create(@args)
@@ -118,7 +117,7 @@ describe 'Cron Poller' do
118
117
  assert_equal 0, conn.llen("queue:super")
119
118
  end
120
119
 
121
- enqueued_time = Time.new(now.year, now.month, now.day, now.hour + 1, 20, 1)
120
+ enqueued_time = Time.new(now.year, now.month, now.day, now.hour, 20, 1)
122
121
  Time.stubs(:now).returns(enqueued_time)
123
122
  @poller.enqueue
124
123
  Sidekiq.redis do |conn|
@@ -126,7 +125,7 @@ describe 'Cron Poller' do
126
125
  assert_equal 1, conn.llen("queue:super")
127
126
  end
128
127
 
129
- enqueued_time = Time.new(now.year, now.month, now.day, now.hour + 1, 20, 2)
128
+ enqueued_time = Time.new(now.year, now.month, now.day, now.hour, 20, 2)
130
129
  Time.stubs(:now).returns(enqueued_time)
131
130
  @poller.enqueue
132
131
  Sidekiq.redis do |conn|
@@ -134,7 +133,7 @@ describe 'Cron Poller' do
134
133
  assert_equal 1, conn.llen("queue:super")
135
134
  end
136
135
 
137
- enqueued_time = Time.new(now.year, now.month, now.day, now.hour + 1, 20, 20)
136
+ enqueued_time = Time.new(now.year, now.month, now.day, now.hour, 20, 20)
138
137
  Time.stubs(:now).returns(enqueued_time)
139
138
  @poller.enqueue
140
139
  Sidekiq.redis do |conn|
@@ -142,7 +141,7 @@ describe 'Cron Poller' do
142
141
  assert_equal 1, conn.llen("queue:super")
143
142
  end
144
143
 
145
- enqueued_time = Time.new(now.year, now.month, now.day, now.hour + 1, 20, 50)
144
+ enqueued_time = Time.new(now.year, now.month, now.day, now.hour, 20, 50)
146
145
  Time.stubs(:now).returns(enqueued_time)
147
146
  @poller.enqueue
148
147
  Sidekiq.redis do |conn|
@@ -9,7 +9,7 @@ describe 'Cron web' do
9
9
 
10
10
  before do
11
11
  Sidekiq.redis = REDIS
12
- Sidekiq.redis {|c| c.flushdb }
12
+ Redis.current.flushdb
13
13
 
14
14
  #clear all previous saved data from redis
15
15
  Sidekiq.redis do |conn|
@@ -41,7 +41,7 @@ describe 'Cron web' do
41
41
 
42
42
  it 'display cron web with message - no cron jobs' do
43
43
  get '/cron'
44
- assert last_response.body.include?('No cron jobs found')
44
+ assert last_response.body.include?('No cron jobs were found')
45
45
  end
46
46
 
47
47
  it 'display cron web with cron jobs table' do
@@ -49,7 +49,7 @@ describe 'Cron web' do
49
49
 
50
50
  get '/cron'
51
51
  assert_equal 200, last_response.status
52
- refute last_response.body.include?('No cron jobs found')
52
+ refute last_response.body.include?('No cron jobs were found')
53
53
  assert last_response.body.include?('table')
54
54
  assert last_response.body.include?("TestNameOfCronJob")
55
55
  end
@@ -66,6 +66,25 @@ describe 'Cron web' do
66
66
  @cron_job_name = "TesQueueNameOfCronJob"
67
67
  end
68
68
 
69
+ it 'shows history of a cron job' do
70
+ @job.enque!
71
+ get "/cron/#{@name}"
72
+
73
+ jid =
74
+ Sidekiq.redis do |conn|
75
+ history = conn.lrange Sidekiq::Cron::Job.jid_history_key(@name), 0, -1
76
+ Sidekiq.load_json(history.last)['jid']
77
+ end
78
+
79
+ assert last_response.body.include?(jid)
80
+ end
81
+
82
+ it 'redirects to cron path when name not found' do
83
+ get '/cron/some-fake-name'
84
+
85
+ assert_match %r{\/cron\z}, last_response['Location']
86
+ end
87
+
69
88
  it "disable and enable all cron jobs" do
70
89
  post "/cron/__all__/disable"
71
90
  assert_equal Sidekiq::Cron::Job.find(@name).status, "disabled"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sidekiq-cron
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.3
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ondrej Bartas
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-06-20 00:00:00.000000000 Z
11
+ date: 2020-04-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sidekiq
@@ -25,19 +25,19 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: 4.2.1
27
27
  - !ruby/object:Gem::Dependency
28
- name: rufus-scheduler
28
+ name: fugit
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ">="
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 3.3.0
33
+ version: '1.1'
34
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: 3.3.0
40
+ version: '1.1'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: bundler
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -302,11 +302,15 @@ files:
302
302
  - lib/sidekiq/cron/launcher.rb
303
303
  - lib/sidekiq/cron/locales/de.yml
304
304
  - lib/sidekiq/cron/locales/en.yml
305
+ - lib/sidekiq/cron/locales/ja.yml
305
306
  - lib/sidekiq/cron/locales/ru.yml
307
+ - lib/sidekiq/cron/locales/zh-CN.yml
306
308
  - lib/sidekiq/cron/poller.rb
307
309
  - lib/sidekiq/cron/support.rb
308
310
  - lib/sidekiq/cron/views/cron.erb
309
311
  - lib/sidekiq/cron/views/cron.slim
312
+ - lib/sidekiq/cron/views/cron_show.erb
313
+ - lib/sidekiq/cron/views/cron_show.slim
310
314
  - lib/sidekiq/cron/web.rb
311
315
  - lib/sidekiq/cron/web_extension.rb
312
316
  - sidekiq-cron.gemspec
@@ -335,7 +339,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
335
339
  version: '0'
336
340
  requirements: []
337
341
  rubyforge_project:
338
- rubygems_version: 2.5.1
342
+ rubygems_version: 2.5.2.3
339
343
  signing_key:
340
344
  specification_version: 4
341
345
  summary: Sidekiq Cron helps to add repeated scheduled jobs