rufus-scheduler 3.0.0 → 3.0.9

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.
@@ -20,26 +20,33 @@ describe Rufus::Scheduler do
20
20
  t[:name] == "rufus_scheduler_#{scheduler.object_id}_scheduler"
21
21
  }
22
22
 
23
- t[:rufus_scheduler].should == scheduler
23
+ expect(t[:rufus_scheduler]).to eq(scheduler)
24
24
  end
25
25
 
26
- it 'sets a :rufus_scheduler thread local var' do
26
+ it 'sets :name and :rufus_scheduler in the scheduler thread local vars' do
27
27
 
28
28
  scheduler = Rufus::Scheduler.new
29
+
30
+ expect(scheduler.thread[:name]).to eq(
31
+ "rufus_scheduler_#{scheduler.object_id}_scheduler"
32
+ )
33
+ expect(scheduler.thread[:rufus_scheduler]).to eq(
34
+ scheduler
35
+ )
29
36
  end
30
37
 
31
38
  it 'accepts a :frequency => integer option' do
32
39
 
33
40
  scheduler = Rufus::Scheduler.new(:frequency => 2)
34
41
 
35
- scheduler.frequency.should == 2
42
+ expect(scheduler.frequency).to eq(2)
36
43
  end
37
44
 
38
45
  it 'accepts a :frequency => "2h1m" option' do
39
46
 
40
47
  scheduler = Rufus::Scheduler.new(:frequency => '2h1m')
41
48
 
42
- scheduler.frequency.should == 3600 * 2 + 60
49
+ expect(scheduler.frequency).to eq(3600 * 2 + 60)
43
50
  end
44
51
 
45
52
  it 'accepts a :thread_name option' do
@@ -48,7 +55,7 @@ describe Rufus::Scheduler do
48
55
 
49
56
  t = Thread.list.find { |t| t[:name] == 'oliphant' }
50
57
 
51
- t[:rufus_scheduler].should == scheduler
58
+ expect(t[:rufus_scheduler]).to eq(scheduler)
52
59
  end
53
60
 
54
61
  #it 'accepts a :min_work_threads option' do
@@ -60,7 +67,7 @@ describe Rufus::Scheduler do
60
67
 
61
68
  scheduler = Rufus::Scheduler.new(:max_work_threads => 9)
62
69
 
63
- scheduler.max_work_threads.should == 9
70
+ expect(scheduler.max_work_threads).to eq(9)
64
71
  end
65
72
  end
66
73
 
@@ -80,7 +87,7 @@ describe Rufus::Scheduler do
80
87
 
81
88
  sleep 0.4
82
89
 
83
- j.should == job
90
+ expect(j).to eq(job)
84
91
  end
85
92
 
86
93
  it 'passes the trigger time as second block argument' do
@@ -90,7 +97,7 @@ describe Rufus::Scheduler do
90
97
 
91
98
  sleep 0.4
92
99
 
93
- t.class.should == Time
100
+ expect(t.class).to eq(Time)
94
101
  end
95
102
 
96
103
  class MyHandler
@@ -111,7 +118,7 @@ describe Rufus::Scheduler do
111
118
 
112
119
  sleep 0.4
113
120
 
114
- mh.counter.should == 1
121
+ expect(mh.counter).to eq(1)
115
122
  end
116
123
 
117
124
  class MyOtherHandler
@@ -130,7 +137,7 @@ describe Rufus::Scheduler do
130
137
 
131
138
  sleep 0.4
132
139
 
133
- job.handler.counter.should == 1
140
+ expect(job.handler.counter).to eq(1)
134
141
  end
135
142
 
136
143
  it 'accepts a class as callable' do
@@ -145,16 +152,16 @@ describe Rufus::Scheduler do
145
152
 
146
153
  sleep 0.4
147
154
 
148
- job.handler.value.should == 7
155
+ expect(job.handler.value).to eq(7)
149
156
  end
150
157
 
151
158
  it 'raises if the scheduler is shutting down' do
152
159
 
153
160
  @scheduler.shutdown
154
161
 
