File tree Expand file tree Collapse file tree 4 files changed +17
-3
lines changed
Expand file tree Collapse file tree 4 files changed +17
-3
lines changed Original file line number Diff line number Diff line change 55## [ Unreleased]
66### Changed
77- Remove support for Ruby < 2.3
8+ - Allow use of duration (e.g. ` 30.minutes ` ) for interval type scheduling
89
910## [ 4.5.0] - 2021-09-25
1011### Added
Original file line number Diff line number Diff line change @@ -144,7 +144,7 @@ def load_schedule_job(name, config)
144144 interval_defined = false
145145 interval_types = %w( cron every )
146146 interval_types . each do |interval_type |
147- next unless !config [ interval_type ] . nil? && !config [ interval_type ] . empty?
147+ next unless !config [ interval_type ] . nil? && !config [ interval_type ] . to_s . empty?
148148 args = optionizate_interval_value ( config [ interval_type ] )
149149 args = [ args , nil , job : true ] if args . is_a? ( ::String )
150150
Original file line number Diff line number Diff line change @@ -185,13 +185,13 @@ def schedule_interval(config)
185185
186186 def schedule_interval_every ( every )
187187 every = [ *every ]
188- s = 'every: ' << every . first
188+ s = 'every: ' << " #{ every . first } #{ 's' if every . first . is_a? ( Numeric ) } "
189189
190190 return s unless every . length > 1
191191
192192 s << ' ('
193193 meta = every . last . map do |key , value |
194- "#{ key . to_s . tr ( '_' , ' ' ) } #{ value } "
194+ "#{ key . to_s . tr ( '_' , ' ' ) } #{ value } #{ 's' if value . is_a? ( Numeric ) } "
195195 end
196196 s << meta . join ( ', ' ) << ')'
197197 end
Original file line number Diff line number Diff line change 132132 assert job . opts . keys . include? ( :first_in )
133133 end
134134
135+ test 'load_schedule_job with every fixnum' do
136+ Resque ::Scheduler . load_schedule_job (
137+ 'some_ivar_job' ,
138+ 'every' => 30 ,
139+ 'class' => 'SomeIvarJob' ,
140+ 'args' => '/tmp'
141+ )
142+
143+ assert_equal ( 1 , Resque ::Scheduler . rufus_scheduler . jobs . size )
144+ assert_equal ( 1 , Resque ::Scheduler . scheduled_jobs . size )
145+ assert Resque ::Scheduler . scheduled_jobs . keys . include? ( 'some_ivar_job' )
146+ end
147+
135148 test 'load_schedule_job with cron with options' do
136149 Resque ::Scheduler . load_schedule_job (
137150 'some_ivar_job' ,
You can’t perform that action at this time.
0 commit comments