test/scheduler_test.rb in resque-scheduler-3.1.0 vs test/scheduler_test.rb in resque-scheduler-4.0.0
- old
+ new
@@ -54,22 +54,22 @@
Resque.expects(:enqueue_to).with('high', SomeIvarJob)
Resque::Scheduler.enqueue_from_config(config)
end
test 'config makes it into the rufus_scheduler' do
- assert_equal(0, Resque::Scheduler.rufus_scheduler.all_jobs.size)
+ assert_equal(0, Resque::Scheduler.rufus_scheduler.jobs.size)
Resque.schedule = {
some_ivar_job: {
'cron' => '* * * * *',
'class' => 'SomeIvarJob',
'args' => '/tmp'
}
}
Resque::Scheduler.load_schedule!
- assert_equal(1, Resque::Scheduler.rufus_scheduler.all_jobs.size)
+ assert_equal(1, Resque::Scheduler.rufus_scheduler.jobs.size)
assert Resque::Scheduler.scheduled_jobs.include?('some_ivar_job')
end
test 'can reload schedule' do
Resque::Scheduler.dynamic = true
@@ -81,21 +81,21 @@
}
}
Resque::Scheduler.load_schedule!
- assert_equal(1, Resque::Scheduler.rufus_scheduler.all_jobs.size)
+ assert_equal(1, Resque::Scheduler.rufus_scheduler.jobs.size)
assert Resque::Scheduler.scheduled_jobs.include?('some_ivar_job')
Resque.redis.del(:schedules)
Resque.redis.hset(:schedules, 'some_ivar_job2', Resque.encode(
'cron' => '* * * * *', 'class' => 'SomeIvarJob', 'args' => '/tmp/2'
))
Resque::Scheduler.reload_schedule!
- assert_equal(1, Resque::Scheduler.rufus_scheduler.all_jobs.size)
+ assert_equal(1, Resque::Scheduler.rufus_scheduler.jobs.size)
assert_equal '/tmp/2', Resque.schedule['some_ivar_job2']['args']
assert Resque::Scheduler.scheduled_jobs.include?('some_ivar_job2')
end
@@ -105,11 +105,11 @@
'cron' => '* * * * *',
'class' => 'SomeIvarJob',
'args' => '/tmp'
)
- assert_equal(1, Resque::Scheduler.rufus_scheduler.all_jobs.size)
+ assert_equal(1, Resque::Scheduler.rufus_scheduler.jobs.size)
assert_equal(1, Resque::Scheduler.scheduled_jobs.size)
assert Resque::Scheduler.scheduled_jobs.keys.include?('some_ivar_job')
end
test 'load_schedule_job with every with options' do
@@ -118,40 +118,40 @@
'every' => ['30s', { 'first_in' => '60s' }],
'class' => 'SomeIvarJob',
'args' => '/tmp'
)
- assert_equal(1, Resque::Scheduler.rufus_scheduler.all_jobs.size)
+ assert_equal(1, Resque::Scheduler.rufus_scheduler.jobs.size)
assert_equal(1, Resque::Scheduler.scheduled_jobs.size)
assert Resque::Scheduler.scheduled_jobs.keys.include?('some_ivar_job')
job = Resque::Scheduler.scheduled_jobs['some_ivar_job']
- assert job.params.keys.include?(:first_in)
+ assert job.opts.keys.include?(:first_in)
end
test 'load_schedule_job with cron with options' do
Resque::Scheduler.load_schedule_job(
'some_ivar_job',
'cron' => ['* * * * *', { 'allow_overlapping' => 'true' }],
'class' => 'SomeIvarJob',
'args' => '/tmp'
)
- assert_equal(1, Resque::Scheduler.rufus_scheduler.all_jobs.size)
+ assert_equal(1, Resque::Scheduler.rufus_scheduler.jobs.size)
assert_equal(1, Resque::Scheduler.scheduled_jobs.size)
assert Resque::Scheduler.scheduled_jobs.keys.include?('some_ivar_job')
job = Resque::Scheduler.scheduled_jobs['some_ivar_job']
- assert job.params.keys.include?(:allow_overlapping)
+ assert job.opts.keys.include?(:allow_overlapping)
end
test 'load_schedule_job without cron' do
Resque::Scheduler.load_schedule_job(
'some_ivar_job',
'class' => 'SomeIvarJob',
'args' => '/tmp'
)
- assert_equal(0, Resque::Scheduler.rufus_scheduler.all_jobs.size)
+ assert_equal(0, Resque::Scheduler.rufus_scheduler.jobs.size)
assert_equal(0, Resque::Scheduler.scheduled_jobs.size)
assert !Resque::Scheduler.scheduled_jobs.keys.include?('some_ivar_job')
end
test 'load_schedule_job with an empty cron' do
@@ -160,11 +160,11 @@
'cron' => '',
'class' => 'SomeIvarJob',
'args' => '/tmp'
)
- assert_equal(0, Resque::Scheduler.rufus_scheduler.all_jobs.size)
+ assert_equal(0, Resque::Scheduler.rufus_scheduler.jobs.size)
assert_equal(0, Resque::Scheduler.scheduled_jobs.size)
assert !Resque::Scheduler.scheduled_jobs.keys.include?('some_ivar_job')
end
test 'update_schedule' do
@@ -197,21 +197,41 @@
)
Resque.remove_schedule('another_ivar_job')
Resque::Scheduler.update_schedule
- assert_equal(3, Resque::Scheduler.rufus_scheduler.all_jobs.size)
+ assert_equal(3, Resque::Scheduler.rufus_scheduler.jobs.size)
assert_equal(3, Resque::Scheduler.scheduled_jobs.size)
%w(some_ivar_job new_ivar_job stay_put_job).each do |job_name|
assert Resque::Scheduler.scheduled_jobs.keys.include?(job_name)
assert Resque.schedule.keys.include?(job_name)
end
assert !Resque::Scheduler.scheduled_jobs.keys.include?('another_ivar_job')
assert !Resque.schedule.keys.include?('another_ivar_job')
assert_equal 0, Resque.redis.scard(:schedules_changed)
end
+ test 'update_schedule when all jobs have been removed' do
+ Resque::Scheduler.dynamic = true
+ Resque.schedule = {
+ 'some_ivar_job' => {
+ 'cron' => '* * * * *', 'class' => 'SomeIvarJob', 'args' => '/tmp'
+ }
+ }
+
+ Resque::Scheduler.load_schedule!
+
+ Resque.remove_schedule('some_ivar_job')
+
+ Resque::Scheduler.update_schedule
+
+ assert_equal(0, Resque::Scheduler.rufus_scheduler.jobs.size)
+ assert_equal(0, Resque::Scheduler.scheduled_jobs.size)
+ assert_equal([], Resque::Scheduler.scheduled_jobs.keys)
+ assert_equal 0, Resque.redis.scard(:schedules_changed)
+ end
+
test 'update_schedule with mocks' do
Resque::Scheduler.dynamic = true
Resque.schedule = {
'some_ivar_job' => {
'cron' => '* * * * *', 'class' => 'SomeIvarJob', 'args' => '/tmp'
@@ -269,11 +289,11 @@
)
end
background_delayed_update.join
Resque::Scheduler.update_schedule
- assert_equal(jobs_count, Resque::Scheduler.rufus_scheduler.all_jobs.size)
+ assert_equal(jobs_count, Resque::Scheduler.rufus_scheduler.jobs.size)
assert_equal(jobs_count, Resque::Scheduler.scheduled_jobs.size)
assert_equal 0, Resque.redis.scard(:schedules_changed)
end
test 'schedule= sets the schedule' do
@@ -433,10 +453,10 @@
Resque::Scheduler.expects(:log!).at_least_once
end
test 'prints schedule' do
fake_rufus_scheduler = mock
- fake_rufus_scheduler.expects(:all_jobs).at_least_once
+ fake_rufus_scheduler.expects(:jobs).at_least_once
.returns(foo: OpenStruct.new(t: nil, last: nil))
Resque::Scheduler.expects(:rufus_scheduler).at_least_once
.returns(fake_rufus_scheduler)
Resque::Scheduler.print_schedule
end