155
- lambda {
162
+ expect {
156
163
  @scheduler.in('0s') { puts 'hhhhhhhhhhhello!!' }
157
- }.should raise_error(RuntimeError)
164
+ }.to raise_error(Rufus::Scheduler::NotRunningError)
158
165
  end
159
166
  end
160
167
 
@@ -191,23 +198,23 @@ describe Rufus::Scheduler do
191
198
 
192
199
  j = @scheduler.schedule '1s' do; end
193
200
 
194
- j.class.should == Rufus::Scheduler::InJob
195
- j.original.should == '1s'
201
+ expect(j.class).to eq(Rufus::Scheduler::InJob)
202
+ expect(j.original).to eq('1s')
196
203
  end
197
204
 
198
205
  it 'accepts a point in time and schedules an AtJob' do
199
206
 
200
207
  j = @scheduler.schedule '2070/12/24 23:00' do; end
201
208
 
202
- j.class.should == Rufus::Scheduler::AtJob
203
- j.next_time.strftime('%Y %m %d').should == '2070 12 24'
209
+ expect(j.class).to eq(Rufus::Scheduler::AtJob)
210
+ expect(j.next_time.strftime('%Y %m %d')).to eq('2070 12 24')
204
211
  end
205
212
 
206
213
  it 'accepts a cron string and schedules a CronJob' do
207
214
 
208
215
  j = @scheduler.schedule '* * * * *' do; end
209
216
 
210
- j.class.should == Rufus::Scheduler::CronJob
217
+ expect(j.class).to eq(Rufus::Scheduler::CronJob)
211
218
  end
212
219
  end
213
220
 
@@ -217,14 +224,14 @@ describe Rufus::Scheduler do
217
224
 
218
225
  j = @scheduler.repeat '1s' do; end
219
226
 
220
- j.class.should == Rufus::Scheduler::EveryJob
227
+ expect(j.class).to eq(Rufus::Scheduler::EveryJob)
221
228
  end
222
229
 
223
230
  it 'accepts a cron string and schedules a CronJob' do
224
231
 
225
232
  j = @scheduler.repeat '* * * * *' do; end
226
233
 
227
- j.class.should == Rufus::Scheduler::CronJob
234
+ expect(j.class).to eq(Rufus::Scheduler::CronJob)
228
235
  end
229
236
  end
230
237
 
@@ -234,22 +241,22 @@ describe Rufus::Scheduler do
234
241
 
235
242
  job = @scheduler.schedule_in '10d' do; end
236
243
 
237
- job.unscheduled_at.should == nil
244
+ expect(job.unscheduled_at).to eq(nil)
238
245
 
239
246
  @scheduler.unschedule(job.id)
240
247
 
241
- job.unscheduled_at.should_not == nil
248
+ expect(job.unscheduled_at).not_to eq(nil)
242
249
  end
243
250
 
244
251
  it 'accepts jobs' do
245
252
 
246
253
  job = @scheduler.schedule_in '10d' do; end
247
254
 
248
- job.unscheduled_at.should == nil
255
+ expect(job.unscheduled_at).to eq(nil)
249
256
 
250
257
  @scheduler.unschedule(job)
251
258
 
252
- job.unscheduled_at.should_not == nil
259
+ expect(job.unscheduled_at).not_to eq(nil)
253
260
  end
254
261
 
255
262
  it 'carefully unschedules repeat jobs' do
@@ -267,7 +274,7 @@ describe Rufus::Scheduler do
267
274
  @scheduler.unschedule(job)
268
275
 
269
276
  sleep 1.5
270
- counter.should == c
277
+ expect(counter).to eq(c)
271
278
  end
272
279
  end
273
280
 
@@ -275,7 +282,7 @@ describe Rufus::Scheduler do
275
282
 
276
283
  it 'returns the uptime as a float' do
277
284
 
278
- @scheduler.uptime.should >= 0.0
285
+ expect(@scheduler.uptime).to be >= 0.0
279
286
  end
280
287
  end
281
288
 
