say_when 2.0.1 → 2.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c4aba1da4815544d6733948a2ee328978dbb8418
4
- data.tar.gz: 3f204ffeb70c5890d190630f1a048c60eba9e20f
3
+ metadata.gz: 659f1d92ff0ba2e4ca3c162ab36255868cfa4f1e
4
+ data.tar.gz: fd29bc29fbf787899ce18dcf91b165a684c205cc
5
5
  SHA512:
6
- metadata.gz: 630492044fb4b69bd19c94a018abb93f180d9147f09810339dcc54f08e08ceabbe2b3fe651b8c016af6912c8f50a0ce7eab8fdb3fa0d4d7e90790404c0005721
7
- data.tar.gz: 5f89922b266b75449e5bcc88c804e61672b19a7c730b837a1ba973a24efc3df75463105051e9f575116b90899a0b57a6fbb5b2a6b7839d2c22b907e0971c3064
6
+ metadata.gz: 1a7c57379229dc78237034625d3cbbb75089c35aef118976b0b2252e7d58a8a214c98f7018aa5584c868c8d74d34dbe46c9003c725d7a34502a67d2668d3e5f2
7
+ data.tar.gz: c31787d123c46fd1892291ed1d5f96d2859f8c76d7e7f18588d440c98b5fc55425243390348c7a614386177cefd43efe92658f163f6daf646856a63e35258cdc
@@ -46,12 +46,16 @@ module SayWhen
46
46
  end
47
47
 
48
48
  def job_options(job)
49
- {
49
+ opts = {
50
50
  scheduled: extract_scheduled(job),
51
51
  job_class: extract_job_class(job),
52
52
  job_method: extract_job_method(job),
53
53
  data: extract_data(job)
54
54
  }
55
+ unless opts[:scheduled] || opts[:job_class]
56
+ raise "No job class or scheduled option: #{job.inspect}\nopts: #{opts.inspect}"
57
+ end
58
+ opts
55
59
  end
56
60
 
57
61
  def extract_scheduled(job)
@@ -59,19 +63,13 @@ module SayWhen
59
63
  end
60
64
 
61
65
  def extract_job_class(job)
62
- job_class = if job.is_a?(Hash)
66
+ if job.is_a?(Hash)
63
67
  job[:class] || job[:job_class]
64
68
  elsif job.is_a?(Class)
65
69
  job.name
66
70
  elsif job.is_a?(String)
67
71
  job
68
72
  end
69
-
70
- if !job_class
71
- raise "Could not identify job class from: #{job}"
72
- end
73
-
74
- job_class
75
73
  end
76
74
 
77
75
  def extract_job_method(job)
@@ -1,5 +1,5 @@
1
1
  # encoding: utf-8
2
2
 
3
3
  module SayWhen
4
- VERSION = '2.0.1'
4
+ VERSION = '2.0.2'
5
5
  end
@@ -26,16 +26,16 @@ describe SayWhen::Scheduler do
26
26
  scheduler.extract_job_class(class: 'foo').must_equal 'foo'
27
27
  scheduler.extract_job_class(SayWhen::Test::TestTask).must_equal 'SayWhen::Test::TestTask'
28
28
  scheduler.extract_job_class('SayWhen::Test::TestTask').must_equal 'SayWhen::Test::TestTask'
29
-
30
- lambda do
31
- scheduler.extract_job_class(bar: 'foo')
32
- end.must_raise RuntimeError
33
29
  end
34
30
 
35
31
  it 'gets job options' do
36
32
  keys = [:job_class, :job_method, :data]
37
33
  opts = scheduler.job_options(keys.inject({}) { |s, k| s[k] = k.to_s; s } )
38
34
  keys.each{|k| opts[k].must_equal k.to_s }
35
+
36
+ lambda do
37
+ scheduler.job_options(bar: 'foo')
38
+ end.must_raise RuntimeError
39
39
  end
40
40
 
41
41
  it 'can schedule a new job' do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: say_when
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.1
4
+ version: 2.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew Kuklewicz