us_bank_holidays 0.0.4 → 0.2.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: a4921197ea42b26e8e08bf2f4059f034c805e214
4
- data.tar.gz: d40a2bbb91cce5c533a7f0056e833ba9bf09ebfd
2
+ SHA256:
3
+ metadata.gz: 1f9ef1ece79b15a1e2431e7627d0bc36914e86fb0e76b39310551d4198c728d0
4
+ data.tar.gz: c27c824131609ffcb000915313d80778322f88ffbaef9ab52c8a8c0137db55fa
5
5
  SHA512:
6
- metadata.gz: b90aab66fb070972ce928c186233c2ca82066b371691b728cec75b8e4c94a7f9c6c5b09dd4e7bdad9dd37ff4c907f223b789c58acfb299801786801ba92945b7
7
- data.tar.gz: 4a944a80069321f13677993dc3a3ff4b386b8dc93c740d657f0b6aa012ae98c8679a5dbed74094b8e6e1f6a2689692cb7e832f60019ee86e1547b40db5759569
6
+ metadata.gz: bd9bc1def99590c5e5b706f2e0ccdc60c3e346b7c8f6e0d8900dd34462ff1e28dc1a362f13f33e8a911d8d8111a8f02b44fcbb7b14ff254a764b5349174571fc
7
+ data.tar.gz: d8324975d14a8ca035620bb572dfce8ac159ab18edc5d3540a91553ad48815acbd561313768405da41abd03379df06c32a8f585dcb942e35adb21483de13cee5
data/.travis.yml CHANGED
@@ -1,9 +1,9 @@
1
1
  language: ruby
2
2
  script: 'bundle exec rake spec'
3
3
  rvm:
4
- - 1.9.3
5
- - 2.0.0
6
- - 2.1.0
4
+ - 2.3
5
+ - 2.4
6
+ - 2.5
7
7
  - jruby
8
8
  - rbx
9
9
  matrix:
data/README.md CHANGED
@@ -4,6 +4,7 @@ https://github.com/albertosaurus/us_bank_holidays
4
4
 