@@ -285,7 +292,7 @@ describe Rufus::Scheduler do
285
292
 
286
293
  sleep 1
287
294
 
288
- @scheduler.uptime_s.should match(/^[12]s\d+$/)
295
+ expect(@scheduler.uptime_s).to match(/^[12]s\d+$/)
289
296
  end
290
297
  end
291
298
 
@@ -295,13 +302,13 @@ describe Rufus::Scheduler do
295
302
 
296
303
  t = Thread.new { @scheduler.join; Thread.current['a'] = 'over' }
297
304
 
298
- t['a'].should == nil
305
+ expect(t['a']).to eq(nil)
299
306
 
300
307
  @scheduler.shutdown
301
308
 
302
309
  sleep(1)
303
310
 
304
- t['a'].should == 'over'
311
+ expect(t['a']).to eq('over')
305
312
  end
306
313
  end
307
314
 
@@ -309,7 +316,7 @@ describe Rufus::Scheduler do
309
316
 
310
317
  it 'returns nil if there is no corresponding Job instance' do
311
318
 
312
- @scheduler.job('nada').should == nil
319
+ expect(@scheduler.job('nada')).to eq(nil)
313
320
  end
314
321
 
315
322
  it 'returns the corresponding Job instance' do
@@ -318,7 +325,7 @@ describe Rufus::Scheduler do
318
325
 
319
326
  sleep(1) # give it some time to get scheduled
320
327
 
321
- @scheduler.job(job_id).job_id.should == job_id
328
+ expect(@scheduler.job(job_id).job_id).to eq(job_id)
322
329
  end
323
330
  end
324
331
 
@@ -348,7 +355,7 @@ describe Rufus::Scheduler do
348
355
 
349
356
  it 'just lists the main thread (scheduler thread) when no job is scheduled' do
350
357
 
351
- @scheduler.threads.should == [ @scheduler.thread ]
358
+ expect(@scheduler.threads).to eq([ @scheduler.thread ])
352
359
  end
353
360
 
354
361
  it 'lists all the threads a scheduler uses' do
@@ -359,51 +366,39 @@ describe Rufus::Scheduler do
359
366
 
360
367
  sleep 0.4
361
368
 
362
- @scheduler.threads.size.should == 2
369
+ expect(@scheduler.threads.size).to eq(2)
363
370
  end
364
371
  end
365
372
 
366
- describe '#work_threads(:all)' do
373
+ describe '#work_threads(:all | :vacant)' do
367
374
 
368
375
  it 'returns an empty array when the scheduler has not yet done anything' do
369
376
 
370
- @scheduler.work_threads.should == []
377
+ expect(@scheduler.work_threads).to eq([])
378
+ expect(@scheduler.work_threads(:all)).to eq([])
379
+ expect(@scheduler.work_threads(:vacant)).to eq([])
371
380
  end
372
381
 
373
- it 'lists all the work threads in the pool' do
382
+ it 'lists the [vacant] work threads in the pool' do
374
383
 
375
384
  @scheduler.in '0s' do
376
- # nada
385
+ sleep(0.2)
377
386
  end
378
387
  @scheduler.in '0s' do
379
- sleep(2)
388
+ sleep(2.0)
380
389
  end
381
390
 
382
- sleep 0.6
383
-
384
- @scheduler.work_threads.size.should == 2
385
- end
386
- end
387
-
388
- describe '#work_threads(:vacant)' do
389
-
390
- it 'returns an empty array when the scheduler has not yet done anything' do
391
-
392
- @scheduler.work_threads(:vacant).should == []
393
- end
394
-
395
- it 'lists all the work threads in the pool' do
391
+ sleep 0.7
396
392
 
397
- @scheduler.in '0s' do
398
- # nada
399
- end
400
- @scheduler.in '0s' do
401
- sleep(2)
393
+ if @scheduler.work_threads.size == 1
394
+ expect(@scheduler.work_threads.size).to eq(1)
395
+ expect(@scheduler.work_threads(:all).size).to eq(1)
396
+ expect(@scheduler.work_threads(:vacant).size).to eq(0)
397
+ else
398
+ expect(@scheduler.work_threads.size).to eq(2)
399
+ expect(@scheduler.work_threads(:all).size).to eq(2)
400
+ expect(@scheduler.work_threads(:vacant).size).to eq(1)
402
401
  end
