holidays 7.1.0 → 8.5.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 +4 -4
- data/CHANGELOG.md +36 -1
- data/README.md +3 -4
- data/doc/CONTRIBUTING.md +2 -1
- data/holidays.gemspec +5 -5
- data/lib/generated_definitions/MANIFEST +3 -0
- data/lib/generated_definitions/REGIONS.rb +2 -2
- data/lib/generated_definitions/ar.rb +27 -8
- data/lib/generated_definitions/au.rb +10 -4
- data/lib/generated_definitions/ca.rb +21 -16
- data/lib/generated_definitions/ch.rb +13 -1
- data/lib/generated_definitions/cl.rb +5 -5
- data/lib/generated_definitions/de.rb +5 -4
- data/lib/generated_definitions/es.rb +4 -2
- data/lib/generated_definitions/europe.rb +87 -24
- data/lib/generated_definitions/federalreservebanks.rb +1 -0
- data/lib/generated_definitions/gb.rb +10 -5
- data/lib/generated_definitions/hr.rb +8 -6
- data/lib/generated_definitions/hu.rb +3 -2
- data/lib/generated_definitions/it.rb +14 -5
- data/lib/generated_definitions/jp.rb +26 -21
- data/lib/generated_definitions/kz.rb +38 -0
- data/lib/generated_definitions/lu.rb +2 -0
- data/lib/generated_definitions/lv.rb +52 -0
- data/lib/generated_definitions/mx.rb +3 -3
- data/lib/generated_definitions/ng.rb +33 -0
- data/lib/generated_definitions/northamerica.rb +28 -23
- data/lib/generated_definitions/ro.rb +5 -2
- data/lib/generated_definitions/southamerica.rb +30 -11
- data/lib/generated_definitions/tr.rb +5 -3
- data/lib/generated_definitions/ua.rb +6 -6
- data/lib/generated_definitions/us.rb +6 -6
- data/lib/generated_definitions/za.rb +1 -1
- data/lib/holidays/definition/context/generator.rb +20 -34
- data/lib/holidays/definition/repository/holidays_by_month.rb +9 -1
- data/lib/holidays/finder/context/search.rb +34 -31
- data/lib/holidays/finder/rules/year_range.rb +30 -54
- data/lib/holidays/version.rb +1 -1
- data/lib/holidays.rb +2 -0
- data/test/coverage_report.rb +23 -5
- data/test/data/test_custom_year_range_holiday_defs.yaml +6 -10
- data/test/data/test_multiple_regions_with_conflicts_region_1.yaml +38 -0
- data/test/data/test_multiple_regions_with_conflicts_region_2.yaml +38 -0
- data/test/defs/test_defs_ar.rb +20 -4
- data/test/defs/test_defs_au.rb +2 -0
- data/test/defs/test_defs_ca.rb +41 -10
- data/test/defs/test_defs_ch.rb +4 -0
- data/test/defs/test_defs_co.rb +3 -3
- data/test/defs/test_defs_de.rb +2 -0
- data/test/defs/test_defs_es.rb +2 -0
- data/test/defs/test_defs_europe.rb +164 -11
- data/test/defs/test_defs_federalreservebanks.rb +24 -0
- data/test/defs/test_defs_gb.rb +24 -0
- data/test/defs/test_defs_hr.rb +6 -6
- data/test/defs/test_defs_hu.rb +12 -4
- data/test/defs/test_defs_it.rb +20 -0
- data/test/defs/test_defs_jp.rb +5 -3
- data/test/defs/test_defs_kz.rb +39 -0
- data/test/defs/test_defs_lu.rb +6 -0
- data/test/defs/test_defs_lv.rb +90 -0
- data/test/defs/test_defs_ng.rb +29 -0
- data/test/defs/test_defs_northamerica.rb +51 -20
- data/test/defs/test_defs_ro.rb +14 -0
- data/test/defs/test_defs_southamerica.rb +23 -7
- data/test/defs/test_defs_tr.rb +7 -0
- data/test/defs/test_defs_us.rb +10 -10
- data/test/holidays/core_extensions/test_date.rb +3 -2
- data/test/holidays/definition/context/test_generator.rb +5 -18
- data/test/holidays/definition/repository/test_holidays_by_month.rb +121 -1
- data/test/holidays/finder/rules/test_year_range.rb +43 -47
- data/test/integration/test_available_regions.rb +1 -1
- data/test/integration/test_custom_year_range_holidays.rb +0 -7
- data/test/integration/test_holidays.rb +3 -25
- data/test/integration/test_holidays_between.rb +10 -0
- data/test/integration/test_multiple_regions_with_conflict.rb +29 -0
- metadata +28 -14
@@ -5,7 +5,7 @@ require 'holidays/finder/rules/year_range'
|
|
5
5
|
class FinderRulesYearRangeTests < Test::Unit::TestCase
|
6
6
|
def setup
|
7
7
|
@year = 2015
|
8
|
-
@year_ranges =
|
8
|
+
@year_ranges = {between: 1996..2002}
|
9
9
|
@subject = Holidays::Finder::Rules::YearRange
|
10
10
|
end
|
11
11
|
|
@@ -29,13 +29,13 @@ class FinderRulesYearRangeTests < Test::Unit::TestCase
|
|
29
29
|
end
|
30
30
|
|
31
31
|
def test_returns_error_if_year_ranges_contains_only_non_hash
|
32
|
-
@year_ranges =
|
32
|
+
@year_ranges = :test
|
33
33
|
assert_raises ArgumentError do
|
34
34
|
@subject.call(@year, @year_ranges)
|
35
35
|
end
|
36
36
|
end
|
37
37
|
|
38
|
-
def
|
38
|
+
def test_returns_error_if_year_ranges_is_empty
|
39
39
|
@year_ranges = [{}, {}]
|
40
40
|
assert_raises ArgumentError do
|
41
41
|
@subject.call(@year, @year_ranges)
|
@@ -43,128 +43,124 @@ class FinderRulesYearRangeTests < Test::Unit::TestCase
|
|
43
43
|
end
|
44
44
|
|
45
45
|
def test_returns_error_if_year_range_contains_a_hash_with_multiple_entries
|
46
|
-
@year_ranges =
|
46
|
+
@year_ranges = {:between => 1996..2002, :after => 2002}
|
47
47
|
assert_raises ArgumentError do
|
48
48
|
@subject.call(@year, @year_ranges)
|
49
49
|
end
|
50
50
|
end
|
51
51
|
|
52
52
|
def test_returns_error_if_year_range_contains_unrecognized_operator
|
53
|
-
@year_ranges =
|
53
|
+
@year_ranges = {:what => 2002}
|
54
54
|
assert_raises ArgumentError do
|
55
55
|
@subject.call(@year, @year_ranges)
|
56
56
|
end
|
57
57
|
end
|
58
58
|
|
59
|
-
def
|
60
|
-
@year_ranges =
|
59
|
+
def test_returns_error_if_until_operator_and_value_is_not_a_number
|
60
|
+
@year_ranges = {until: "bad"}
|
61
61
|
assert_raises ArgumentError do
|
62
62
|
@subject.call(@year, @year_ranges)
|
63
63
|
end
|
64
64
|
end
|
65
65
|
|
66
|
-
def
|
67
|
-
@year_ranges =
|
66
|
+
def test_returns_true_if_until_operator_and_target_is_until
|
67
|
+
@year_ranges = {until: 2000}
|
68
68
|
assert_equal(true, @subject.call(1999, @year_ranges))
|
69
69
|
end
|
70
70
|
|
71
|
-
def
|
72
|
-
@year_ranges =
|
71
|
+
def test_returns_true_if_until_operator_and_target_is_equal
|
72
|
+
@year_ranges = {until: 2000}
|
73
73
|
assert_equal(true, @subject.call(2000, @year_ranges))
|
74
74
|
end
|
75
75
|
|
76
|
-
def
|
77
|
-
@year_ranges =
|
76
|
+
def test_returns_false_if_until_operator_and_target_is_after
|
77
|
+
@year_ranges = {until: 2000}
|
78
78
|
assert_equal(false, @subject.call(2001, @year_ranges))
|
79
79
|
end
|
80
80
|
|
81
|
-
def
|
82
|
-
@year_ranges =
|
81
|
+
def test_returns_error_if_from_operator_with_bad_value
|
82
|
+
@year_ranges = {from: "bad"}
|
83
83
|
assert_raises ArgumentError do
|
84
84
|
@subject.call(@year, @year_ranges)
|
85
85
|
end
|
86
86
|
end
|
87
87
|
|
88
|
-
def
|
89
|
-
@year_ranges =
|
88
|
+
def test_returns_false_if_from_operator_and_target_is_before
|
89
|
+
@year_ranges = {from: 2000}
|
90
90
|
assert_equal(false, @subject.call(1999, @year_ranges))
|
91
91
|
end
|
92
92
|
|
93
|
-
def
|
94
|
-
@year_ranges =
|
93
|
+
def test_returns_true_if_from_operator_and_target_is_equal
|
94
|
+
@year_ranges = {from: 2000}
|
95
95
|
assert_equal(true, @subject.call(2000, @year_ranges))
|
96
96
|
end
|
97
97
|
|
98
|
-
def
|
99
|
-
@year_ranges =
|
98
|
+
def test_returns_true_if_from_operator_and_target_is_after
|
99
|
+
@year_ranges = {from: 2000}
|
100
100
|
assert_equal(true, @subject.call(2001, @year_ranges))
|
101
101
|
end
|
102
102
|
|
103
103
|
def test_returns_error_if_limited_operator_and_bad_value
|
104
|
-
@year_ranges =
|
104
|
+
@year_ranges = {limited: "bad"}
|
105
|
+
assert_raises ArgumentError do
|
106
|
+
@subject.call(@year, @year_ranges)
|
107
|
+
end
|
108
|
+
end
|
109
|
+
|
110
|
+
def test_returns_error_if_limited_operator_with_empty_array
|
111
|
+
@year_ranges = {limited: []}
|
112
|
+
assert_raises ArgumentError do
|
113
|
+
@subject.call(@year, @year_ranges)
|
114
|
+
end
|
115
|
+
end
|
116
|
+
|
117
|
+
def test_returns_error_if_limited_operator_with_array_containing_non_integer_value
|
118
|
+
@year_ranges = {limited: ["bad"]}
|
105
119
|
assert_raises ArgumentError do
|
106
120
|
@subject.call(@year, @year_ranges)
|
107
121
|
end
|
108
122
|
end
|
109
123
|
|
110
124
|
def test_returns_true_if_limited_operator_and_value_is_number_that_matches_target
|
111
|
-
@year_ranges =
|
125
|
+
@year_ranges = {limited: [2002]}
|
112
126
|
assert_equal(true, @subject.call(2002, @year_ranges))
|
113
127
|
end
|
114
128
|
|
115
129
|
def test_returns_false_if_limited_operator_and_target_is_not_included
|
116
|
-
@year_ranges =
|
130
|
+
@year_ranges = {limited: [1998,2000]}
|
117
131
|
assert_equal(false, @subject.call(1997, @year_ranges))
|
118
132
|
assert_equal(false, @subject.call(1999, @year_ranges))
|
119
133
|
assert_equal(false, @subject.call(2002, @year_ranges))
|
120
134
|
end
|
121
135
|
|
122
136
|
def test_returns_true_if_limited_operator_and_target_is_included
|
123
|
-
@year_ranges =
|
137
|
+
@year_ranges = {limited: [1998, 2000, 2002]}
|
124
138
|
assert_equal(true, @subject.call(1998, @year_ranges))
|
125
139
|
assert_equal(true, @subject.call(2000, @year_ranges))
|
126
140
|
assert_equal(true, @subject.call(2002, @year_ranges))
|
127
141
|
end
|
128
142
|
|
129
143
|
def test_returns_error_if_between_operator_and_value_not_a_range
|
130
|
-
@year_ranges =
|
144
|
+
@year_ranges = {between: 2000}
|
131
145
|
assert_raises ArgumentError do
|
132
146
|
@subject.call(2003, @year_ranges)
|
133
147
|
end
|
134
148
|
end
|
135
149
|
|
136
150
|
def test_returns_false_if_between_operator_and_target_is_before
|
137
|
-
@year_ranges =
|
151
|
+
@year_ranges = {between: 1998..2002}
|
138
152
|
assert_equal(false, @subject.call(1997, @year_ranges))
|
139
153
|
end
|
140
154
|
|
141
155
|
def test_returns_true_if_between_operator_and_target_is_covered
|
142
|
-
@year_ranges =
|
156
|
+
@year_ranges = {between: 1998..2002}
|
143
157
|
assert_equal(true, @subject.call(1998, @year_ranges))
|
144
158
|
assert_equal(true, @subject.call(2000, @year_ranges))
|
145
159
|
assert_equal(true, @subject.call(2002, @year_ranges))
|
146
160
|
end
|
147
161
|
|
148
162
|
def test_returns_false_if_between_operator_and_target_is_after
|
149
|
-
@year_ranges =
|
163
|
+
@year_ranges = {between: 1998..2002}
|
150
164
|
assert_equal(false, @subject.call(2003, @year_ranges))
|
151
165
|
end
|
152
|
-
|
153
|
-
def test_returns_false_multiple_nonmatching_operators
|
154
|
-
@year_ranges = [{between: 1998..2002}, {:after => 2005}]
|
155
|
-
assert_equal(false, @subject.call(2003, @year_ranges))
|
156
|
-
|
157
|
-
@year_ranges = [{before: 1995}, {:limited => [1990, 1991, 1992]}]
|
158
|
-
assert_equal(false, @subject.call(1996, @year_ranges))
|
159
|
-
end
|
160
|
-
|
161
|
-
def test_returns_true_multiple_operators_all_matching
|
162
|
-
@year_ranges = [{between: 1998..2002}, {:limited=> [2000, 2001]}]
|
163
|
-
assert_equal(true, @subject.call(2001, @year_ranges))
|
164
|
-
end
|
165
|
-
|
166
|
-
def test_returns_true_if_multiple_operators_and_only_one_matches
|
167
|
-
@year_ranges = [{before: 2015}, {:after=> 2017}]
|
168
|
-
assert_equal(true, @subject.call(2001, @year_ranges))
|
169
|
-
end
|
170
166
|
end
|
@@ -18,6 +18,6 @@ class AvailableRegionsTests < Test::Unit::TestCase
|
|
18
18
|
# This test might fail if we add new regions. Since this is an integration test
|
19
19
|
# I am fine with that!
|
20
20
|
def test_available_regions_returns_correct_number_of_regions
|
21
|
-
assert_equal
|
21
|
+
assert_equal 258, Holidays.available_regions.count
|
22
22
|
end
|
23
23
|
end
|
@@ -32,11 +32,4 @@ class CustomYearRangeHolidaysTest < Test::Unit::TestCase
|
|
32
32
|
assert_not_equal [], Holidays.on(Date.civil(2019,6,4), :custom_year_range_file)
|
33
33
|
assert_equal [], Holidays.on(Date.civil(2020,6,4), :custom_year_range_file)
|
34
34
|
end
|
35
|
-
|
36
|
-
def test_multiple_condition
|
37
|
-
Holidays.load_custom('test/data/test_custom_year_range_holiday_defs.yaml')
|
38
|
-
assert_not_equal [], Holidays.on(Date.civil(2015,6,5), :custom_year_range_file)
|
39
|
-
assert_equal [], Holidays.on(Date.civil(2016,6,5), :custom_year_range_file)
|
40
|
-
assert_not_equal [], Holidays.on(Date.civil(2017,6,5), :custom_year_range_file)
|
41
|
-
end
|
42
35
|
end
|
@@ -142,28 +142,6 @@ class HolidaysTests < Test::Unit::TestCase
|
|
142
142
|
assert_empty holidays
|
143
143
|
end
|
144
144
|
|
145
|
-
def test_year_holidays_feb_29_on_non_leap_year
|
146
|
-
assert_raises ArgumentError do
|
147
|
-
Holidays.year_holidays([:ca_on], Date.civil(2015, 2, 29))
|
148
|
-
end
|
149
|
-
|
150
|
-
assert_raises ArgumentError do
|
151
|
-
Holidays.year_holidays([:ca_on], Date.civil(2019, 2, 29))
|
152
|
-
end
|
153
|
-
|
154
|
-
assert_raises ArgumentError do
|
155
|
-
Holidays.year_holidays([:ca_on], Date.civil(2021, 2, 29))
|
156
|
-
end
|
157
|
-
|
158
|
-
assert_raises ArgumentError do
|
159
|
-
Holidays.year_holidays([:us], Date.civil(2023, 2, 29))
|
160
|
-
end
|
161
|
-
|
162
|
-
assert_raises ArgumentError do
|
163
|
-
Holidays.year_holidays([:ca_on], Date.civil(2025, 2, 29))
|
164
|
-
end
|
165
|
-
end
|
166
|
-
|
167
145
|
def test_year_holidays_random_years
|
168
146
|
# Should be 1 less holiday, as Family day didn't exist in Ontario in 1990
|
169
147
|
holidays = Holidays.year_holidays([:ca_on], Date.civil(1990, 1, 1))
|
@@ -174,10 +152,10 @@ class HolidaysTests < Test::Unit::TestCase
|
|
174
152
|
assert_equal 8, holidays.length
|
175
153
|
|
176
154
|
holidays = Holidays.year_holidays([:ca_on], Date.civil(2020, 1, 1))
|
177
|
-
assert_equal
|
155
|
+
assert_equal 11, holidays.length
|
178
156
|
|
179
157
|
holidays = Holidays.year_holidays([:ca_on], Date.civil(2050, 1, 1))
|
180
|
-
assert_equal
|
158
|
+
assert_equal 10, holidays.length
|
181
159
|
|
182
160
|
holidays = Holidays.year_holidays([:jp], Date.civil(2070, 1, 1))
|
183
161
|
assert_equal 19, holidays.length
|
@@ -266,6 +244,6 @@ class HolidaysTests < Test::Unit::TestCase
|
|
266
244
|
|
267
245
|
def test_load_all
|
268
246
|
Holidays.load_all
|
269
|
-
assert_equal
|
247
|
+
assert_equal 258, Holidays.available_regions.count
|
270
248
|
end
|
271
249
|
end
|
@@ -41,6 +41,16 @@ class HolidaysBetweenTests < Test::Unit::TestCase
|
|
41
41
|
end
|
42
42
|
end
|
43
43
|
|
44
|
+
def test_between_raises_error_if_end_date_is_before_start_date
|
45
|
+
assert_raise ArgumentError do
|
46
|
+
@subject.call(Date.civil(2019, 2, 1), Date.civil(2019, 1, 1), :us)
|
47
|
+
end
|
48
|
+
|
49
|
+
assert_raise ArgumentError do
|
50
|
+
@subject.call(Date.civil(2008,7,2), Date.civil(2000,7,2), :ca)
|
51
|
+
end
|
52
|
+
end
|
53
|
+
|
44
54
|
def test_cached_holidays_are_returned_if_present
|
45
55
|
start_date = Date.civil(2015, 1, 1)
|
46
56
|
end_date = Date.civil(2015, 1, 31)
|
@@ -0,0 +1,29 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__)) + '/../test_helper'
|
2
|
+
|
3
|
+
# See https://github.com/holidays/holidays/issues/344 for more info on why
|
4
|
+
# these tests exist.
|
5
|
+
class MultipleRegionsWithConflictsTests < Test::Unit::TestCase
|
6
|
+
|
7
|
+
def test_corpus_christi_returns_correctly_for_co_even_if_br_is_loaded_first
|
8
|
+
result = Holidays.on(Date.new(2014, 6, 19), :br)
|
9
|
+
assert_equal 1, result.count
|
10
|
+
assert_equal 'Corpus Christi', result.first[:name]
|
11
|
+
|
12
|
+
result = Holidays.on(Date.new(2014, 6, 23), :co)
|
13
|
+
assert_equal 1, result.count
|
14
|
+
assert_equal 'Corpus Christi', result.first[:name]
|
15
|
+
end
|
16
|
+
|
17
|
+
def test_custom_loaded_region_returns_correct_value_with_function_modifier_conflict_even_if_conflict_definition_is_loaded_first
|
18
|
+
Holidays.load_custom('test/data/test_multiple_regions_with_conflicts_region_1.yaml')
|
19
|
+
result = Holidays.on(Date.new(2019, 6, 20), :multiple_with_conflict_1)
|
20
|
+
assert_equal 1, result.count
|
21
|
+
assert_equal 'With Function Modifier', result.first[:name]
|
22
|
+
|
23
|
+
Holidays.load_custom('test/data/test_multiple_regions_with_conflicts_region_2.yaml')
|
24
|
+
result = Holidays.on(Date.new(2019, 6, 24), :multiple_with_conflict_2)
|
25
|
+
assert_equal 1, result.count
|
26
|
+
assert_equal 'With Function Modifier', result.first[:name]
|
27
|
+
end
|
28
|
+
|
29
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: holidays
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 8.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alex Dunae
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2022-01-05 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|
@@ -17,14 +17,14 @@ dependencies:
|
|
17
17
|
requirements:
|
18
18
|
- - "~>"
|
19
19
|
- !ruby/object:Gem::Version
|
20
|
-
version: '
|
20
|
+
version: '2'
|
21
21
|
type: :development
|
22
22
|
prerelease: false
|
23
23
|
version_requirements: !ruby/object:Gem::Requirement
|
24
24
|
requirements:
|
25
25
|
- - "~>"
|
26
26
|
- !ruby/object:Gem::Version
|
27
|
-
version: '
|
27
|
+
version: '2'
|
28
28
|
- !ruby/object:Gem::Dependency
|
29
29
|
name: rake
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
@@ -59,42 +59,42 @@ dependencies:
|
|
59
59
|
requirements:
|
60
60
|
- - "~>"
|
61
61
|
- !ruby/object:Gem::Version
|
62
|
-
version: '3
|
62
|
+
version: '3'
|
63
63
|
type: :development
|
64
64
|
prerelease: false
|
65
65
|
version_requirements: !ruby/object:Gem::Requirement
|
66
66
|
requirements:
|
67
67
|
- - "~>"
|
68
68
|
- !ruby/object:Gem::Version
|
69
|
-
version: '3
|
69
|
+
version: '3'
|
70
70
|
- !ruby/object:Gem::Dependency
|
71
71
|
name: mocha
|
72
72
|
requirement: !ruby/object:Gem::Requirement
|
73
73
|
requirements:
|
74
74
|
- - "~>"
|
75
75
|
- !ruby/object:Gem::Version
|
76
|
-
version: '1
|
76
|
+
version: '1'
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
79
|
version_requirements: !ruby/object:Gem::Requirement
|
80
80
|
requirements:
|
81
81
|
- - "~>"
|
82
82
|
- !ruby/object:Gem::Version
|
83
|
-
version: '1
|
83
|
+
version: '1'
|
84
84
|
- !ruby/object:Gem::Dependency
|
85
85
|
name: pry
|
86
86
|
requirement: !ruby/object:Gem::Requirement
|
87
87
|
requirements:
|
88
88
|
- - "~>"
|
89
89
|
- !ruby/object:Gem::Version
|
90
|
-
version: '0.
|
90
|
+
version: '0.12'
|
91
91
|
type: :development
|
92
92
|
prerelease: false
|
93
93
|
version_requirements: !ruby/object:Gem::Requirement
|
94
94
|
requirements:
|
95
95
|
- - "~>"
|
96
96
|
- !ruby/object:Gem::Version
|
97
|
-
version: '0.
|
97
|
+
version: '0.12'
|
98
98
|
description: A collection of Ruby methods to deal with statutory and other holidays.
|
99
99
|
You deserve a holiday!
|
100
100
|
email:
|
@@ -155,15 +155,18 @@ files:
|
|
155
155
|
- lib/generated_definitions/it.rb
|
156
156
|
- lib/generated_definitions/jp.rb
|
157
157
|
- lib/generated_definitions/kr.rb
|
158
|
+
- lib/generated_definitions/kz.rb
|
158
159
|
- lib/generated_definitions/li.rb
|
159
160
|
- lib/generated_definitions/lt.rb
|
160
161
|
- lib/generated_definitions/lu.rb
|
162
|
+
- lib/generated_definitions/lv.rb
|
161
163
|
- lib/generated_definitions/ma.rb
|
162
164
|
- lib/generated_definitions/mt_en.rb
|
163
165
|
- lib/generated_definitions/mt_mt.rb
|
164
166
|
- lib/generated_definitions/mx.rb
|
165
167
|
- lib/generated_definitions/my.rb
|
166
168
|
- lib/generated_definitions/nerc.rb
|
169
|
+
- lib/generated_definitions/ng.rb
|
167
170
|
- lib/generated_definitions/nl.rb
|
168
171
|
- lib/generated_definitions/no.rb
|
169
172
|
- lib/generated_definitions/northamerica.rb
|
@@ -242,6 +245,8 @@ files:
|
|
242
245
|
- test/data/test_custom_year_range_holiday_defs.yaml
|
243
246
|
- test/data/test_invalid_region.rb
|
244
247
|
- test/data/test_multiple_custom_holiday_defs.yaml
|
248
|
+
- test/data/test_multiple_regions_with_conflicts_region_1.yaml
|
249
|
+
- test/data/test_multiple_regions_with_conflicts_region_2.yaml
|
245
250
|
- test/data/test_region.rb
|
246
251
|
- test/data/test_single_custom_holiday_defs.yaml
|
247
252
|
- test/data/test_single_custom_holiday_with_custom_procs.yaml
|
@@ -281,15 +286,18 @@ files:
|
|
281
286
|
- test/defs/test_defs_it.rb
|
282
287
|
- test/defs/test_defs_jp.rb
|
283
288
|
- test/defs/test_defs_kr.rb
|
289
|
+
- test/defs/test_defs_kz.rb
|
284
290
|
- test/defs/test_defs_li.rb
|
285
291
|
- test/defs/test_defs_lt.rb
|
286
292
|
- test/defs/test_defs_lu.rb
|
293
|
+
- test/defs/test_defs_lv.rb
|
287
294
|
- test/defs/test_defs_ma.rb
|
288
295
|
- test/defs/test_defs_mt_en.rb
|
289
296
|
- test/defs/test_defs_mt_mt.rb
|
290
297
|
- test/defs/test_defs_mx.rb
|
291
298
|
- test/defs/test_defs_my.rb
|
292
299
|
- test/defs/test_defs_nerc.rb
|
300
|
+
- test/defs/test_defs_ng.rb
|
293
301
|
- test/defs/test_defs_nl.rb
|
294
302
|
- test/defs/test_defs_no.rb
|
295
303
|
- test/defs/test_defs_northamerica.rb
|
@@ -364,6 +372,7 @@ files:
|
|
364
372
|
- test/integration/test_holidays.rb
|
365
373
|
- test/integration/test_holidays_between.rb
|
366
374
|
- test/integration/test_multiple_regions.rb
|
375
|
+
- test/integration/test_multiple_regions_with_conflict.rb
|
367
376
|
- test/integration/test_nonstandard_regions.rb
|
368
377
|
- test/test_helper.rb
|
369
378
|
homepage: https://github.com/holidays/holidays
|
@@ -376,17 +385,16 @@ require_paths:
|
|
376
385
|
- lib
|
377
386
|
required_ruby_version: !ruby/object:Gem::Requirement
|
378
387
|
requirements:
|
379
|
-
- - "
|
388
|
+
- - ">="
|
380
389
|
- !ruby/object:Gem::Version
|
381
|
-
version: '2.
|
390
|
+
version: '2.4'
|
382
391
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
383
392
|
requirements:
|
384
393
|
- - ">="
|
385
394
|
- !ruby/object:Gem::Version
|
386
395
|
version: '0'
|
387
396
|
requirements: []
|
388
|
-
|
389
|
-
rubygems_version: 2.7.6
|
397
|
+
rubygems_version: 3.1.2
|
390
398
|
signing_key:
|
391
399
|
specification_version: 4
|
392
400
|
summary: A collection of Ruby methods to deal with statutory and other holidays.
|
@@ -397,6 +405,8 @@ test_files:
|
|
397
405
|
- test/data/test_custom_year_range_holiday_defs.yaml
|
398
406
|
- test/data/test_invalid_region.rb
|
399
407
|
- test/data/test_multiple_custom_holiday_defs.yaml
|
408
|
+
- test/data/test_multiple_regions_with_conflicts_region_1.yaml
|
409
|
+
- test/data/test_multiple_regions_with_conflicts_region_2.yaml
|
400
410
|
- test/data/test_region.rb
|
401
411
|
- test/data/test_single_custom_holiday_defs.yaml
|
402
412
|
- test/data/test_single_custom_holiday_with_custom_procs.yaml
|
@@ -436,15 +446,18 @@ test_files:
|
|
436
446
|
- test/defs/test_defs_it.rb
|
437
447
|
- test/defs/test_defs_jp.rb
|
438
448
|
- test/defs/test_defs_kr.rb
|
449
|
+
- test/defs/test_defs_kz.rb
|
439
450
|
- test/defs/test_defs_li.rb
|
440
451
|
- test/defs/test_defs_lt.rb
|
441
452
|
- test/defs/test_defs_lu.rb
|
453
|
+
- test/defs/test_defs_lv.rb
|
442
454
|
- test/defs/test_defs_ma.rb
|
443
455
|
- test/defs/test_defs_mt_en.rb
|
444
456
|
- test/defs/test_defs_mt_mt.rb
|
445
457
|
- test/defs/test_defs_mx.rb
|
446
458
|
- test/defs/test_defs_my.rb
|
447
459
|
- test/defs/test_defs_nerc.rb
|
460
|
+
- test/defs/test_defs_ng.rb
|
448
461
|
- test/defs/test_defs_nl.rb
|
449
462
|
- test/defs/test_defs_no.rb
|
450
463
|
- test/defs/test_defs_northamerica.rb
|
@@ -519,5 +532,6 @@ test_files:
|
|
519
532
|
- test/integration/test_holidays.rb
|
520
533
|
- test/integration/test_holidays_between.rb
|
521
534
|
- test/integration/test_multiple_regions.rb
|
535
|
+
- test/integration/test_multiple_regions_with_conflict.rb
|
522
536
|
- test/integration/test_nonstandard_regions.rb
|
523
537
|
- test/test_helper.rb
|