holidays 4.7.0 → 5.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 (81) hide show
  1. checksums.yaml +4 -4
  2. data/.gitmodules +3 -0
  3. data/CHANGELOG.md +9 -0
  4. data/CONTRIBUTING.md +21 -11
  5. data/Makefile +9 -6
  6. data/holidays.gemspec +1 -1
  7. data/lib/generated_definitions/MANIFEST +1 -0
  8. data/lib/generated_definitions/REGIONS.rb +1 -1
  9. data/lib/generated_definitions/hk.rb +112 -0
  10. data/lib/generated_definitions/kr.rb +4 -4
  11. data/lib/holidays/errors.rb +1 -0
  12. data/lib/holidays/finder/context/parse_options.rb +8 -3
  13. data/lib/holidays/load_all_definitions.rb +0 -11
  14. data/lib/holidays/version.rb +1 -1
  15. data/test/defs/test_defs_hk.rb +38 -0
  16. data/test/defs/test_defs_jp.rb +1 -0
  17. data/test/defs/test_defs_kr.rb +1 -1
  18. data/test/holidays/definition/validator/test_region.rb +4 -0
  19. data/test/holidays/finder/context/test_parse_options.rb +9 -1
  20. data/test/integration/test_all_regions.rb +4 -4
  21. data/test/integration/test_custom_holidays.rb +4 -4
  22. data/test/integration/test_holidays.rb +6 -6
  23. metadata +6 -60
  24. data/definitions/README.md +0 -353
  25. data/definitions/ar.yaml +0 -93
  26. data/definitions/at.yaml +0 -72
  27. data/definitions/au.yaml +0 -378
  28. data/definitions/be_fr.yaml +0 -69
  29. data/definitions/be_nl.yaml +0 -69
  30. data/definitions/bg.yaml +0 -127
  31. data/definitions/br.yaml +0 -77
  32. data/definitions/ca.yaml +0 -317
  33. data/definitions/ch.yaml +0 -193
  34. data/definitions/cl.yaml +0 -94
  35. data/definitions/cr.yaml +0 -65
  36. data/definitions/cz.yaml +0 -73
  37. data/definitions/de.yaml +0 -209
  38. data/definitions/dk.yaml +0 -130
  39. data/definitions/ecb_target.yaml +0 -44
  40. data/definitions/el.yaml +0 -84
  41. data/definitions/es.yaml +0 -203
  42. data/definitions/federal_reserve.yaml +0 -114
  43. data/definitions/fedex.yaml +0 -62
  44. data/definitions/fi.yaml +0 -115
  45. data/definitions/fr.yaml +0 -79
  46. data/definitions/gb.yaml +0 -151
  47. data/definitions/hr.yaml +0 -79
  48. data/definitions/hu.yaml +0 -63
  49. data/definitions/ie.yaml +0 -89
  50. data/definitions/index.yaml +0 -61
  51. data/definitions/is.yaml +0 -146
  52. data/definitions/it.yaml +0 -67
  53. data/definitions/jp.yaml +0 -321
  54. data/definitions/kr.yaml +0 -282
  55. data/definitions/li.yaml +0 -107
  56. data/definitions/lt.yaml +0 -89
  57. data/definitions/lu.yaml +0 -56
  58. data/definitions/ma.yaml +0 -52
  59. data/definitions/mx.yaml +0 -106
  60. data/definitions/my.yaml +0 -51
  61. data/definitions/nerc.yaml +0 -51
  62. data/definitions/nl.yaml +0 -73
  63. data/definitions/no.yaml +0 -90
  64. data/definitions/north_america_informal.yaml +0 -61
  65. data/definitions/nyse.yaml +0 -64
  66. data/definitions/nz.yaml +0 -163
  67. data/definitions/pe.yaml +0 -119
  68. data/definitions/ph.yaml +0 -94
  69. data/definitions/pl.yaml +0 -320
  70. data/definitions/pt.yaml +0 -89
  71. data/definitions/ro.yaml +0 -78
  72. data/definitions/se.yaml +0 -120
  73. data/definitions/sg.yaml +0 -56
  74. data/definitions/si.yaml +0 -86
  75. data/definitions/sk.yaml +0 -80
  76. data/definitions/united_nations.yaml +0 -189
  77. data/definitions/ups.yaml +0 -62
  78. data/definitions/us.yaml +0 -103
  79. data/definitions/ve.yaml +0 -74
  80. data/definitions/vi.yaml +0 -29
  81. data/definitions/za.yaml +0 -80