403
-
404
- sleep 0.4
405
-
406
- @scheduler.work_threads(:vacant).size.should == 1
407
402
  end
408
403
  end
409
404
 
@@ -411,7 +406,7 @@ describe Rufus::Scheduler do
411
406
 
412
407
  it 'returns [] when there are no jobs running' do
413
408
 
414
- @scheduler.work_threads(:active).should == []
409
+ expect(@scheduler.work_threads(:active)).to eq([])
415
410
  end
416
411
 
417
412
  it 'returns the list of threads of the running jobs' do
@@ -423,14 +418,14 @@ describe Rufus::Scheduler do
423
418
 
424
419
  sleep 0.4
425
420
 
426
- @scheduler.work_threads(:active).size.should == 1
421
+ expect(@scheduler.work_threads(:active).size).to eq(1)
427
422
 
428
423
  t = @scheduler.work_threads(:active).first
429
424
 
430
- t.class.should == Thread
431
- t[@scheduler.thread_key].should == true
432
- t[:rufus_scheduler_job].should == job
433
- t[:rufus_scheduler_time].should_not == nil
425
+ expect(t.class).to eq(Thread)
426
+ expect(t[@scheduler.thread_key]).to eq(true)
427
+ expect(t[:rufus_scheduler_job]).to eq(job)
428
+ expect(t[:rufus_scheduler_time]).not_to eq(nil)
434
429
  end
435
430
 
436
431
  it 'does not return threads from other schedulers' do
@@ -444,7 +439,7 @@ describe Rufus::Scheduler do
444
439
 
445
440
  sleep 0.4
446
441
 
447
- scheduler.work_threads(:active).should == []
442
+ expect(scheduler.work_threads(:active)).to eq([])
448
443
 
449
444
  scheduler.shutdown
450
445
  end
@@ -452,7 +447,7 @@ describe Rufus::Scheduler do
452
447
 
453
448
  #describe '#min_work_threads' do
454
449
  # it 'returns the min job thread count' do
455
- # @scheduler.min_work_threads.should == 7
450
+ # @scheduler.min_work_threads.should == 3
456
451
  # end
457
452
  #end
458
453
  #describe '#min_work_threads=' do
@@ -466,7 +461,7 @@ describe Rufus::Scheduler do
466
461
 
467
462
  it 'returns the max job thread count' do
468
463
 
469
- @scheduler.max_work_threads.should == 35
464
+ expect(@scheduler.max_work_threads).to eq(28)
470
465
  end
471
466
  end
472
467
 
@@ -476,7 +471,7 @@ describe Rufus::Scheduler do
476
471
 
477
472
  @scheduler.max_work_threads = 14
478
473
 
479
- @scheduler.max_work_threads.should == 14
474
+ expect(@scheduler.max_work_threads).to eq(14)
480
475
  end
481
476
  end
482
477
 
@@ -504,7 +499,7 @@ describe Rufus::Scheduler do
504
499
 
505
500
  it 'returns [] when there are no running jobs' do
506
501
 
507
- @scheduler.running_jobs.should == []
502
+ expect(@scheduler.running_jobs).to eq([])
508
503
  end
509
504
 
510
505
  it 'returns a list of running Job instances' do
@@ -516,8 +511,8 @@ describe Rufus::Scheduler do
516
511
 
517
512
  sleep 0.4
518
513
 
519
- job.running?.should == true
520
- @scheduler.running_jobs.should == [ job ]
514
+ expect(job.running?).to eq(true)
515
+ expect(@scheduler.running_jobs).to eq([ job ])
521
516
  end
522
517
 
523
518
  it 'does not return twice the same job' do
@@ -529,8 +524,8 @@ describe Rufus::Scheduler do
529
524
 
530
525
  sleep 1.5
531
526
 
