holidays 3.3.0 → 4.0.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.
Files changed (188) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +44 -0
  3. data/CONTRIBUTING.md +37 -0
  4. data/README.md +16 -25
  5. data/REFERENCES +4 -1
  6. data/Rakefile +38 -8
  7. data/benchmark.rb +8 -0
  8. data/definitions/README.md +187 -8
  9. data/definitions/ar.yaml +2 -1
  10. data/definitions/at.yaml +17 -13
  11. data/definitions/au.yaml +65 -60
  12. data/definitions/be_fr.yaml +14 -10
  13. data/definitions/be_nl.yaml +8 -4
  14. data/definitions/bg.yaml +12 -6
  15. data/definitions/br.yaml +6 -3
  16. data/definitions/ca.yaml +8 -6
  17. data/definitions/ch.yaml +21 -15
  18. data/definitions/cl.yaml +4 -2
  19. data/definitions/cr.yaml +5 -3
  20. data/definitions/cz.yaml +4 -2
  21. data/definitions/de.yaml +25 -14
  22. data/definitions/dk.yaml +26 -17
  23. data/definitions/ecb_target.yaml +4 -2
  24. data/definitions/el.yaml +23 -18
  25. data/definitions/es.yaml +31 -28
  26. data/definitions/federal_reserve.yaml +12 -12
  27. data/definitions/fedex.yaml +6 -6
  28. data/definitions/fi.yaml +26 -25
  29. data/definitions/fr.yaml +8 -4
  30. data/definitions/gb.yaml +9 -7
  31. data/definitions/hr.yaml +8 -6
  32. data/definitions/hu.yaml +8 -6
  33. data/definitions/ie.yaml +17 -16
  34. data/definitions/index.yaml +1 -1
  35. data/definitions/is.yaml +29 -19
  36. data/definitions/it.yaml +10 -9
  37. data/definitions/jp.yaml +92 -44
  38. data/definitions/li.yaml +25 -20
  39. data/definitions/lt.yaml +2 -1
  40. data/definitions/ma.yaml +7 -7
  41. data/definitions/mx.yaml +11 -11
  42. data/definitions/nerc.yaml +6 -6
  43. data/definitions/nl.yaml +22 -18
  44. data/definitions/no.yaml +19 -11
  45. data/definitions/north_america_informal.yaml +6 -6
  46. data/definitions/nyse.yaml +9 -8
  47. data/definitions/nz.yaml +33 -29
  48. data/definitions/ph.yaml +15 -8
  49. data/definitions/pl.yaml +27 -17
  50. data/definitions/pt.yaml +4 -2
  51. data/definitions/ro.yaml +21 -18
  52. data/definitions/se.yaml +24 -18
  53. data/definitions/sg.yaml +10 -9
  54. data/definitions/si.yaml +4 -2
  55. data/definitions/sk.yaml +4 -2
  56. data/definitions/united_nations.yaml +12 -12
  57. data/definitions/ups.yaml +6 -6
  58. data/definitions/us.yaml +12 -11
  59. data/definitions/ve.yaml +8 -4
  60. data/definitions/vi.yaml +6 -6
  61. data/definitions/za.yaml +26 -24
  62. data/holidays.gemspec +3 -1
  63. data/lib/generated_definitions/MANIFEST +1 -1
  64. data/lib/generated_definitions/ar.rb +8 -6
  65. data/lib/generated_definitions/at.rb +11 -9
  66. data/lib/generated_definitions/au.rb +75 -99
  67. data/lib/generated_definitions/be.rb +12 -10
  68. data/lib/generated_definitions/be_fr.rb +12 -10
  69. data/lib/generated_definitions/be_nl.rb +12 -10
  70. data/lib/generated_definitions/bg.rb +14 -13
  71. data/lib/generated_definitions/br.rb +11 -9
  72. data/lib/generated_definitions/ca.rb +20 -20
  73. data/lib/generated_definitions/ch.rb +41 -44
  74. data/lib/generated_definitions/cl.rb +9 -7
  75. data/lib/generated_definitions/cr.rb +9 -7
  76. data/lib/generated_definitions/cz.rb +9 -6
  77. data/lib/generated_definitions/de.rb +25 -25
  78. data/lib/generated_definitions/dk.rb +17 -15
  79. data/lib/generated_definitions/ecb_target.rb +9 -7
  80. data/lib/generated_definitions/el.rb +13 -11
  81. data/lib/generated_definitions/es.rb +35 -33
  82. data/lib/generated_definitions/europe.rb +234 -247
  83. data/lib/generated_definitions/federal_reserve.rb +11 -9
  84. data/lib/generated_definitions/fedex.rb +42 -0
  85. data/lib/generated_definitions/fi.rb +32 -36
  86. data/lib/generated_definitions/fr.rb +12 -10
  87. data/lib/generated_definitions/gb.rb +15 -13
  88. data/lib/generated_definitions/hr.rb +10 -8
  89. data/lib/generated_definitions/hu.rb +9 -7
  90. data/lib/generated_definitions/ie.rb +17 -17
  91. data/lib/generated_definitions/is.rb +26 -26
  92. data/lib/generated_definitions/it.rb +9 -7
  93. data/lib/generated_definitions/jp.rb +112 -89
  94. data/lib/generated_definitions/li.rb +14 -12
  95. data/lib/generated_definitions/lt.rb +9 -7
  96. data/lib/generated_definitions/ma.rb +7 -5
  97. data/lib/generated_definitions/mx.rb +7 -5
  98. data/lib/generated_definitions/nerc.rb +10 -8
  99. data/lib/generated_definitions/nl.rb +15 -13
  100. data/lib/generated_definitions/no.rb +16 -14
  101. data/lib/generated_definitions/north_america.rb +34 -37
  102. data/lib/generated_definitions/nyse.rb +10 -8
  103. data/lib/generated_definitions/nz.rb +40 -40
  104. data/lib/generated_definitions/ph.rb +17 -13
  105. data/lib/generated_definitions/pl.rb +25 -27
  106. data/lib/generated_definitions/pt.rb +10 -8
  107. data/lib/generated_definitions/ro.rb +11 -9
  108. data/lib/generated_definitions/scandinavia.rb +92 -102
  109. data/lib/generated_definitions/se.rb +25 -27
  110. data/lib/generated_definitions/sg.rb +11 -9
  111. data/lib/generated_definitions/si.rb +10 -8
  112. data/lib/generated_definitions/sk.rb +9 -7
  113. data/lib/generated_definitions/united_nations.rb +7 -5
  114. data/lib/generated_definitions/ups.rb +13 -12
  115. data/lib/generated_definitions/us.rb +20 -21
  116. data/lib/generated_definitions/ve.rb +11 -9
  117. data/lib/generated_definitions/vi.rb +7 -5
  118. data/lib/generated_definitions/za.rb +19 -17
  119. data/lib/holidays.rb +20 -83
  120. data/lib/holidays/date_calculator/weekend_modifier.rb +22 -5
  121. data/lib/holidays/definition/context/generator.rb +67 -29
  122. data/lib/holidays/definition/context/merger.rb +8 -8
  123. data/lib/holidays/definition/decorator/custom_method_proc.rb +28 -0
  124. data/lib/holidays/definition/decorator/custom_method_source.rb +30 -0
  125. data/lib/holidays/definition/entity/custom_method.rb +11 -0
  126. data/lib/holidays/definition/parser/custom_method.rb +69 -0
  127. data/lib/holidays/definition/repository/custom_methods.rb +27 -0
  128. data/lib/holidays/definition/repository/holidays_by_month.rb +1 -1
  129. data/lib/holidays/definition/repository/{proc_cache.rb → proc_result_cache.rb} +19 -4
  130. data/lib/holidays/definition/validator/custom_method.rb +31 -0
  131. data/lib/holidays/definition_factory.rb +42 -6
  132. data/lib/holidays/errors.rb +6 -0
  133. data/lib/holidays/load_all_definitions.rb +57 -0
  134. data/lib/holidays/option/context/parse_options.rb +26 -16
  135. data/lib/holidays/option_factory.rb +1 -0
  136. data/lib/holidays/use_case/context/between.rb +41 -14
  137. data/lib/holidays/use_case_factory.rb +2 -1
  138. data/lib/holidays/version.rb +1 -1
  139. data/test/data/test_single_custom_holiday_with_custom_procs.yaml +24 -0
  140. data/test/defs/test_defs_at.rb +1 -1
  141. data/test/defs/test_defs_au.rb +3 -2
  142. data/test/defs/test_defs_cr.rb +1 -0
  143. data/test/defs/test_defs_cz.rb +1 -0
  144. data/test/defs/test_defs_dk.rb +2 -2
  145. data/test/defs/test_defs_el.rb +7 -6
  146. data/test/defs/test_defs_europe.rb +40 -33
  147. data/test/defs/test_defs_fedex.rb +24 -0
  148. data/test/defs/test_defs_fi.rb +4 -3
  149. data/test/defs/test_defs_hr.rb +2 -2
  150. data/test/defs/test_defs_hu.rb +2 -2
  151. data/test/defs/test_defs_is.rb +2 -1
  152. data/test/defs/test_defs_it.rb +2 -1
  153. data/test/defs/test_defs_jp.rb +1 -1
  154. data/test/defs/test_defs_li.rb +1 -1
  155. data/test/defs/test_defs_ma.rb +2 -1
  156. data/test/defs/test_defs_mx.rb +4 -3
  157. data/test/defs/test_defs_nl.rb +7 -6
  158. data/test/defs/test_defs_no.rb +1 -0
  159. data/test/defs/test_defs_north_america.rb +4 -3
  160. data/test/defs/test_defs_nyse.rb +2 -1
  161. data/test/defs/test_defs_pl.rb +1 -0
  162. data/test/defs/test_defs_ro.rb +11 -11
  163. data/test/defs/test_defs_scandinavia.rb +12 -8
  164. data/test/defs/test_defs_se.rb +3 -2
  165. data/test/defs/test_defs_sg.rb +2 -1
  166. data/test/defs/test_defs_vi.rb +1 -1
  167. data/test/defs/test_defs_za.rb +3 -2
  168. data/test/holidays/date_calculator/test_weekend_modifier.rb +11 -0
  169. data/test/holidays/definition/context/test_generator.rb +64 -5
  170. data/test/holidays/definition/context/test_merger.rb +5 -2
  171. data/test/holidays/definition/decorator/test_custom_method_proc.rb +113 -0
  172. data/test/holidays/definition/decorator/test_custom_method_source.rb +96 -0
  173. data/test/holidays/definition/parser/test_custom_method.rb +79 -0
  174. data/test/holidays/definition/repository/test_custom_methods.rb +43 -0
  175. data/test/holidays/definition/repository/test_holidays_by_month.rb +0 -32
  176. data/test/holidays/definition/repository/test_proc_result_cache.rb +84 -0
  177. data/test/holidays/definition/validator/test_custom_method.rb +89 -0
  178. data/test/holidays/option/context/test_parse_options.rb +5 -0
  179. data/test/holidays/test_definition_factory.rb +17 -2
  180. data/test/holidays/use_case/context/test_between.rb +2 -0
  181. data/test/test_all_regions.rb +7 -49
  182. data/test/test_custom_holidays.rb +8 -2
  183. data/test/test_helper.rb +9 -2
  184. data/test/test_holidays.rb +9 -29
  185. metadata +46 -11
  186. data/lib/generated_definitions/fed_ex.rb +0 -41
  187. data/test/holidays/definition/repository/test_proc_cache.rb +0 -29
  188. data/test/test_parse_definitions.rb +0 -30