@@ -1,93 +0,0 @@
1
- # Argentinian holiday definitions for the Ruby Holiday gem.
2
- #
3
- # Updated: 2016-02-26.
4
- #
5
- # Sources:
6
- # - http://en.wikipedia.org/wiki/Public_holidays_in_Argentina
7
- # - http://servicios.lanacion.com.ar/feriados/2016
8
- ---
9
- months:
10
- 0:
11
- - name: Viernes Santo
12
- regions: [ar]
13
- function: easter(year)
14
- function_modifier: -2
15
- 1:
16
- - name: Año Nuevo
17
- regions: [ar]
18
- mday: 1
19
- 2:
20
- - name: Carnaval
21
- regions: [ar]
22
- mday: 8
23
- - name: Carnaval
24
- regions: [ar]
25
- mday: 9
26
- 3:
27
- - name: Día Nacional de la Memoria por la Verdad y la Justicia
28
- regions: [ar]
29
- mday: 24
30
- 4:
31
- - name: Día del Veterano y de los Caídos en la Guerra de Malvinas
32
- regions: [ar]
33
- mday: 2
34
- 5:
35
- - name: Día del Trabajador
36
- regions: [ar]
37
- mday: 1
38
- - name: Día de la Revolución de Mayo
39
- regions: [ar]
40
- mday: 25
41
- 6:
42
- - name: Día de la Bandera
43
- regions: [ar]
44
- mday: 20
45
- 7:
46
- - name: Feriado puente turístico
47
- regions: [ar]
48
- mday: 8
49
- - name: Día de la Independencia
50
- regions: [ar]
51
- mday: 9
52
- 8:
53
- - name: Paso a la Inmortalidad del General José de San Martín
54
- regions: [ar]
55
- mday: 15
56
- 10:
57
- - name: Día del Respeto a la Diversidad Cultural
58
- regions: [ar]
59
- mday: 12
60
- 11:
61
- - name: Día de la Soberanía Nacional
62
- regions: [ar]
63
- mday: 20
64
- 12:
65
- - name: Inmaculada Concepción de María
66
- regions: [ar]
67
- mday: 8
68
- - name: Feriado puente turístico
69
- regions: [ar]
70
- mday: 9
71
- - name: Navidad
72
- regions: [ar]
73
- mday: 25
74
- tests: |
75
- {Date.civil(2016,1,1) => 'Año Nuevo',
76
- Date.civil(2016,2,8) => 'Carnaval',
77
- Date.civil(2016,2,9) => 'Carnaval',
78
- Date.civil(2016,3,24) => 'Día Nacional de la Memoria por la Verdad y la Justicia',
79
- Date.civil(2016,3,25) => 'Viernes Santo',
80
- Date.civil(2016,4,2) => 'Día del Veterano y de los Caídos en la Guerra de Malvinas',
81
- Date.civil(2016,5,1) => 'Día del Trabajador',
82
- Date.civil(2016,5,25) => 'Día de la Revolución de Mayo',
83
- Date.civil(2016,6,20) => 'Día de la Bandera',
84
- Date.civil(2016,7,8) => 'Feriado puente turístico',
85
- Date.civil(2016,7,9) => 'Día de la Independencia',
86
- Date.civil(2016,8,15) => 'Paso a la Inmortalidad del General José de San Martín',
87
- Date.civil(2016,10,12) => 'Día del Respeto a la Diversidad Cultural',
88
- Date.civil(2016,11,20) => 'Día de la Soberanía Nacional',
89
- Date.civil(2016,12,8) => 'Inmaculada Concepción de María',
90
- Date.civil(2016,12,9) => 'Feriado puente turístico',
91
- Date.civil(2016,12,25) => 'Navidad'}.each do |date, name|
92
- assert_equal name, (Holidays.on(date, :ar, :informal)[0] || {})[:name]
93
- end
@@ -1,72 +0,0 @@
1
- # Austrian holiday definitions for the Ruby Holiday gem.
2
- #
3
- # Updated: 2011-08-31 by VGSG
4
- # Sources:
5
- # - http://de.wikipedia.org/wiki/Feiertage_in_%C3%96sterreich
6
- # - http://www.timeanddate.com/calendar/index.html?country=8
7
- # - http://www.germany.info/relaunch/welcome/travel/holidays.html
8
- ---
9
- months:
10
- 0:
11
- - name: Ostermontag
12
- regions: [at]
13
- function: easter(year)
14
- function_modifier: 1
15
- - name: Christi Himmelfahrt
16
- regions: [at]
17
- function: easter(year)
18
- function_modifier: 39
19
- - name: Pfingstmontag
20
- regions: [at]
21
- function: easter(year)
22
- function_modifier: 50
23
- - name: Fronleichnam
24
- regions: [at]
25
- function: easter(year)
26
- function_modifier: 60
27
- 1:
28
- - name: Neujahrstag
29
- regions: [at]
30
- mday: 1
31
- - name: Heilige Drei Könige
32
- regions: [at]
33
- mday: 6
34
- 5:
35
- - name: Staatsfeiertag
36
- regions: [at]
37
- mday: 1
38
- 8:
39
- - name: Mariä Himmelfahrt
40
- regions: [at]
41
- mday: 15
42
- 10:
43
- - name: Nationalfeiertag
44
- regions: [at]
45
- mday: 26
46
- 11:
47
- - name: Allerheiligen
48
- regions: [at]
49
- mday: 1
50
- 12:
51
- - name: Mariä Empfägnis
52
- regions: [at]
53
- mday: 8
54
- - name: 1. Weihnachtstag
55
- regions: [at]
56
- mday: 25
57
- - name: 2. Weihnachtstag
58
- regions: [at]
59
- mday: 26
60
- tests: |
61
- {Date.civil(2009,1,1) => 'Neujahrstag',
62
- Date.civil(2009,4,13) => 'Ostermontag',
63
- Date.civil(2009,5,1) => 'Staatsfeiertag',
64
- Date.civil(2009,5,21) => 'Christi Himmelfahrt',
65
- Date.civil(2009,6,1) => 'Pfingstmontag',
66
- Date.civil(2009,10,26) => 'Nationalfeiertag',
67
- Date.civil(2009,12,25) => '1. Weihnachtstag',
68
- Date.civil(2009,12,26) => '2. Weihnachtstag'}.each do |date, name|
69
- assert_equal name, (Holidays.on(date, :at, :informal)[0] || {})[:name]
70
- end
71
-
72
- assert_equal [], Holidays.on(Date.civil(2010,5,8), :at), '2010-05-08 is not a holiday in Austria'
@@ -1,378 +0,0 @@
1
- # Australian holiday definitions for the Ruby Holiday gem.
2
- # Updated: 2008-11-29.
3
- # Sources:
4
- # - http://en.wikipedia.org/wiki/Australian_public_holidays
5
- # - http://www.docep.wa.gov.au/lr/LabourRelations/Content/Wages%20and%20Conditions/Public%20Holidays/Public_Holidays.html
6
- # - http://www.wst.tas.gov.au/employment_info/public_holidays
7
- # - https://www.fairwork.gov.au/leave/public-holidays/list-of-public-holidays
8
- ---
9
- months:
10
- 0:
11
- - name: Good Friday
12
- regions: [au]
13
- function: easter(year)
14
- function_modifier: -2
15
- - name: Easter Saturday
16
- regions: [au_nsw, au_vic, au_qld, au_nt, au_act, au_sa]
17
- function: easter(year)
18
- function_modifier: -1
19
- - name: Easter Sunday
20
- regions: [au_nsw, au_vic]
21
- function: easter(year)
22
- - name: Easter Monday
23
- regions: [au]
24
- function: easter(year)
25
- function_modifier: 1
26
- 1:
27
- - name: New Year's Day
28
- regions: [au]
29
- mday: 1
30
- observed: to_monday_if_weekend(date)
31
- - name: Australia Day
32
- regions: [au]
33
- mday: 26
34
- observed: to_monday_if_weekend(date)
35
- 2:
36
- - name: Royal Hobart Regatta
37
- regions: [au_tas_south]
38
- week: 2
39
- wday: 1
40
- 3:
41
- - name: Labour Day
42
- regions: [au_wa]
43
- week: 1
44
- wday: 1
45
- - name: Eight Hours Day
46
- regions: [au_tas]
47
- week: 2
48
- wday: 1
49
- - name: Labour Day
50
- regions: [au_vic]
51
- week: 2
52
- wday: 1
53
- - name: March Public Holiday
54
- regions: [au_sa]
55
- function: march_pub_hol_sa(year)
56
- 4:
57
- - name: ANZAC Day
58
- regions: [au]
59
- mday: 25
60
- - name: ANZAC Day
61
- regions: [au_nsw, au_vic, au_qld, au_nt, au_act, au_sa, au_tas]
62
- mday: 25
63
- observed: to_monday_if_sunday(date)
64
- - name: ANZAC Day
65
- regions: [au_wa]
66
- mday: 25
67
- observed: to_monday_if_weekend(date)
68
- 5:
69
- - name: Labour Day
70
- regions: [au_qld]
71
- function: qld_labour_day_may(year)
72
- - name: May Day
73
- regions: [au_nt]
74
- week: 1
75
- wday: 1
76
- - name: May Public Holiday
77
- regions: [au_sa]
78
- function: may_pub_hol_sa(year)
79
- 6:
80
- - name: Foundation Day
81
- regions: [au_wa]
82
- week: 1
83
- wday: 1
84
- - name: Queen's Birthday
85
- regions: [au_act, au_nsw, au_sa, au_tas, au_nt, au_vic]
86
- week: 2
87
- wday: 1
88
- - name: Queen's Birthday
89
- regions: [au_qld]
90
- function: qld_queens_birthday_june(year)
91
- - name: Queensland Day
92
- regions: [au_qld]
93
- mday: 6
94
- type: informal
95
- 7:
96
- - name: Cairns Show
97
- regions: [au_qld_cairns]
98
- week: 3
99
- wday: 5
100
- 8:
101
- - name: Ekka
102
- regions: [au_qld_brisbane]
103
- week: -3
104
- wday: 3
105
- 9:
106
- - name: Queen's Birthday
107
- regions: [au_wa]
108
- week: -1
109
- wday: 1
110
- - name: "Family & Community Day"
111
- regions: [au_act]
112
- week: -1
113
- wday: 1
114
- 10:
115
- - name: Friday before the AFL Grand Final
116
- regions: [au_vic]
117
- function: afl_grand_final(year)
118
- - name: Labour Day
119
- regions: [au_act, au_nsw, au_sa]
120
- week: 1
121
- wday: 1
122
- - name: Labour Day
123
- regions: [au_qld]
124
- function: qld_labour_day_october(year)
125
- observed: to_monday_if_weekend(date)
126
- - name: Queen's Birthday
127
- regions: [au_qld]
128
- function: qld_queens_bday_october(year)
129
- observed: to_monday_if_weekend(date)
130
- - name: Royal Hobart Show
131
- regions: [au_tas_south]
132
- function: hobart_show_day(year)
133
- 11:
134
- - name: G20 Day
135
- regions: [au_qld_brisbane]
136
- function: g20_day_2014_only(year)
137
- - name: Recreation Day # http://www.timeanddate.com/holidays/australia/recreation-day
138
- regions: [au_tas_north]
139
- wday: 1
140
- week: 1
141
- - name: Melbourne Cup Day
142
- regions: [au_vic_melbourne]
143
- week: 1
144
- wday: 2
145
- 12:
146
- - name: Christmas Day # CHRISTMAS DAY - ACT, NSW, QLD, Tas, WA observe on 27th (and 25th) if 25th is a Sunday
147
- regions: [au_qld, au_nsw, au_act, au_tas, au_wa]
148
- mday: 25
149
- observed: to_tuesday_if_sunday_or_monday_if_saturday(date)
150
- - name: Christmas Day # CHRISTMAS DAY - SA observes on 26th if 25th is a Sunday (Boxing Day goes to 27th)
151
- regions: [au_sa]
152
- mday: 25
153
- observed: to_monday_if_weekend(date)
154
- - name: Christmas Day # CHRISTMAS DAY - Victoria and NT don't observe 25th if weekend - xmas is on the 27th
155
- regions: [au_vic, au_nt]
156
- function: xmas_to_weekday_if_weekend(year)
157
- - name: Boxing Day
158
- regions: [au_nsw, au_vic, au_qld, au_act, au_wa]
159
- mday: 26
160
- observed: to_tuesday_if_sunday_or_monday_if_saturday(date)
161
- - name: Boxing Day
162
- regions: [au_sa]
163
- function: to_weekday_if_boxing_weekend_from_year_or_to_tuesday_if_monday(year)
164
- - name: Boxing Day
165
- regions: [au_tas, au_nt]
166
- function: to_weekday_if_boxing_weekend_from_year(year)
167
-
168
- methods:
169
- afl_grand_final:
170
- arguments: year
171
- source: |
172
- case year
173
- when 2015
174
- Date.civil(2015, 10, 2)
175
- when 2016
176
- Date.civil(2017, 9, 30)
177
- end
178
- qld_queens_bday_october:
179
- # http://www.justice.qld.gov.au/fair-and-safe-work/industrial-relations/public-holidays/dates
180
- # celebrated twice in 2012
181
- # in october again from 2016
182
- arguments: year
183
- source: |
184
- if year >= 2016
185
- Holidays::Factory::DateCalculator.day_of_month_calculator.call(year, 10, 1, 1)
186
- elsif year == 2012
187
- 1
188
- else
189
- nil
190
- end
191
- qld_queens_birthday_june:
192
- # http://www.justice.qld.gov.au/fair-and-safe-work/industrial-relations/public-holidays/dates
193
- # in june until 2015
194
- arguments: year
195
- source: |
196
- if year <= 2015
197
- Holidays::Factory::DateCalculator.day_of_month_calculator.call(year, 6, 2, 1)
198
- end
199
- qld_labour_day_may:
200
- # http://www.justice.qld.gov.au/fair-and-safe-work/industrial-relations/public-holidays/dates
201
- # for 2013 to 2016 it was in October, otherwise it's in May
202
- arguments: year
203
- source: |
204
- if year < 2013 || year >= 2016
205
- Holidays::Factory::DateCalculator.day_of_month_calculator.call(year, 5, 1, 1)
206
- end
207
- qld_labour_day_october:
208
- # http://www.justice.qld.gov.au/fair-and-safe-work/industrial-relations/public-holidays/dates
209
- # for 2013 to 2016 it was in October, otherwise it's in May
210
- arguments: year
211
- source: |
212
- if year >= 2013 && year < 2016
213
- Holidays::Factory::DateCalculator.day_of_month_calculator.call(year, 10, 1, 1)
214
- end
215
- g20_day_2014_only:
216
- # http://www.justice.qld.gov.au/fair-and-safe-work/industrial-relations/public-holidays/dates
217
- # G20 day in brisbane, in 2014, on november 14
218
- arguments: year
219
- source: |
220
- year == 2014 ? 14 : nil
221
- hobart_show_day:
222
- # http://worksafe.tas.gov.au/__data/assets/pdf_file/0008/287036/Public_Holidays_2014.pdf
223
- # The Thursday before the fourth Saturday in October.
224
- arguments: year
225
- source: |
226
- fourth_sat_in_oct = Date.civil(year, 10, Holidays::Factory::DateCalculator.day_of_month_calculator.call(year, 10, 4, :saturday))
227
- fourth_sat_in_oct - 2 # the thursday before
228
- march_pub_hol_sa:
229
- # http://www.safework.sa.gov.au/show_page.jsp?id=2483#.VQ9Mfmb8-8E
230
- # The Holidays Act 1910 provides for the third Monday in May to be a public holiday. Since 2006 this public holiday has been observed on the second Monday in March through the issuing of a special Proclamation by the Governor.
231
- arguments: year
232
- source: |
233
- if year < 2006
234
- nil
235
- else
236
- Date.civil(year, 3, Holidays::Factory::DateCalculator.day_of_month_calculator.call(year, 3, :second, :monday))
237
- end
238
- may_pub_hol_sa:
239
- # http://www.safework.sa.gov.au/show_page.jsp?id=2483#.VQ9Mfmb8-8E
240
- # The Holidays Act 1910 provides for the third Monday in May to be a public holiday. Since 2006 this public holiday has been observed on the second Monday in March through the issuing of a special Proclamation by the Governor.
241
- arguments: year
242
- source: |
243
- if year >= 2006
244
- nil
245
- else
246
- Date.civil(year, 5, Holidays::Factory::DateCalculator.day_of_month_calculator.call(year, 5, :third, :monday))
247
- end
248
-
249
- tests: |
250
- {Date.civil(2007,1,1) => 'New Year\'s Day',
251
- Date.civil(2007,1,26) => 'Australia Day',
252
- Date.civil(2007,4,6) => 'Good Friday',
253
- Date.civil(2007,4,9) => 'Easter Monday',
254
- Date.civil(2007,4,25) => 'ANZAC Day'}.each do |date, name|
255
- assert_equal name, (Holidays.on(date, :au, :informal)[0] || {})[:name]
256
- end
257
-
258
- [:au_sa, :au_act, :au_nsw, :au_].each do |r|
259
- assert_equal 'Labour Day', Holidays.on(Date.civil(2007,10,1), r)[0][:name]
260
- end
261
-
262
- [:au_sa, :au_act, :au_nsw, :au_vic, :au_tas, :au_qld, :au_nt, :au_].each do |r|
263
- assert_equal 'Queen\'s Birthday', Holidays.on(Date.civil(2007,6,11), r)[0][:name]
264
- end
265
-
266
- assert_equal 'Labour Day', Holidays.on(Date.civil(2007,3,5), :au_wa)[0][:name]
267
- assert_equal 'Labour Day', Holidays.on(Date.civil(2007,3,12), :au_vic)[0][:name]
268
- assert_equal 'Labour Day', Holidays.on(Date.civil(2007,5,7), :au_qld)[0][:name]
269
-
270
- assert_equal 'Easter Sunday', Holidays.on(Date.civil(2007,4,8), :au_nsw)[0][:name]
271
-
272
- assert_equal 'May Day', Holidays.on(Date.civil(2007,5,7), :au_nt)[0][:name]
273
-
274
- assert_equal 'Eight Hours Day', Holidays.on(Date.civil(2007,3,12), :au_tas)[0][:name]
275
-
276
- assert_equal 'Labour Day', Holidays.on(Date.civil(2013,10,7), :au_qld)[0][:name]
277
- assert_equal 'Labour Day', Holidays.on(Date.civil(2012,5,7), :au_qld)[0][:name]
278
- assert_equal 'Labour Day', Holidays.on(Date.civil(2015,10,5), :au_qld)[0][:name]
279
- assert_equal 'Labour Day', Holidays.on(Date.civil(2016,5,2), :au_qld)[0][:name]
280
-
281
- assert_equal "Queen's Birthday", Holidays.on(Date.civil(2012,6,11), :au_qld)[0][:name]
282
- assert_equal "Queen's Birthday", Holidays.on(Date.civil(2012,10,1), :au_qld)[0][:name]
283
- assert_equal "Queen's Birthday", Holidays.on(Date.civil(2013,6,10), :au_qld)[0][:name]
284
- assert_equal "Queen's Birthday", Holidays.on(Date.civil(2015,6,8), :au_qld)[0][:name]
285
- assert_equal "Queen's Birthday", Holidays.on(Date.civil(2016,10,3), :au_qld)[0][:name]
286
-
287
- assert_equal "Queen's Birthday", Holidays.on(Date.civil(2014, 9, 29), :au_wa)[0][:name]
288
- assert_equal "Queen's Birthday", Holidays.on(Date.civil(2015, 9, 28), :au_wa)[0][:name]
289
- assert_equal "Queen's Birthday", Holidays.on(Date.civil(2016, 9, 26), :au_wa)[0][:name]
290
-
291
- assert_equal "Family & Community Day", Holidays.on(Date.civil(2014, 9, 29), :au_act)[0][:name]
292
- assert_equal "Family & Community Day", Holidays.on(Date.civil(2015, 9, 28), :au_act)[0][:name]
293
- assert_equal "Family & Community Day", Holidays.on(Date.civil(2016, 9, 26), :au_act)[0][:name]
294
-
295
- assert_equal 'Australia Day', Holidays.on(Date.civil(2014,1,26), :au_qld)[0][:name]
296
- assert_equal 'Australia Day', Holidays.on(Date.civil(2014,1,27), :au_qld, :observed)[0][:name]
297
-
298
- assert_equal 'Cairns Show', Holidays.on(Date.civil(2014,7,18), :au_qld_cairns)[0][:name]
299
- assert_equal 'Cairns Show', Holidays.on(Date.civil(2013,7,19), :au_qld_cairns)[0][:name]
300
-
301
- assert_equal 'Royal Hobart Show', Holidays.on(Date.civil(2013, 10, 24), :au_tas_south)[0][:name]
302
- assert_equal 'Royal Hobart Show', Holidays.on(Date.civil(2014, 10, 23), :au_tas_south)[0][:name]
303
- assert_equal 'Royal Hobart Show', Holidays.on(Date.civil(2015, 10, 22), :au_tas_south)[0][:name]
304
- assert_equal 'Royal Hobart Show', Holidays.on(Date.civil(2016, 10, 20), :au_tas_south)[0][:name]
305
-
306
- assert_equal 'Recreation Day', Holidays.on(Date.civil(2013, 11, 4), :au_tas_north)[0][:name]
307
- assert_equal 'Recreation Day', Holidays.on(Date.civil(2014, 11, 3), :au_tas_north)[0][:name]
308
- assert_equal 'Recreation Day', Holidays.on(Date.civil(2015, 11, 2), :au_tas_north)[0][:name]
309
- assert_equal 'Recreation Day', Holidays.on(Date.civil(2016, 11, 7), :au_tas_north)[0][:name]
310
-
311
- assert_nil Date.civil(2014,11,4).holidays(:au_vic)[0]
312
- assert_nil Date.civil(2015,11,3).holidays(:au_vic)[0]
313
-
314
- assert_equal 'Melbourne Cup Day', Holidays.on(Date.civil(2014,11,4), :au_vic_melbourne)[0][:name]
315
- assert_equal 'Melbourne Cup Day', Holidays.on(Date.civil(2015,11,3), :au_vic_melbourne)[0][:name]
316
-
317
- assert_equal 'Friday before the AFL Grand Final', Date.civil(2015,10,2).holidays(:au_vic)[0][:name]
318
- assert_equal 'Friday before the AFL Grand Final', Date.civil(2016,9, 30).holidays(:au_vic)[0][:name]
319
-
320
- assert_equal "May Public Holiday", Date.civil(2005, 5, 16).holidays(:au_sa)[0][:name]
321
- assert_equal [], Date.civil(2014, 5, 19).holidays(:au_sa)
322
-
323
- assert_equal [], Date.civil(2005, 3, 14).holidays(:au_sa)
324
- assert_equal "March Public Holiday", Date.civil(2014, 3, 10).holidays(:au_sa)[0][:name]
325
- assert_equal "March Public Holiday", Date.civil(2015, 3, 9).holidays(:au_sa)[0][:name]
326
- assert_equal "March Public Holiday", Date.civil(2016, 3, 14).holidays(:au_sa)[0][:name]
327
- assert_equal "March Public Holiday", Date.civil(2017, 3, 13).holidays(:au_sa)[0][:name]
328
-
329
- assert_equal "ANZAC Day", Date.civil(2015, 4, 25).holidays(:au_qld)[0][:name]
330
- assert_equal "ANZAC Day", Date.civil(2015, 4, 25).holidays(:au_wa)[0][:name]
331
- assert_equal [], Date.civil(2015, 4, 27).holidays(:au_qld, :observed)
332
- assert_equal "ANZAC Day", Date.civil(2015, 4, 27).holidays(:au_wa, :observed)[0][:name]
333
-
334
- # BOXING DAY - QLD observes weekend and monday
335
- assert_equal "Boxing Day", Date.civil(2015, 12, 26).holidays(:au_qld)[0][:name]
336
- assert_equal "Boxing Day", Date.civil(2015, 12, 28).holidays(:au_qld, :observed)[0][:name]
337
-
338
- # BOXING DAY - SA gets monday only. same for TAS and NT.
339
- assert_nil Date.civil(2015, 12, 26).holidays(:au_sa)[0]
340
- assert_equal "Boxing Day", Date.civil(2015, 12, 28).holidays(:au_sa)[0][:name]
341
- assert_nil Date.civil(2015, 12, 26).holidays(:au_tas)[0]
342
- assert_equal "Boxing Day", Date.civil(2015, 12, 28).holidays(:au_tas)[0][:name]
343
- assert_nil Date.civil(2015, 12, 26).holidays(:au_nt)[0]
344
- assert_equal "Boxing Day", Date.civil(2015, 12, 28).holidays(:au_nt)[0][:name]
345
-
346
- assert_equal 'G20 Day', Holidays.on(Date.civil(2014,11,14), :au_qld_brisbane)[0][:name]
347
- assert_equal [], Holidays.on(Date.civil(2014,11,14), :au_qld)
348
- assert_equal [], Holidays.on(Date.civil(2015,11,14), :au_qld_brisbane)
349
-
350
- assert_equal 'Royal Hobart Regatta', Holidays.on(Date.civil(2012, 2, 13), :au_tas_south)[0][:name]
351
- assert_equal 'Royal Hobart Regatta', Holidays.on(Date.civil(2014, 2, 10), :au_tas_south)[0][:name]
352
- assert_equal 'Royal Hobart Regatta', Holidays.on(Date.civil(2015, 2, 9), :au_tas_south)[0][:name]
353
- assert_equal 'Royal Hobart Regatta', Holidays.on(Date.civil(2016, 2, 8), :au_tas_south)[0][:name]
354
-
355
- # CHRISTMAS DAY - ACT, NSW, QLD, Tas, WA observe on 27th (and 25th) if 25th is a Sunday
356
- assert_equal "Christmas Day", Date.civil(2016, 12, 25).holidays(:au_qld)[0][:name]
357
- assert_equal "Christmas Day", Date.civil(2016, 12, 27).holidays(:au_qld, :observed)[0][:name]
358
- assert_equal "Christmas Day", Date.civil(2016, 12, 25).holidays(:au_nsw)[0][:name]
359
- assert_equal "Christmas Day", Date.civil(2016, 12, 27).holidays(:au_nsw, :observed)[0][:name]
360
- assert_equal "Christmas Day", Date.civil(2016, 12, 25).holidays(:au_act)[0][:name]
361
- assert_equal "Christmas Day", Date.civil(2016, 12, 27).holidays(:au_act, :observed)[0][:name]
362
- assert_equal "Christmas Day", Date.civil(2016, 12, 25).holidays(:au_tas)[0][:name]
363
- assert_equal "Christmas Day", Date.civil(2016, 12, 27).holidays(:au_tas, :observed)[0][:name]
364
- assert_equal "Christmas Day", Date.civil(2016, 12, 25).holidays(:au_wa)[0][:name]
365
- assert_equal "Christmas Day", Date.civil(2016, 12, 27).holidays(:au_wa, :observed)[0][:name]
366
-
367
- # CHRISTMAS DAY - SA observes on 26th if 25th is a Sunday (Boxing Day goes to 27th)
368
- assert_equal "Christmas Day", Date.civil(2016, 12, 25).holidays(:au_sa)[0][:name]
369
- assert_equal "Christmas Day", Date.civil(2016, 12, 26).holidays(:au_sa, :observed)[0][:name]
370
- assert_equal "Boxing Day", Date.civil(2016, 12, 27).holidays(:au_sa)[0][:name]
371
-
372
- # CHRISTMAS DAY - Victoria and NT don't observe 25th if weekend - xmas is on the 27th
373
- assert_nil Date.civil(2016, 12, 25).holidays(:au_vic)[0]
374
- assert_nil Date.civil(2016, 12, 25).holidays(:au_nt)[0]
375
- assert_equal "Boxing Day", Date.civil(2016, 12, 26).holidays(:au_vic)[0][:name]
376
- assert_equal "Boxing Day", Date.civil(2016, 12, 26).holidays(:au_nt)[0][:name]
377
- assert_equal "Christmas Day", Date.civil(2016, 12, 27).holidays(:au_vic)[0][:name]
378
- assert_equal "Christmas Day", Date.civil(2016, 12, 27).holidays(:au_nt)[0][:name]