532
- job.running?.should == true
533
- @scheduler.running_jobs.should == [ job ]
527
+ expect(job.running?).to eq(true)
528
+ expect(@scheduler.running_jobs).to eq([ job ])
534
529
  end
535
530
  end
536
531
 
@@ -545,14 +540,87 @@ describe Rufus::Scheduler do
545
540
  sleep 3
546
541
  end
547
542
 
548
- sleep 0.4
543
+ sleep 0.49
549
544
 
550
- @scheduler.running_jobs(:tag => 't0').map(&:original).should ==
545
+ expect(@scheduler.running_jobs(:tag => 't0').map(&:original)).to eq(
551
546
  %w[ 0.1s ]
552
- @scheduler.running_jobs(:tag => 't1').map(&:original).should ==
547
+ )
548
+ expect(@scheduler.running_jobs(:tag => 't1').map(&:original)).to eq(
553
549
  %w[ 0.2s ]
554
- @scheduler.running_jobs(:tags => %w[ t0 t1 ]).map(&:original).should ==
550
+ )
551
+ expect(@scheduler.running_jobs(:tags => %w[ t0 t1 ]).map(&:original)).to eq(
555
552
  []
553
+ )
554
+ end
555
+ end
556
+
557
+ describe '#occurrences(time0, time1)' do
558
+
559
+ it 'returns a { job => [ times ] } of job occurrences' do
560
+
561
+ j0 = @scheduler.schedule_in '7m' do; end
562
+ j1 = @scheduler.schedule_at '10m' do; end
563
+ j2 = @scheduler.schedule_every '5m' do; end
564
+ j3 = @scheduler.schedule_interval '5m' do; end
565
+ j4 = @scheduler.schedule_cron '* * * * *' do; end
566
+
567
+ h = @scheduler.occurrences(Time.now + 4 * 60, Time.now + 11 * 60)
568
+
569
+ expect(h.size).to eq(5)
570
+ expect(h[j0]).to eq([ j0.next_time ])
571
+ expect(h[j1]).to eq([ j1.next_time ])
572
+ expect(h[j2].size).to eq(2)
573
+ expect(h[j3].size).to eq(2)
574
+ expect(h[j4].size).to eq(7)
575
+ end
576
+
577
+ it 'returns a [ [ time, job ], ... ] of job occurrences when :timeline' do
578
+
579
+ j0 = @scheduler.schedule_in '5m' do; end
580
+ j1 = @scheduler.schedule_in '10m' do; end
581
+
582
+ a =
583
+ @scheduler.occurrences(Time.now + 4 * 60, Time.now + 11 * 60, :timeline)
584
+
585
+ expect(a[0][0]).to be_within_1s_of(Time.now + 5 * 60)
586
+ expect(a[0][1]).to eq(j0)
587
+ expect(a[1][0]).to be_within_1s_of(Time.now + 10 * 60)
588
+ expect(a[1][1]).to eq(j1)
589
+ end
590
+
591
+ it 'respects :first_at for repeat jobs' do
592
+
593
+ j0 = @scheduler.schedule_every '5m', :first_in => '10m' do; end
594
+
595
+ h = @scheduler.occurrences(Time.now + 4 * 60, Time.now + 16 * 60)
596
+
597
+ expect(h[j0][0]).to be_within_1s_of(Time.now + 10 * 60)
598
+ expect(h[j0][1]).to be_within_1s_of(Time.now + 15 * 60)
599
+ end
600
+
601
+ it 'respects :times for repeat jobs' do
602
+
603
+ j0 = @scheduler.schedule_every '1m', :times => 10 do; end
604
+
605
+ h = @scheduler.occurrences(Time.now + 4 * 60, Time.now + 16 * 60)
606
+
607
+ expect(h[j0].size).to eq(6)
608
+ end
609
+ end
610
+
611
+ describe '#timeline(time0, time1)' do
612
+
613
+ it 'returns a [ [ time, job ], ... ] of job occurrences' do
614
+
615
+ j0 = @scheduler.schedule_in '5m' do; end
616
+ j1 = @scheduler.schedule_in '10m' do; end
617
+
618
+ a = @scheduler.timeline(Time.now + 4 * 60, Time.now + 11 * 60)
619
+
620
+ expect(a[0][0]).to be_within_1s_of(Time.now + 5 * 60)
621
+ expect(a[0][1]).to eq(j0)
622
+ expect(a[1][0]).to be_within_1s_of(Time.now + 10 * 60)
623
+ expect(a[1][1]).to eq(j1)
556
624
  end