5
5
  [![Build Status](https://travis-ci.org/albertosaurus/us_bank_holidays.png?branch=master)](https://travis-ci.org/albertosaurus/us_bank_holidays)
6
6
  [![Code Climate](https://codeclimate.com/github/albertosaurus/us_bank_holidays.png)](https://codeclimate.com/github/albertosaurus/us_bank_holidays)
7
+ [![Gem Version](https://badge.fury.io/rb/us_bank_holidays.png)](http://badge.fury.io/rb/us_bank_holidays)
7
8
 
8
9
  Patches `Date` to make working with US bank holidays easier
9
10
 
@@ -11,8 +12,8 @@ Patches `Date` to make working with US bank holidays easier
11
12
 
12
13
  Tested against the following Ruby runtimes:
13
14
 
14
- * MRI 1.9.3, 2.0.0, 2.1.0
15
- * JRuby 1.7+
15
+ * MRI 2.3, 2.4, 2.5
16
+ * JRuby 9
16
17
  * Rubinius (latest)
17
18
 
18
19
  ## Installation
@@ -45,11 +46,21 @@ date.bank_holiday? # Returns false
45
46
  date.weekend? # Returns false
46
47
  date.next_banking_day # Returns Monday, January 6, 2014
47
48
  date.banking_day? # Returns true
49
+ date.first_banking_day_of_month? # Returns false
50
+ date.last_banking_day_of_month? # Returns false
48
51
 
49
52
  Date.new(2014, 1, 16).add_banking_days(2) # Returns Tuesday, January 21, 2014
50
53
  Date.new(2014, 1, 5).previous_banking_day # Returns Friday, January 3, 2014
51
54
  ```
52
55
 
56
+ By default, weekends always count as bank holidays, but this can be disabled.
57
+
58
+ ```ruby
59
+ date = Date.new(2014, 2, 2) # Sunday, February 2, 2014
60
+ date.bank_holiday? # Returns true
61
+ date.bank_holiday?(false) # Returns false
62
+ ```
63
+
53
64
  ## Contributing
54
65
 
55
66
  1. Fork it
@@ -12,9 +12,16 @@ module UsBankHolidays
12
12
  end
13
13
 
14
14
  # Returns true if the given date is a bank holiday, false otherwise.
15
- def self.bank_holiday?(date)
16
- weekend?(date) ||
15
+ # Pass the optional 'include_weekends' to control whether weekends should count as
16
+ # bank holidays (default is true).
17
+ # If include_weekends is set to false but the date is a Federal bank holiday,
18
+ # returns true (Ex: 4th of July, 2015, Christmas Day 2016)
19
+ def self.bank_holiday?(date, include_weekends = true)
20
+ if include_weekends && weekend?(date)
21
+ true
22
+ else
17
23
  ::UsBankHolidays::HolidayYear.new(date.year).bank_holidays.include?(date)
24
+ end
18
25
  end
19
26
 
20
27
  # Returns true if the given date is a banking day, i.e. is not a bank holiday,
@@ -39,6 +46,12 @@ module UsBankHolidays
39
46
  end
40
47
  end
41
48
 
49
+ # If enabled (ENV["NO_FRIDAY_HOLIDAY_ACH"]), a Friday that falls a day before
50
+ # a Saturday that's a bank holiday is considered a bank holiday
51
+ def self.saturday_holiday_date_rolling?
52
+ !!ENV["NO_FRIDAY_HOLIDAY_ACH"]
53
+ end
54
+
42
55
  # Instance methods to be injected into the Date class
43
56
  module DateMethods
44
57
 
@@ -48,8 +61,12 @@ module UsBankHolidays
48
61
  end
49
62
 
50
63
  # Returns true if the date is a bank holiday, false otherwise.
51
- def bank_holiday?
52
- ::UsBankHolidays.bank_holiday? self
64
+ # Pass the optional 'include_weekends' to control whether weekends should count as
65
+ # bank holidays (default is true).
66
+ # If include_weekends is set to false but the date is a Federal bank holiday,
67
+ # returns true (Ex: 4th of July, 2015, Christmas Day 2016)
68
+ def bank_holiday?(include_weekends = true)
69
+ ::UsBankHolidays.bank_holiday? self, include_weekends
53
70
  end
54
71
 
55
72
  # Returns the next banking day after this one.
@@ -80,6 +97,16 @@ module UsBankHolidays
80
97
  def banking_day?
81
98
  !bank_holiday?
82
99
  end
100
+
101
+ # Returns true if the date is the last banking day of the month, false otherwise.
102
+ def last_banking_day_of_month?
103
+ !bank_holiday? && next_banking_day.month != month
104
+ end
105
+
106
+ # Returns true if the date is the first banking day of the month, false otherwise.
107
+ def first_banking_day_of_month?
108
+ !bank_holiday? && previous_banking_day.month != month
109
+ end
83
110
  end
84
111
 
85
112
  end
@@ -9,6 +9,7 @@ module UsBankHolidays
9
9
  :mlk_day,
10
10
  :washingtons_birthday,
11
11
  :memorial_day,
12
+ :juneteenth,
12
13
  :independence_day,
13
14
  :labor_day,
14
15
  :columbus_day,
@@ -16,8 +17,9 @@ module UsBankHolidays
16
17
  :thanksgiving,
17
18
  :christmas
18
19
 
20
+ # Initializes instance from a given year
19
21
  def initialize(year)
20
- @year = year
22
+ @year = year
21
23
 
22
24
  init_fixed_holidays
23
25
  init_rolled_holidays
@@ -25,26 +27,27 @@ module UsBankHolidays
25
27
  end
26
28
 
27
29
  # Returns the federal holidays for the given year on the dates they will actually
28
- # be observed. In the event that New Year's Day for the following year falls on a
29
- # Saturday December 31 will also be included.
30
+ # be observed.
30
31
  def bank_holidays
31
32
  @bank_holidays ||= begin
32
- holidays = [ new_years_day,
33
- mlk_day,
34
- washingtons_birthday,
35
- memorial_day,
36
- independence_day,
37
- labor_day,
38
- columbus_day,
39
- veterans_day,
40
- thanksgiving,
41
- christmas
42
- ]
43
- if Date.new(year + 1, 1, 1).saturday?
44
- holidays << Date.new(year, 12, 31)
45
- end
46
- holidays.freeze
47
- end
33
+ holidays = [
34
+ new_years_day,
35
+ mlk_day,
36
+ washingtons_birthday,
37
+ memorial_day,
38
+ juneteenth,
39
+ independence_day,
40
+ labor_day,
41
+ columbus_day,
42
+ veterans_day,
43
+ thanksgiving,
44
+ christmas
45
+ ].compact
46
+ if Date.new(year + 1, 1, 1).saturday?
47
+ holidays << Date.new(year, 12, 31)
48
+ end
49
+ holidays.freeze
50
+ end
48
51
  end
49
52
 
50
53
  {
@@ -96,7 +99,10 @@ module UsBankHolidays
96
99
  # First of the year, rolls either forward or back.
97
100
  @new_years_day = roll_nominal(Date.new(year, 1, 1))
98
101
 
99
- # 4'th of July
102
+ # 19th of June
103
+ @juneteenth = (year > 2020 ? roll_nominal(Date.new(year, 6, 19)) : nil )
104
+
105
+ # 4th of July
100
106
  @independence_day = roll_nominal(Date.new(year, 7, 4))
101
107
 
102
108
  # November 11
@@ -106,11 +112,12 @@ module UsBankHolidays
106
112
  @christmas = roll_nominal(Date.new(year, 12, 25))
107
113
  end
108
114
 
109
- # Figures out where to roll the given nominal date. If it's a Saturday, assumes
110
- # it's the day before (Friday), if Sunday it's the date after (Monday), otherwise
115
+ # Figures out where to roll the given nominal date. If it's a Saturday and
116
+ # Saturday holiday date rolling is enabled (see UsBankHolidays#saturday_holiday_date_rolling?),
117
+ # assumes it's the day before (Friday), if Sunday it's the date after (Monday), otherwise
111
118
  # just returns self.
112
119
  def roll_nominal(nominal)
113
- if nominal.saturday?
120
+ if nominal.saturday? && ::UsBankHolidays.saturday_holiday_date_rolling?
114
121
  nominal - 1
115
122
  elsif nominal.sunday?
116
123
  nominal + 1
@@ -1,3 +1,3 @@
1
1
  module UsBankHolidays
2
- VERSION = "0.0.4"
2
+ VERSION = "0.2.0"
3
3
  end
@@ -1,20 +1,105 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe UsBankHolidays::HolidayYear do
4
-
5
- it 'should determine bank holidays' do
6
- UsBankHolidays::HolidayYear.new(2017).bank_holidays.should == [
7
- '2017-01-02', #New Year’s Day
8
- '2017-01-16', #Birthday of Martin Luther King, Jr.
9
- '2017-02-20', #Washington’s Birthday
10
- '2017-05-29', #Memorial Day
11
- '2017-07-04', #Independence Day
12
- '2017-09-04', #Labor Day
13
- '2017-10-09', #Columbus Day
14
- '2017-11-10', #Veterans Day
15
- '2017-11-23', #Thanksgiving Day
16
- '2017-12-25' #Christmas Day
17
- ].map{|d| Date.parse(d) }
3
+ RSpec.describe UsBankHolidays::HolidayYear do
4
+
5
+ context "should determine bank holidays" do
6
+
7
+ context "Before 2021" do
8
+
9
+ context "Force Saturday date rolling" do
10
+ before :each do
11
+ allow(::UsBankHolidays).to receive(:saturday_holiday_date_rolling?).and_return(true)
12
+ end
13
+
14
+ it 'should determine bank holidays' do
15
+ expect(UsBankHolidays::HolidayYear.new(2017).bank_holidays).to eq([
16
+ '2017-01-02', #New Year’s Day
17
+ '2017-01-16', #Birthday of Martin Luther King, Jr.
18
+ '2017-02-20', #Washington’s Birthday
19
+ '2017-05-29', #Memorial Day
20
+ '2017-07-04', #Independence Day
21
+ '2017-09-04', #Labor Day
22
+ '2017-10-09', #Columbus Day
23
+ '2017-11-10', #Veterans Day
24
+ '2017-11-23', #Thanksgiving Day
25
+ '2017-12-25' #Christmas Day
26
+ ].map { |d| Date.parse(d) }
27
+ )
28
+ end
29
+
30
+ end
31
+
32
+ context "No Saturday date rolling" do
33
+ it 'should determine bank holidays' do
34
+ expect(UsBankHolidays::HolidayYear.new(2017).bank_holidays).to eq([
35
+ '2017-01-02', #New Year’s Day
36
+ '2017-01-16', #Birthday of Martin Luther King, Jr.
37
+ '2017-02-20', #Washington’s Birthday
38
+ '2017-05-29', #Memorial Day
39
+ '2017-07-04', #Independence Day
40
+ '2017-09-04', #Labor Day
41
+ '2017-10-09', #Columbus Day
42
+ '2017-11-11', #Veterans Day
43
+ '2017-11-23', #Thanksgiving Day
44
+ '2017-12-25' #Christmas Day
45
+ ].map { |d| Date.parse(d) }
46
+ )
47
+ end
48
+
49
+ end
50
+
51
+ end
52
+
53
+ context "2021 and later" do
54
+
55
+ context "Force Saturday date rolling" do
56
+ before :each do
57
+ allow(::UsBankHolidays).to receive(:saturday_holiday_date_rolling?).and_return(true)
58
+ end
59
+
60
+ it 'should determine bank holidays' do
61
+ expect(UsBankHolidays::HolidayYear.new(2021).bank_holidays).to eq([
62
+ '2021-01-01', #New Year’s Day
63
+ '2021-01-18', #Birthday of Martin Luther King, Jr.
64
+ '2021-02-15', #Washington’s Birthday
65
+ '2021-05-31', #Memorial Day
66
+ '2021-06-18', #Juneteenth
67
+ '2021-07-05', #Independence Day
68
+ '2021-09-06', #Labor Day
69
+ '2021-10-11', #Columbus Day
70
+ '2021-11-11', #Veterans Day
71
+ '2021-11-25', #Thanksgiving Day
72
+ '2021-12-24', #Christmas Day
73
+ '2021-12-31' #New Year’s Day
74
+ ].map { |d| Date.parse(d) }
75
+ )
76
+ end
77
+
78
+ end
79
+
80
+ context "No Saturday date rolling" do
81
+ it 'should determine bank holidays' do
82
+ expect(UsBankHolidays::HolidayYear.new(2021).bank_holidays).to eq([
83
+ '2021-01-01', #New Year’s Day
84
+ '2021-01-18', #Birthday of Martin Luther King, Jr.
85
+ '2021-02-15', #Washington’s Birthday
86
+ '2021-05-31', #Memorial Day
87
+ '2021-06-19', #Juneteenth
88
+ '2021-07-05', #Independence Day
89
+ '2021-09-06', #Labor Day
90
+ '2021-10-11', #Columbus Day
91
+ '2021-11-11', #Veterans Day
92
+ '2021-11-25', #Thanksgiving Day
93
+ '2021-12-25', #Christmas Day
94
+ '2021-12-31' #New Year’s Day
95
+ ].map { |d| Date.parse(d) }
96
+ )
97
+ end
98
+
99
+ end
100
+
101
+ end
102
+
18
103
  end
19
104
 
20
105
  it 'should declare Dec. 31 a bank holiday if it falls on a Friday' do
@@ -39,7 +124,7 @@ describe UsBankHolidays::HolidayYear do
39
124
  :december => 12
40
125
  }.each do |month_name, month_index|
41
126
  it "should respond to '#{month_name}' and return the right month" do
42
- year.respond_to?(month_name).should be_true
127
+ expect(year.respond_to?(month_name)).to eq(true)
43
128
  month = year.send(month_name)
44
129
  month.year.should == 2014
45
130
  month.month.should == month_index
@@ -1,6 +1,6 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe UsBankHolidays::Month do
3
+ RSpec.describe UsBankHolidays::Month do
4
4
  let(:january) { UsBankHolidays::Month.new(2014, 1) }
5
5
 
6
6
  it 'should record the correct month' do
@@ -23,19 +23,19 @@ describe UsBankHolidays::Month do
23
23
 
24
24
  it 'should return true if the month contains the given date' do
25
25
  (1..31).each do |mday|
26
- january.contains?(Date.new(january.year, january.month, mday)).should be_true
26
+ january.contains?(Date.new(january.year, january.month, mday)).should eq(true)
27
27
  end
28
28
  end
29
29
 
30
30
  it 'should return false if the month is not the same' do
31
31
  (1..31).each do |mday|
32
- january.contains?(Date.new(2014, 8, mday)).should be_false
32
+ january.contains?(Date.new(2014, 8, mday)).should eq(false)
33
33
  end
34
34
  end
35
35
 
36
36
  it 'should return false if the year is not the same' do
37
37
  (1..31).each do |mday|
38
- january.contains?(Date.new(2015, 1, mday)).should be_false
38
+ january.contains?(Date.new(2015, 1, mday)).should eq(false)
39
39
  end
40
40
  end
41
41
  end
@@ -113,4 +113,4 @@ Su Mo Tu We Th Fr Sa
113
113
 
114
114
  end
115
115
  end
116
- end
116
+ end
@@ -1,6 +1,6 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe UsBankHolidays do
3
+ RSpec.describe UsBankHolidays do
4
4
  let(:sample_holidays) {
5
5
  [
6
6
  '2014-01-01', #New Year’s Day
@@ -86,85 +86,102 @@ describe UsBankHolidays do
86
86
 
87
87
  let(:sample_weekdays) { [3, 4, 5, 6, 7].map{|d| Date.new(2014, 2, d) } }
88
88
 
89
+ before :each do
90
+ allow(::UsBankHolidays).to receive(:saturday_holiday_date_rolling?).and_return(true)
91
+ end
92
+
89
93
  describe '.bank_holiday?' do
90
94
  it 'should determine bank holidays on the list' do
91
- sample_holidays.each{ |holiday|
92
- UsBankHolidays.bank_holiday?(holiday).should be_true
93
- UsBankHolidays.banking_day?(holiday).should be_false
95
+ sample_holidays.each { |holiday|
96
+ UsBankHolidays.bank_holiday?(holiday).should eq(true)
97
+ UsBankHolidays.banking_day?(holiday).should eq(false)
94
98
  }
95
99
  end
96
100
 
97
101
  it 'weekends should be bank holidays' do
98
- sample_weekends.each{ |weekend|
99
- UsBankHolidays.bank_holiday?(weekend).should be_true
100
- UsBankHolidays.banking_day?(weekend).should be_false
102
+ sample_weekends.each { |weekend|
103
+ UsBankHolidays.bank_holiday?(weekend).should eq(true)
104
+ UsBankHolidays.banking_day?(weekend).should eq(false)
105
+ }
106
+ end
107
+
108
+ it 'should exclude weekends if the appropriate flag is passed' do
109
+ sample_weekends.each { |weekend|
110
+ UsBankHolidays.bank_holiday?(weekend, false).should eq(false)
101
111
  }
102
112
  end
103
113
 
104
114
  it 'regular days should not be bank holidays' do
105
115
  sample_weekdays.each { |day|
106
- UsBankHolidays.bank_holiday?(day).should be_false
107
- UsBankHolidays.banking_day?(day).should be_true
116
+ UsBankHolidays.bank_holiday?(day).should eq(false)
117
+ UsBankHolidays.banking_day?(day).should eq(true)
108
118
  }
109
119
  end
110
120
  end
111
121
 
112
122
  describe '.weekend?' do
113
123
  it 'should recognize weekends' do
114
- sample_weekends.each{ |weekend|
115
- UsBankHolidays.weekend?(weekend).should be_true
116
- UsBankHolidays.banking_day?(weekend).should be_false
124
+ sample_weekends.each { |weekend|
125
+ UsBankHolidays.weekend?(weekend).should eq(true)
126
+ UsBankHolidays.banking_day?(weekend).should eq(false)
117
127
  }
118
128
  end
119
129
 
120
130
  it 'weekdays should not be considered weekends' do
121
- sample_weekdays.each { |day| UsBankHolidays.weekend?(day).should be_false }
131
+ sample_weekdays.each { |day| UsBankHolidays.weekend?(day).should eq(false) }
122
132
  end
123
133
  end
124
134
 
125
135
  describe ::UsBankHolidays::DateMethods do
126
136
 
127
- describe '.bank_holiday?' do
137
+ describe '.weekend?' do
128
138
 
129
- it 'should recognize bank holidays' do
130
- sample_holidays.each{ |holiday|
131
- holiday.bank_holiday?.should be_true
132
- holiday.banking_day?.should be_false
139
+ it 'should recognize weekends' do
140
+ sample_weekends.each { |weekend|
141
+ weekend.weekend?.should eq(true)
142
+ weekend.banking_day?.should eq(false)
133
143
  }
134
144
  end
135
145
 
136
- it 'should treat weekends as bank holidays' do
137
- sample_weekends.each{ |weekend| weekend.bank_holiday?.should be_true }
138
- end
139
-
140
- it 'should not treat regular weekdays as bank holidays' do
146
+ it 'weekdays should not be considered weekends' do
141
147
  sample_weekdays.each { |day|
142
- day.bank_holiday?.should be_false
143
- day.banking_day?.should be_true
148
+ day.weekend?.should eq(false)
149
+ day.banking_day?.should eq(true)
144
150
  }
145
151
  end
146
152
 
147
- it 'if Jan. 1 falls on a Saturday, Dec. 31 of the previous year should be a bank holiday' do
148
- Date.new(2021, 12, 31).bank_holiday?.should be_true
149
- end
150
153
  end
151
154
 
152
- describe '.weekend?' do
155
+ describe '.bank_holiday?' do
153
156
 
154
- it 'should recognize weekends' do
155
- sample_weekends.each{ |weekend|
156
- weekend.weekend?.should be_true
157
- weekend.banking_day?.should be_false
157
+ it 'should recognize bank holidays' do
158
+ sample_holidays.each { |holiday|
159
+ holiday.bank_holiday?.should eq(true)
160
+ holiday.banking_day?.should eq(false)
158
161
  }
159
162
  end
160
163
 
161
- it 'weekdays should not be considered weekends' do
164
+ it 'should treat weekends as bank holidays' do
165
+ sample_weekends.each { |weekend| weekend.bank_holiday?.should eq(true) }
166
+ end
167
+
168
+ it 'should exclude weekends if the appropriate flag is passed' do
169
+ sample_weekends.each { |weekend|
170
+ weekend.weekend?.should eq(true)
171
+ weekend.bank_holiday?(false).should eq(false)
172
+ }
173
+ end
174
+
175
+ it 'should not treat regular weekdays as bank holidays' do
162
176
  sample_weekdays.each { |day|
163
- day.weekend?.should be_false
164
- day.banking_day?.should be_true
177
+ day.bank_holiday?.should eq(false)
178
+ day.banking_day?.should eq(true)
165
179
  }
166
180
  end
167
181
 
182
+ it 'if Jan. 1 falls on a Saturday, Dec. 31 of the previous year should be a bank holiday' do
183
+ Date.new(2021, 12, 31).bank_holiday?.should eq(true)
184
+ end
168
185
  end
169
186
 
170
187
  describe '.next_banking_day' do
@@ -204,5 +221,25 @@ describe UsBankHolidays do
204
221
  Date.new(2014, 1, 21).add_banking_days(-2).should == Date.new(2014, 1, 16)
205
222
  end
206
223
  end
224
+
225
+ describe '.last_banking_day_of_month?' do
226
+ it 'should determine if a date is the last banking day of the month' do
227
+ Date.new(2014, 1, 31).last_banking_day_of_month?.should eq(true)
228
+ Date.new(2014, 1, 30).last_banking_day_of_month?.should eq(false)
229
+
230
+ Date.new(2014, 11, 30).last_banking_day_of_month?.should eq(false)
231
+ Date.new(2014, 11, 28).last_banking_day_of_month?.should eq(true)
232
+ end
233
+ end
234
+
235
+ describe '.first_banking_day_of_month?' do
236
+ it 'should determine if the date if the first banking day of the month' do
237
+ Date.new(2014, 4, 1).first_banking_day_of_month?.should eq(true)
238
+ Date.new(2014, 4, 2).first_banking_day_of_month?.should eq(false)
239
+
240
+ Date.new(2014, 6, 1).first_banking_day_of_month?.should eq(false)
241
+ Date.new(2014, 6, 2).first_banking_day_of_month?.should eq(true)
242
+ end
243
+ end
207
244
  end
208
245
  end
data/spec/spec_helper.rb CHANGED
@@ -3,7 +3,9 @@ unless ENV['TRAVIS']
3
3
  SimpleCov.start
4
4
  end
5
5
 
6
- require File.join(File.dirname(__FILE__), '..', 'lib', 'us_bank_holidays')
6
+ require 'bundler/setup'
7
+
8
+ require 'us_bank_holidays'
7
9
 
8
10
  # This file was generated by the `rspec --init` command. Conventionally, all
9
11
  # specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
@@ -18,7 +18,7 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.add_development_dependency 'bundler', '~> 1.3'
21
+ spec.add_development_dependency 'bundler'
22
22
  spec.add_development_dependency 'rake'
23
23
  spec.add_development_dependency 'rspec'
24
24
  spec.add_development_dependency 'simplecov'
metadata CHANGED
@@ -1,69 +1,69 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: us_bank_holidays
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Arthur Shagall
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-02-13 00:00:00.000000000 Z
11
+ date: 2021-08-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '1.3'
19
+ version: '0'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ~>
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: '1.3'
26
+ version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - '>='
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
33
  version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - '>='
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - '>='
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
47
  version: '0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - '>='
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: simplecov
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - '>='
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - '>='
66
+ - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
69
  description: Simplify working with US bank holidays.
@@ -73,7 +73,7 @@ executables: []
73
73
  extensions: []
74
74
  extra_rdoc_files: []
75
75
  files:
76
- - .travis.yml
76
+ - ".travis.yml"
77
77
  - Gemfile
78
78
  - LICENSE.txt
79
79
  - README.md
@@ -97,17 +97,17 @@ require_paths:
97
97
  - lib
98
98
  required_ruby_version: !ruby/object:Gem::Requirement
99
99
  requirements:
100
- - - '>='
100
+ - - ">="
101
101
  - !ruby/object:Gem::Version
102
102
  version: '0'
103
103
  required_rubygems_version: !ruby/object:Gem::Requirement
104
104
  requirements:
105
- - - '>='
105
+ - - ">="
106
106
  - !ruby/object:Gem::Version
107
107
  version: '0'
108
108
  requirements: []
109
109
  rubyforge_project:
110
- rubygems_version: 2.2.2
110
+ rubygems_version: 2.7.8
111
111
  signing_key:
112
112
  specification_version: 4
113
113
  summary: Patches Date to add methods to make dealing with US bank holidays simpler.