cron2english 0.1.4 → 0.1.5

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: b236d44027a4d50bf559893ebf8ae87cb0c4f248
4
- data.tar.gz: 5d2f02db75a40f95f3f95fe8b35d017e8e8d39c8
3
+ metadata.gz: 8a01772090289d43ea8107377b683a0060305a5f
4
+ data.tar.gz: bdc98b43514bc72d2d4344d28af64e267df367f2
5
5
  SHA512:
6
- metadata.gz: b900e08c5073587555f0aab42af39f053ec70e764ff582fc4149d895a11c3e50bf235348a52376e3a2f2899ac8be9a57dd4b31c5157045dda7a248e682d76c06
7
- data.tar.gz: a6e29b4551d6d3f21e9c7019ec2b9149724c020e89e5b06f899a4d60cce82d51374b8275a344c230cb2ff93fca00c7ee54c2a1439ecac972f4201df778ebcfe2
6
+ metadata.gz: a0d4fa4d5ac9e52c47cb270a0adb4c71ea2cf14cd54ddb14533b555f33ef5c57d55e620521928da88f2a8cb76d63aa035f19f844d11954739ea529c164660d67
7
+ data.tar.gz: 6e0806962bbaa505730ce4b8edeb14c6fba085a1416fa49989da2ae251337a03a399b91b402aa857c2a3551e5c8ffa036406a5aba4605e3ecb4cb9200f0e4748
@@ -11,6 +11,7 @@ module Cron2English
11
11
  DOW_REGEX = %r{^(#{DAYS_OF_WEEK.join("|")})$}i
12
12
  DOW_RANGE_REGEX = %r{^(#{DAYS_OF_WEEK.join("|")})-(#{DAYS_OF_WEEK.join("|")})$}i
13
13
  MONTH_REGEX = %r{^(#{MONTHS.join("|")}|)$}i
14
+ MONTH_RANGE_REGEX = %r{^(#{MONTHS.join("|")})-(#{MONTHS.join("|")})$}i
14
15
  NUM2MONTH_LONG = Hash[(1..12).zip(%w{January February March April May June July August September October November December})]
15
16
  NUM2DOW_LONG = %w{Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sunday}
16
17
  ATOM = '\d+|(?:\d+-\d+(?:/\d+)?)'
@@ -64,7 +65,11 @@ module Cron2English
64
65
  end
65
66
 
66
67
  def process_trad(m, h, day_of_month, month, dow)
67
- month = MONTH2NUM[$1.downcase] if month =~ MONTH_REGEX
68
+ if month =~ MONTH_REGEX
69
+ month = MONTH2NUM[$1.downcase]
70
+ elsif month =~ MONTH_RANGE_REGEX
71
+ month = [$1, $2].map{|x| MONTH2NUM[x.downcase]}.join('-')
72
+ end
68
73
  month = month.to_s if month
69
74
  if dow =~ DOW_REGEX
70
75
  dow = DOW2NUM[$1.downcase]
@@ -1,3 +1,3 @@
1
1
  module Cron2English
2
- VERSION = '0.1.4'
2
+ VERSION = '0.1.5'
3
3
  end
data/spec/parse_spec.rb CHANGED
@@ -10,6 +10,7 @@ describe Cron2English do
10
10
  ["50 6 * * 1", ["6:50am", "every Monday"]],
11
11
  ["1 2 * apr mOn", ["2:01am", "every Monday in", "April"]],
12
12
  ["1 2 * apr mon-fri", ["2:01am", "every Monday through Friday in", "April"]],
13
+ ["1 2 * apr-jun mOn", ["2:01am", "every Monday in", "from April to June"]],
13
14
  ["1 2 3 4 7", ["2:01am on", "the third of -- or every Sunday in --", "April"]],
14
15
  ["1-20/3 * * * *", ["every 3 minutes from 1 to 20 past", "every hour of", "every day"]],
15
16
  ["1,2,3 * * * *", ["1, 2, and 3 minutes past", "every hour of", "every day"]],
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cron2english
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Paul A. Jungwirth