557
625
  end
558
626
 
@@ -566,7 +634,7 @@ describe Rufus::Scheduler do
566
634
 
567
635
  @scheduler.shutdown
568
636
 
569
- @scheduler.uptime.should == nil
637
+ expect(@scheduler.uptime).to eq(nil)
570
638
  end
571
639
 
572
640
  it 'shuts the scheduler down' do
@@ -580,14 +648,14 @@ describe Rufus::Scheduler do
580
648
  t[:name] == "rufus_scheduler_#{@scheduler.object_id}"
581
649
  }
582
650
 
583
- t.should == nil
651
+ expect(t).to eq(nil)
584
652
  end
585
653
 
586
654
  it 'has a #stop alias' do
587
655
 
588
656
  @scheduler.stop
589
657
 
590
- @scheduler.uptime.should == nil
658
+ expect(@scheduler.uptime).to eq(nil)
591
659
  end
592
660
 
593
661
  #it 'has a #close alias'
@@ -608,10 +676,10 @@ describe Rufus::Scheduler do
608
676
 
609
677
  @scheduler.shutdown(:wait)
610
678
 
611
- counter.should == 1
612
- @scheduler.uptime.should == nil
613
- @scheduler.running_jobs.should == []
614
- @scheduler.threads.should == []
679
+ expect(counter).to eq(1)
680
+ expect(@scheduler.uptime).to eq(nil)
681
+ expect(@scheduler.running_jobs).to eq([])
682
+ expect(@scheduler.threads).to eq([])
615
683
  end
616
684
  end
617
685
 
@@ -636,10 +704,10 @@ describe Rufus::Scheduler do
636
704
 
637
705
  sleep 1.4
638
706
 
639
- counter.should == 0
640
- @scheduler.uptime.should == nil
641
- @scheduler.running_jobs.should == []
642
- @scheduler.threads.should == []
707
+ expect(counter).to eq(0)
708
+ expect(@scheduler.uptime).to eq(nil)
709
+ expect(@scheduler.running_jobs).to eq([])
710
+ expect(@scheduler.threads).to eq([])
643
711
  end
644
712
  end
645
713
 
@@ -653,7 +721,7 @@ describe Rufus::Scheduler do
653
721
 
654
722
  sleep(3)
655
723
 
656
- job.last_time.should == nil
724
+ expect(job.last_time).to eq(nil)
657
725
  end
658
726
  end
659
727
 
@@ -668,7 +736,7 @@ describe Rufus::Scheduler do
668
736
  @scheduler.resume
669
737
  sleep(2)
670
738
 
671
- job.last_time.should_not == nil
739
+ expect(job.last_time).not_to eq(nil)
672
740
  end
673
741
  end
674
742
 
@@ -677,17 +745,40 @@ describe Rufus::Scheduler do
677
745
  it 'returns true if the scheduler is paused' do
678
746
 
679
747
  @scheduler.pause
680
- @scheduler.paused?.should == true
748
+ expect(@scheduler.paused?).to eq(true)
681
749
  end
682
750
 
683
751
  it 'returns false if the scheduler is not paused' do
684
752
 
685
- @scheduler.paused?.should == false
753
+ expect(@scheduler.paused?).to eq(false)
686
754
 
687
755
  @scheduler.pause
688
756
  @scheduler.resume
689
757
 