@@ -7,7 +7,7 @@ require File.expand_path(File.dirname(__FILE__)) + '/../test_helper'
7
7
  class AtDefinitionTests < Test::Unit::TestCase # :nodoc:
8
8
 
9
9
  def test_at
10
- {Date.civil(2009,1,1) => 'Neujahrstag',
10
+ {Date.civil(2009,1,1) => 'Neujahrstag',
11
11
  Date.civil(2009,4,13) => 'Ostermontag',
12
12
  Date.civil(2009,5,1) => 'Staatsfeiertag',
13
13
  Date.civil(2009,5,21) => 'Christi Himmelfahrt',
@@ -7,8 +7,8 @@ require File.expand_path(File.dirname(__FILE__)) + '/../test_helper'
7
7
  class AuDefinitionTests < Test::Unit::TestCase # :nodoc:
8
8
 
9
9
  def test_au
10
- {Date.civil(2007,1,1) => 'New Year\'s Day',
11
- Date.civil(2007,1,26) => 'Australia Day',
10
+ {Date.civil(2007,1,1) => 'New Year\'s Day',
11
+ Date.civil(2007,1,26) => 'Australia Day',
12
12
  Date.civil(2007,4,6) => 'Good Friday',
13
13
  Date.civil(2007,4,9) => 'Easter Monday',
14
14
  Date.civil(2007,4,25) => 'ANZAC Day'}.each do |date, name|
@@ -136,5 +136,6 @@ assert_equal "Boxing Day", Date.civil(2016, 12, 26).holidays(:au_vic)[0][:name]
136
136
  assert_equal "Boxing Day", Date.civil(2016, 12, 26).holidays(:au_nt)[0][:name]
137
137
  assert_equal "Christmas Day", Date.civil(2016, 12, 27).holidays(:au_vic)[0][:name]
138
138
  assert_equal "Christmas Day", Date.civil(2016, 12, 27).holidays(:au_nt)[0][:name]
139
+
139
140
  end
140
141
  end
@@ -18,5 +18,6 @@ class CrDefinitionTests < Test::Unit::TestCase # :nodoc:
18
18
  Date.civil(2016,12,25) => 'Navidad'}.each do |date, name|
19
19
  assert_equal name, (Holidays.on(date, :cr)[0] || {})[:name]
20
20
  end
21
+
21
22
  end
22
23
  end
@@ -8,6 +8,7 @@ class CzDefinitionTests < Test::Unit::TestCase # :nodoc:
8
8
 
9
9
  def test_cz
10
10
  {Date.civil(2010,1,1) => 'Den obnovy samostatného českého státu',
11
+ Date.civil(2016,3,25) => 'Velký pátek',
11
12
  Date.civil(2010,4,5) => 'Velikonoční pondělí',
12
13
  Date.civil(2010,5,1) => 'Svátek práce',
13
14
  Date.civil(2010,5,8) => 'Den vítězství',
@@ -7,8 +7,8 @@ require File.expand_path(File.dirname(__FILE__)) + '/../test_helper'
7
7
  class DkDefinitionTests < Test::Unit::TestCase # :nodoc:
8
8
 
9
9
  def test_dk
10
- {Date.civil(2007,1,1) => 'Nytårsdag',
11
- Date.civil(2007,2,18) => 'Fastelavn',
10
+ {Date.civil(2007,1,1) => 'Nytårsdag',
11
+ Date.civil(2007,2,18) => 'Fastelavn',
12
12
  Date.civil(2007,4,9) => 'Danmarks besættelse',
13
13
  Date.civil(2007,4,16) => 'Dronningens fødselsdag',
14
14
  Date.civil(2007,4,5) => 'Skærtorsdag',
@@ -7,13 +7,13 @@ require File.expand_path(File.dirname(__FILE__)) + '/../test_helper'
7
7
  class ElDefinitionTests < Test::Unit::TestCase # :nodoc:
8
8
 
9
9
  def test_el
10
- {Date.civil(2011,1,1) => 'Πρωτοχρονιά',
10
+ {Date.civil(2011,1,1) => 'Πρωτοχρονιά',
11
11
  Date.civil(2011,1,6) => 'Θεοφάνεια',
12
- Date.civil(2011,4,22) => 'Μεγάλη Παρασκευή',
13
- Date.civil(1970,4,25) => 'Μεγάλο Σάββατο',
14
- Date.civil(1985,4,14) => 'Κυριακή του Πάσχα',
15
- Date.civil(2011,4,24) => 'Κυριακή του Πάσχα',
16
- Date.civil(2027,5,2) => 'Κυριακή του Πάσχα',
12
+ Date.civil(2011,4,22) => 'Μεγάλη Παρασκευή',
13
+ Date.civil(1970,4,25) => 'Μεγάλο Σάββατο',
14
+ Date.civil(1985,4,14) => 'Κυριακή του Πάσχα',
15
+ Date.civil(2011,4,24) => 'Κυριακή του Πάσχα',
16
+ Date.civil(2027,5,2) => 'Κυριακή του Πάσχα',
17
17
  Date.civil(2046,4,30) => 'Δευτέρα του Πάσχα',
18
18
  Date.civil(2011,5,1) => 'Πρωτομαγιά',
19
19
  Date.civil(2011,6,13) => 'Αγίου Πνεύματος',
@@ -24,5 +24,6 @@ class ElDefinitionTests < Test::Unit::TestCase # :nodoc:
24
24
  Date.civil(2011,12,26) => 'Δεύτερη ημέρα των Χριστουγέννων'}.each do |date, name|
25
25
  assert_equal name, (Holidays.on(date, :el, :informal)[0] || {})[:name]
26
26
  end
27
+
27
28
  end
28
29
  end
@@ -7,7 +7,7 @@ require File.expand_path(File.dirname(__FILE__)) + '/../test_helper'
7
7
  class EuropeDefinitionTests < Test::Unit::TestCase # :nodoc:
8
8
 
9
9
  def test_europe
10
- {Date.civil(2009,1,1) => 'Neujahrstag',
10
+ {Date.civil(2009,1,1) => 'Neujahrstag',
11
11
  Date.civil(2009,4,13) => 'Ostermontag',
12
12
  Date.civil(2009,5,1) => 'Staatsfeiertag',
13
13
  Date.civil(2009,5,21) => 'Christi Himmelfahrt',
@@ -83,6 +83,7 @@ end
83
83
 
84
84
 
85
85
  {Date.civil(2010,1,1) => 'Den obnovy samostatného českého státu',
86
+ Date.civil(2016,3,25) => 'Velký pátek',
86
87
  Date.civil(2010,4,5) => 'Velikonoční pondělí',
87
88
  Date.civil(2010,5,1) => 'Svátek práce',
88
89
  Date.civil(2010,5,8) => 'Den vítězství',
@@ -98,8 +99,8 @@ end
98
99
  end
99
100
 
100
101
 
101
- {Date.civil(2007,1,1) => 'Nytårsdag',
102
- Date.civil(2007,2,18) => 'Fastelavn',
102
+ {Date.civil(2007,1,1) => 'Nytårsdag',
103
+ Date.civil(2007,2,18) => 'Fastelavn',
103
104
  Date.civil(2007,4,9) => 'Danmarks besættelse',
104
105
  Date.civil(2007,4,16) => 'Dronningens fødselsdag',
105
106
  Date.civil(2007,4,5) => 'Skærtorsdag',
@@ -193,13 +194,13 @@ assert_equal 'Buß- und Bettag', Holidays.on(Date.civil(2009,11,18), :de_sn)[0][
193
194
  end
194
195
 
195
196
 
196
- {Date.civil(2011,1,1) => 'Πρωτοχρονιά',
197
+ {Date.civil(2011,1,1) => 'Πρωτοχρονιά',
197
198
  Date.civil(2011,1,6) => 'Θεοφάνεια',
198
- Date.civil(2011,4,22) => 'Μεγάλη Παρασκευή',
199
- Date.civil(1970,4,25) => 'Μεγάλο Σάββατο',
200
- Date.civil(1985,4,14) => 'Κυριακή του Πάσχα',
201
- Date.civil(2011,4,24) => 'Κυριακή του Πάσχα',
202
- Date.civil(2027,5,2) => 'Κυριακή του Πάσχα',
199
+ Date.civil(2011,4,22) => 'Μεγάλη Παρασκευή',
200
+ Date.civil(1970,4,25) => 'Μεγάλο Σάββατο',
201
+ Date.civil(1985,4,14) => 'Κυριακή του Πάσχα',
202
+ Date.civil(2011,4,24) => 'Κυριακή του Πάσχα',
203
+ Date.civil(2027,5,2) => 'Κυριακή του Πάσχα',
203
204
  Date.civil(2046,4,30) => 'Δευτέρα του Πάσχα',
204
205
  Date.civil(2011,5,1) => 'Πρωτομαγιά',
205
206
  Date.civil(2011,6,13) => 'Αγίου Πνεύματος',
@@ -211,6 +212,7 @@ assert_equal 'Buß- und Bettag', Holidays.on(Date.civil(2009,11,18), :de_sn)[0][
211
212
  assert_equal name, (Holidays.on(date, :el, :informal)[0] || {})[:name]
212
213
  end
213
214
 
215
+
214
216
  {Date.civil(2009,1,1) => 'Año Nuevo',
215
217
  Date.civil(2009,1,6) => 'Día de Reyes',
216
218
  Date.civil(2009,4,10) => 'Viernes Santo',
@@ -332,8 +334,8 @@ assert_equal '2nd January', Holidays.on(Date.civil(2014,1,2), :gb_sct, :observed
332
334
  end
333
335
 
334
336
 
335
- {Date.civil(2012,1,1) => 'Nova godina',
336
- Date.civil(2012,1,6) => 'Sveta tri kralja',
337
+ {Date.civil(2012,1,1) => 'Nova godina',
338
+ Date.civil(2012,1,6) => 'Sveta tri kralja',
337
339
  Date.civil(2012,5,1) => 'Međunarodni praznik rada',
338
340
  Date.civil(2012,6,22) => 'Dan antifašističke borbe',
339
341
  Date.civil(2012,6,25) => 'Dan državnosti',
@@ -353,8 +355,8 @@ end
353
355
  end
354
356
 
355
357
 
356
- {Date.civil(2012,1,1) => 'Újév',
357
- Date.civil(2011,1,1) => 'Újév',
358
+ {Date.civil(2012,1,1) => 'Újév',
359
+ Date.civil(2011,1,1) => 'Újév',
358
360
  Date.civil(2012,3,15) => '1848/49-es forradalom és szabadságharc ünnepe',
359
361
  Date.civil(2011,4,25) => 'Húsvét hétfő',
360
362
  Date.civil(2012,4,9) => 'Húsvét hétfő',
@@ -399,7 +401,7 @@ end
399
401
  end
400
402
 
401
403
 
402
- {Date.civil(2007,1,1) => 'Nýársdagur',
404
+ {Date.civil(2007,1,1) => 'Nýársdagur',
403
405
  Date.civil(2007,1,6) => 'Þrettándinn',
404
406
  Date.civil(2007,1,19) => 'Bóndadagur',
405
407
  Date.civil(2007,2,18) => 'Konudagur',
@@ -422,7 +424,8 @@ end
422
424
  assert_equal name, (Holidays.on(date, :is, :informal)[0] || {})[:name]
423
425
  end
424
426
 
425
- {Date.civil(2007,1,1) => 'Capodanno',
427
+
428
+ {Date.civil(2007,1,1) => 'Capodanno',
426
429
  Date.civil(2007,1,6) => 'Epifania',
427
430
  Date.civil(2007,4,8) => 'Pasqua',
428
431
  Date.civil(2007,4,9) => 'Lunedì dell\'Angelo',
@@ -437,7 +440,8 @@ end
437
440
  assert_equal name, (Holidays.on(date, :it, :informal)[0] || {})[:name]
438
441
  end
439
442
 
440
- {Date.civil(2009,1,1) => 'Neujahrstag',
443
+
444
+ {Date.civil(2009,1,1) => 'Neujahrstag',
441
445
  Date.civil(2011,3,8) => 'Fasnachtsdienstag',
442
446
  Date.civil(2009,4,10) => 'Karfreitag',
443
447
  Date.civil(2009,4,12) => 'Ostern',
@@ -496,18 +500,19 @@ end
496
500
 
497
501
  {Date.civil(2008,1,1) => 'Nieuwjaar',
498
502
  Date.civil(2008,3,21) => 'Goede Vrijdag',
499
- Date.civil(2008,3,23) => 'Pasen',
500
- Date.civil(2008,3,24) => 'Pasen',
503
+ Date.civil(2008,3,23) => 'Eerste Pasen',
504
+ Date.civil(2008,3,24) => 'Tweede Pasen',
501
505
  Date.civil(2008,4,27) => 'Koningsdag',
502
506
  Date.civil(2008,5,1) => 'Hemelvaartsdag', # Ascension, Easter+39
503
507
  Date.civil(2008,5,5) => 'Bevrijdingsdag',
504
- Date.civil(2008,5,11) => 'Pinksteren', # Pentecost, Easter+49
505
- Date.civil(2008,5,12) => 'Pinksteren', # Pentecost, Easter+50
506
- Date.civil(2008,12,25) => 'Kerstmis',
507
- Date.civil(2008,12,26) => 'Kerstmis'}.each do |date, name|
508
+ Date.civil(2008,5,11) => 'Eerste Pinksteren', # Pentecost, Easter+49
509
+ Date.civil(2008,5,12) => 'Tweede Pinksteren', # Pentecost, Easter+50
510
+ Date.civil(2008,12,25) => 'Eerste Kerstmis',
511
+ Date.civil(2008,12,26) => 'Tweede Kerstmis'}.each do |date, name|
508
512
  assert_equal name, (Holidays.on(date, :nl, :informal)[0] || {})[:name]
509
513
  end
510
514
 
515
+
511
516
  {Date.civil(2010,1,1) => 'Nyttårsdag',
512
517
  Date.civil(2010,5,1) => '1. mai',
513
518
  Date.civil(2010,5,17) => '17. mai',
@@ -527,6 +532,7 @@ end
527
532
  assert_equal name, (Holidays.on(date, :no, :informal)[0] || {})[:name]
528
533
  end
529
534
 
535
+
530
536
  {Date.civil(2011,1,1) => 'Nowy Rok',
531
537
  Date.civil(2011,5,1) => 'Święto Państwowe (Święto Pracy)',
532
538
  Date.civil(2011,5,3) => 'Święto Narodowe Trzeciego Maja',
@@ -662,6 +668,7 @@ end
662
668
  assert_equal 'Wniebowzięcie Najświętszej Maryi Panny', (Holidays.on(Date.civil(2011,8,15), :pl)[0] || {})[:name]
663
669
  assert_equal 'Święto Wojska Polskiego', (Holidays.on(Date.civil(2011,8,15), :pl)[1] || {})[:name]
664
670
 
671
+
665
672
  {Date.civil(2008,1,1) => 'Ano Novo',
666
673
  Date.civil(2005,2,8) => 'Carnaval',
667
674
  Date.civil(2006,2,28) => 'Carnaval',
@@ -680,17 +687,17 @@ end
680
687
 
681
688
 
682
689
  {
683
- Date.civil(1961,4,9) => 'Paștele',
684
- Date.civil(1961,4,10) => 'Paștele',
685
- Date.civil(2013,5,5) => 'Paștele',
686
- Date.civil(2013,5,6) => 'Paștele',
687
- Date.civil(2027,5,2) => 'Paștele',
688
- Date.civil(2027,5,3) => 'Paștele',
689
- Date.civil(2012,6,4) => 'Rusaliile',
690
- Date.civil(2013,6,23) => 'Rusaliile',
691
- Date.civil(2013,6,24) => 'Rusaliile',
692
- Date.civil(1986,6,22) => 'Rusaliile',
693
- Date.civil(1986,6,23) => 'Rusaliile',
690
+ Date.civil(1961,4,9) => 'Paștele - duminică',
691
+ Date.civil(1961,4,10) => 'Paștele - luni',
692
+ Date.civil(2013,5,5) => 'Paștele - duminică',
693
+ Date.civil(2013,5,6) => 'Paștele - luni',
694
+ Date.civil(2027,5,2) => 'Paștele - duminică',
695
+ Date.civil(2027,5,3) => 'Paștele - luni',
696
+ Date.civil(2012,6,4) => 'Rusaliile - 51',
697
+ Date.civil(2013,6,23) => 'Rusaliile - 50',
698
+ Date.civil(2013,6,24) => 'Rusaliile - 51',
699
+ Date.civil(1986,6,22) => 'Rusaliile - 50',
700
+ Date.civil(1986,6,23) => 'Rusaliile - 51',
694
701
  Date.civil(2009,1,1) => 'Anul nou',
695
702
  Date.civil(2014,1,2) => 'Anul nou',
696
703
  Date.civil(2009,5,1) => 'Ziua muncii',
@@ -0,0 +1,24 @@
1
+ # encoding: utf-8
2
+ require File.expand_path(File.dirname(__FILE__)) + '/../test_helper'
3
+
4
+ # This file is generated by the Ruby Holiday gem.
5
+ #
6
+ # Definitions loaded: definitions/fedex.yaml
7
+ class FedexDefinitionTests < Test::Unit::TestCase # :nodoc:
8
+
9
+ def test_fedex
10
+ {Date.civil(2015,1,1) => 'New Year\'s Day',
11
+ Date.civil(2015,5,25) => 'Memorial Day',
12
+ Date.civil(2015,7,4) => 'Independence Day',
13
+ Date.civil(2015,9,7) => 'Labor Day',
14
+ Date.civil(2015,11,26) => 'Thanksgiving',
15
+ Date.civil(2015,11,27) => 'Day After Thanksgiving',
16
+ Date.civil(2013,11,28) => 'Thanksgiving',
17
+ Date.civil(2013,11,29) => 'Day After Thanksgiving',
18
+ Date.civil(2015,12,25) => 'Christmas Day',
19
+ Date.civil(2015,12,31) => 'New Year\'s Eve',}.each do |date, name|
20
+ assert_equal name, (Holidays.on(date, :ups)[0] || {})[:name]
21
+ end
22
+
23
+ end
24
+ end
@@ -7,10 +7,10 @@ require File.expand_path(File.dirname(__FILE__)) + '/../test_helper'
7
7
  class FiDefinitionTests < Test::Unit::TestCase # :nodoc:
8
8
 
9
9
  def test_fi
10
- {Date.civil(2008,1,1) => 'Uudenvuodenpäivä',
10
+ {Date.civil(2008,1,1) => 'Uudenvuodenpäivä',
11
11
  Date.civil(2008,1,6) => 'Loppiainen',
12
- Date.civil(2008,3,21) => 'Pitkäperjantai',
13
- Date.civil(2008,3,23) => 'Pääsiäispäivä',
12
+ Date.civil(2008,3,21) => 'Pitkäperjantai',
13
+ Date.civil(2008,3,23) => 'Pääsiäispäivä',
14
14
  Date.civil(2008,3,24) => '2. Pääsiäispäivä',
15
15
  Date.civil(2008,5,1) => 'Vappu',
16
16
  Date.civil(2008,5,1) => 'Helatorstai',
@@ -34,5 +34,6 @@ class FiDefinitionTests < Test::Unit::TestCase # :nodoc:
34
34
  Date.civil(2008,12,26) => 'Tapaninpäivä'}.each do |date, name|
35
35
  assert_equal name, (Holidays.on(date, :fi, :informal)[0] || {})[:name]
36
36
  end
37
+
37
38
  end
38
39
  end
@@ -7,8 +7,8 @@ require File.expand_path(File.dirname(__FILE__)) + '/../test_helper'
7
7
  class HrDefinitionTests < Test::Unit::TestCase # :nodoc:
8
8
 
9
9
  def test_hr
10
- {Date.civil(2012,1,1) => 'Nova godina',
11
- Date.civil(2012,1,6) => 'Sveta tri kralja',
10
+ {Date.civil(2012,1,1) => 'Nova godina',
11
+ Date.civil(2012,1,6) => 'Sveta tri kralja',
12
12
  Date.civil(2012,5,1) => 'Međunarodni praznik rada',
13
13
  Date.civil(2012,6,22) => 'Dan antifašističke borbe',
14
14
  Date.civil(2012,6,25) => 'Dan državnosti',
@@ -7,8 +7,8 @@ require File.expand_path(File.dirname(__FILE__)) + '/../test_helper'
7
7
  class HuDefinitionTests < Test::Unit::TestCase # :nodoc:
8
8
 
9
9
  def test_hu
10
- {Date.civil(2012,1,1) => 'Újév',
11
- Date.civil(2011,1,1) => 'Újév',
10
+ {Date.civil(2012,1,1) => 'Újév',
11
+ Date.civil(2011,1,1) => 'Újév',
12
12
  Date.civil(2012,3,15) => '1848/49-es forradalom és szabadságharc ünnepe',
13
13
  Date.civil(2011,4,25) => 'Húsvét hétfő',
14
14
  Date.civil(2012,4,9) => 'Húsvét hétfő',
@@ -7,7 +7,7 @@ require File.expand_path(File.dirname(__FILE__)) + '/../test_helper'
7
7
  class IsDefinitionTests < Test::Unit::TestCase # :nodoc:
8
8
 
9
9
  def test_is
10
- {Date.civil(2007,1,1) => 'Nýársdagur',
10
+ {Date.civil(2007,1,1) => 'Nýársdagur',
11
11
  Date.civil(2007,1,6) => 'Þrettándinn',
12
12
  Date.civil(2007,1,19) => 'Bóndadagur',
13
13
  Date.civil(2007,2,18) => 'Konudagur',
@@ -29,5 +29,6 @@ class IsDefinitionTests < Test::Unit::TestCase # :nodoc:
29
29
  Date.civil(2007,12,31) => 'Gamlárskvöld'}.each do |date, name|
30
30
  assert_equal name, (Holidays.on(date, :is, :informal)[0] || {})[:name]
31
31
  end
32
+
32
33
  end
33
34
  end
@@ -7,7 +7,7 @@ require File.expand_path(File.dirname(__FILE__)) + '/../test_helper'
7
7
  class ItDefinitionTests < Test::Unit::TestCase # :nodoc:
8
8
 
9
9
  def test_it
10
- {Date.civil(2007,1,1) => 'Capodanno',
10
+ {Date.civil(2007,1,1) => 'Capodanno',
11
11
  Date.civil(2007,1,6) => 'Epifania',
12
12
  Date.civil(2007,4,8) => 'Pasqua',
13
13
  Date.civil(2007,4,9) => 'Lunedì dell\'Angelo',
@@ -21,5 +21,6 @@ class ItDefinitionTests < Test::Unit::TestCase # :nodoc:
21
21
  Date.civil(2007,12,26) => 'Santo Stefano'}.each do |date, name|
22
22
  assert_equal name, (Holidays.on(date, :it, :informal)[0] || {})[:name]
23
23
  end
24
+
24
25
  end
25
26
  end
@@ -67,7 +67,7 @@ end
67
67
  end
68
68
 
69
69
  # before 2016, there is no mountain holiday.
70
- assert_nil Date.civil(2015,8,11).holidays(:jp)[0]
70
+ assert_nil Holidays.on(Date.civil(2015,8,11), :jp)[0]
71
71
 
72
72
  end
73
73
  end
@@ -7,7 +7,7 @@ require File.expand_path(File.dirname(__FILE__)) + '/../test_helper'
7
7
  class LiDefinitionTests < Test::Unit::TestCase # :nodoc:
8
8
 
9
9
  def test_li
10
- {Date.civil(2009,1,1) => 'Neujahrstag',
10
+ {Date.civil(2009,1,1) => 'Neujahrstag',
11
11
  Date.civil(2011,3,8) => 'Fasnachtsdienstag',
12
12
  Date.civil(2009,4,10) => 'Karfreitag',
13
13
  Date.civil(2009,4,12) => 'Ostern',
@@ -7,7 +7,7 @@ require File.expand_path(File.dirname(__FILE__)) + '/../test_helper'
7
7
  class MaDefinitionTests < Test::Unit::TestCase # :nodoc:
8
8
 
9
9
  def test_ma
10
- {Date.civil(2007,1,1) => 'Ras l\' âm',
10
+ {Date.civil(2007,1,1) => 'Ras l\' âm',
11
11
  Date.civil(2007,1,11) => 'Takdim watikat al-istiqlal',
12
12
  Date.civil(2007,5,1) => 'Eid Ash-Shughl',
13
13
  Date.civil(2007,7,30) => 'Eid Al-Ârch',
@@ -18,5 +18,6 @@ class MaDefinitionTests < Test::Unit::TestCase # :nodoc:
18
18
  Date.civil(2007,11,18) => 'Eid Al Istiqulal'}.each do |date, name|
19
19
  assert_equal name, (Holidays.on(date, :ma, :informal)[0] || {})[:name]
20
20
  end
21
+
21
22
  end
22
23
  end
@@ -7,8 +7,8 @@ require File.expand_path(File.dirname(__FILE__)) + '/../test_helper'
7
7
  class MxDefinitionTests < Test::Unit::TestCase # :nodoc:
8
8
 
9
9
  def test_mx
10
- {Date.civil(2007,1,1) => 'Año nuevo',
11
- Date.civil(2007,2,5) => 'Día de la Constitución',
10
+ {Date.civil(2007,1,1) => 'Año nuevo',
11
+ Date.civil(2007,2,5) => 'Día de la Constitución',
12
12
  Date.civil(2007,5,1) => 'Día del Trabajo',
13
13
  Date.civil(2007,5,5) => 'Cinco de Mayo',
14
14
  Date.civil(2007,9,16) => 'Día de la Independencia',
@@ -17,7 +17,8 @@ class MxDefinitionTests < Test::Unit::TestCase # :nodoc:
17
17
  Date.civil(2007,11,19) => 'Día de la Revolución',
18
18
  Date.civil(2007,12,25) => 'Navidad'}.each do |date, name|
19
19
  assert_equal name, (Holidays.on(date, :mx, :informal)[0] || {})[:name]
20
- end
20
+ end
21
+
21
22
 
22
23
  {Date.civil(2013,2,2) => 'Groundhog Day',
23
24
  Date.civil(2013,2,14) => 'Valentine\'s Day',
@@ -9,16 +9,17 @@ class NlDefinitionTests < Test::Unit::TestCase # :nodoc:
9
9
  def test_nl
10
10
  {Date.civil(2008,1,1) => 'Nieuwjaar',
11
11
  Date.civil(2008,3,21) => 'Goede Vrijdag',
12
- Date.civil(2008,3,23) => 'Pasen',
13
- Date.civil(2008,3,24) => 'Pasen',
12
+ Date.civil(2008,3,23) => 'Eerste Pasen',
13
+ Date.civil(2008,3,24) => 'Tweede Pasen',
14
14
  Date.civil(2008,4,27) => 'Koningsdag',
15
15
  Date.civil(2008,5,1) => 'Hemelvaartsdag', # Ascension, Easter+39
16
16
  Date.civil(2008,5,5) => 'Bevrijdingsdag',
17
- Date.civil(2008,5,11) => 'Pinksteren', # Pentecost, Easter+49
18
- Date.civil(2008,5,12) => 'Pinksteren', # Pentecost, Easter+50
19
- Date.civil(2008,12,25) => 'Kerstmis',
20
- Date.civil(2008,12,26) => 'Kerstmis'}.each do |date, name|
17
+ Date.civil(2008,5,11) => 'Eerste Pinksteren', # Pentecost, Easter+49
18
+ Date.civil(2008,5,12) => 'Tweede Pinksteren', # Pentecost, Easter+50
19
+ Date.civil(2008,12,25) => 'Eerste Kerstmis',
20
+ Date.civil(2008,12,26) => 'Tweede Kerstmis'}.each do |date, name|
21
21
  assert_equal name, (Holidays.on(date, :nl, :informal)[0] || {})[:name]
22
22
  end
23
+
23
24
  end
24
25
  end
@@ -25,5 +25,6 @@ class NoDefinitionTests < Test::Unit::TestCase # :nodoc:
25
25
  Date.civil(2010,5,24) => '2. pinsedag'}.each do |date, name|
26
26
  assert_equal name, (Holidays.on(date, :no, :informal)[0] || {})[:name]
27
27
  end
28
+
28
29
  end
29
30
  end