690
- @scheduler.paused?.should == false
758
+ expect(@scheduler.paused?).to eq(false)
759
+ end
760
+ end
761
+
762
+ describe '#down?' do
763
+
764
+ it 'returns true when the scheduler is down' do
765
+
766
+ @scheduler.shutdown
767
+
768
+ expect(@scheduler.down?).to eq(true)
769
+ end
770
+
771
+ it 'returns false when the scheduler is up' do
772
+
773
+ expect(@scheduler.down?).to eq(false)
774
+ end
775
+ end
776
+
777
+ describe '#up?' do
778
+
779
+ it 'returns true when the scheduler is up' do
780
+
781
+ expect(@scheduler.up?).to eq(true)
691
782
  end
692
783
  end
693
784
 
@@ -699,7 +790,7 @@ describe Rufus::Scheduler do
699
790
 
700
791
  it 'is empty at the beginning' do
701
792
 
702
- @scheduler.jobs.should == []
793
+ expect(@scheduler.jobs).to eq([])
703
794
  end
704
795
 
705
796
  it 'returns the list of scheduled jobs' do
@@ -711,7 +802,7 @@ describe Rufus::Scheduler do
711
802
 
712
803
  jobs = @scheduler.jobs
713
804
 
714
- jobs.collect { |j| j.original }.sort.should == %w[ 10d 1w ]
805
+ expect(jobs.collect { |j| j.original }.sort).to eq(%w[ 10d 1w ])
715
806
  end
716
807
 
717
808
  it 'returns all the jobs (even those pending reschedule)' do
@@ -722,7 +813,7 @@ describe Rufus::Scheduler do
722
813
 
723
814
  sleep 0.4
724
815
 
725
- @scheduler.jobs.size.should == 1
816
+ expect(@scheduler.jobs.size).to eq(1)
726
817
  end
727
818
 
728
819
  it 'does not return unscheduled jobs' do
@@ -736,7 +827,7 @@ describe Rufus::Scheduler do
736
827
 
737
828
  job.unschedule
738
829
 
739
- @scheduler.jobs.size.should == 0
830
+ expect(@scheduler.jobs.size).to eq(0)
740
831
  end
741
832
  end
742
833
 
@@ -744,8 +835,8 @@ describe Rufus::Scheduler do
744
835
 
745
836
  it 'returns [] when there are no jobs with the corresponding tag' do
746
837
 
747
- @scheduler.jobs(:tag => 'nada').should == []
748
- @scheduler.jobs(:tags => %w[ nada hello ]).should == []
838
+ expect(@scheduler.jobs(:tag => 'nada')).to eq([])
839
+ expect(@scheduler.jobs(:tags => %w[ nada hello ])).to eq([])
749
840
  end
750
841
 
751
842
  it 'returns the jobs with the corresponding tag' do
@@ -754,12 +845,15 @@ describe Rufus::Scheduler do
754
845
  @scheduler.every '2h', :tag => %w[ t0 t1 ] do; end
755
846
  @scheduler.every '3h' do; end
756
847
 
757
- @scheduler.jobs(:tags => 't0').map(&:original).sort.should ==
848
+ expect(@scheduler.jobs(:tags => 't0').map(&:original).sort).to eq(
758
849
  %w[ 10d 2h ]
759
- @scheduler.jobs(:tags => 't1').map(&:original).sort.should ==
850
+ )
851
+ expect(@scheduler.jobs(:tags => 't1').map(&:original).sort).to eq(
760
852
  %w[ 2h ]
761
- @scheduler.jobs(:tags => [ 't1', 't0' ]).map(&:original).sort.should ==
853
+ )
854
+ expect(@scheduler.jobs(:tags => [ 't1', 't0' ]).map(&:original).sort).to eq(
762
855
  %w[ 2h ]
856
+ )
763
857
  end
764
858
  end
765
859
 
@@ -773,7 +867,7 @@ describe Rufus::Scheduler do
773
867
 
774
868
  jobs = @scheduler.every_jobs
775
869
 
776
- jobs.collect { |j| j.original }.sort.should == %w[ 5m ]
870
+ expect(jobs.collect { |j| j.original }.sort).to eq(%w[ 5m ])
777
871
  end
778
872
  end
779
873
 
@@ -787,7 +881,7 @@ describe Rufus::Scheduler do
787
881
 
788
882
  jobs = @scheduler.at_jobs
789
883
 
790
- jobs.collect { |j| j.original }.sort.should == [ '2030/12/12 12:10:00' ]
884
+ expect(jobs.collect { |j| j.original }.sort).to eq([ '2030/12/12 12:10:00' ])
791
885
  end
792
886
  end
793
887
 
@@ -801,7 +895,7 @@ describe Rufus::Scheduler do
801
895
 
802
896
  jobs = @scheduler.in_jobs
803
897
 
804
- jobs.collect { |j| j.original }.sort.should == %w[ 10d ]
898
+ expect(jobs.collect { |j| j.original }.sort).to eq(%w[ 10d ])
805
899
  end
806
900
  end
807
901
 
@@ -816,7 +910,7 @@ describe Rufus::Scheduler do
816
910
 
817
911
  jobs = @scheduler.cron_jobs
818
912
 
819
- jobs.collect { |j| j.original }.sort.should == [ '* * * * *' ]
913
+ expect(jobs.collect { |j| j.original }.sort).to eq([ '* * * * *' ])
820
914
  end
821
915
  end
822
916
 
@@ -832,7 +926,7 @@ describe Rufus::Scheduler do
832
926
 
833
927
  jobs = @scheduler.interval_jobs
834
928
 
835
- jobs.collect { |j| j.original }.sort.should == %w[ 7m ]
929
+ expect(jobs.collect { |j| j.original }.sort).to eq(%w[ 7m ])
836
930
  end
837
931
  end
838
932
 
@@ -857,7 +951,7 @@ describe Rufus::Scheduler do
857
951
 
858
952
  sleep 0.7
859
953
 
860
- $out.should == [ "pre #{job_id}", job_id ]
954
+ expect($out).to eq([ "pre #{job_id}", job_id ])
861
955
  end
862
956
 
863
957
  it 'accepts the job and the triggerTime as argument' do
@@ -874,9 +968,9 @@ describe Rufus::Scheduler do
874
968
 
875
969
  sleep 0.7
876
970
 
877
- $tt.class.should == Time
878
- $tt.should > start
879
- $tt.should < Time.now
971
+ expect($tt.class).to eq(Time)
972
+ expect($tt).to be > start
973
+ expect($tt).to be < Time.now
880
974
  end
881
975
 
882
976
  context 'when it returns false' do
@@ -897,7 +991,7 @@ describe Rufus::Scheduler do
897
991
 
898
992
  sleep 0.7
899
993
 
900
- $out.should == [ "pre #{job_id}" ]
994
+ expect($out).to eq([ "pre #{job_id}" ])
901
995
  end
902
996
  end
903
997
  end
@@ -919,7 +1013,7 @@ describe Rufus::Scheduler do
919
1013
 
920
1014
  sleep 0.7
921
1015
 
922
- $out.should == [ job_id, "post #{job_id}" ]
1016
+ expect($out).to eq([ job_id, "post #{job_id}" ])
923
1017
  end
924
1018
  end
925
1019
 
@@ -939,8 +1033,8 @@ describe Rufus::Scheduler do
939
1033
  s0 = Rufus::Scheduler.singleton
940
1034
  s1 = Rufus::Scheduler.s
941
1035
 
942
- s0.class.should == Rufus::Scheduler
943
- s1.object_id.should == s0.object_id
1036
+ expect(s0.class).to eq(Rufus::Scheduler)
1037
+ expect(s1.object_id).to eq(s0.object_id)
944
1038
  end
945
1039
 
946
1040
  it 'accepts initialization parameters' do
@@ -948,7 +1042,7 @@ describe Rufus::Scheduler do
948
1042
  s = Rufus::Scheduler.singleton(:max_work_threads => 77)
949
1043
  s = Rufus::Scheduler.singleton(:max_work_threads => 42)
950
1044
 
951
- s.max_work_threads.should == 77
1045
+ expect(s.max_work_threads).to eq(77)
952
1046
  end
953
1047
  end
954
1048
  end