holidays 1.0.3 → 1.0.4

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 (49) hide show
  1. data/.travis.yml +8 -0
  2. data/CHANGELOG +3 -0
  3. data/Gemfile +8 -0
  4. data/data/build_defs.rb +12 -8
  5. data/data/index.yaml +3 -1
  6. data/data/li.yaml +102 -0
  7. data/data/pl.yaml +310 -0
  8. data/data/united_nations.yaml +186 -185
  9. data/holidays.gemspec +61 -11
  10. data/lib/holidays.rb +19 -2
  11. data/lib/holidays/MANIFEST +24 -23
  12. data/lib/holidays/at.rb +17 -13
  13. data/lib/holidays/au.rb +21 -17
  14. data/lib/holidays/br.rb +18 -14
  15. data/lib/holidays/ca.rb +27 -23
  16. data/lib/holidays/cz.rb +18 -14
  17. data/lib/holidays/de.rb +18 -14
  18. data/lib/holidays/dk.rb +20 -16
  19. data/lib/holidays/el.rb +17 -13
  20. data/lib/holidays/es.rb +27 -23
  21. data/lib/holidays/europe.rb +163 -95
  22. data/lib/holidays/fi.rb +20 -16
  23. data/lib/holidays/fr.rb +18 -14
  24. data/lib/holidays/gb.rb +20 -16
  25. data/lib/holidays/ie.rb +17 -13
  26. data/lib/holidays/is.rb +21 -17
  27. data/lib/holidays/it.rb +18 -14
  28. data/lib/holidays/jp.rb +54 -50
  29. data/lib/holidays/li.rb +48 -0
  30. data/lib/holidays/mx.rb +27 -23
  31. data/lib/holidays/nl.rb +16 -12
  32. data/lib/holidays/no.rb +14 -10
  33. data/lib/holidays/north_america.rb +47 -43
  34. data/lib/holidays/nyse.rb +17 -13
  35. data/lib/holidays/nz.rb +24 -20
  36. data/lib/holidays/pl.rb +80 -0
  37. data/lib/holidays/pt.rb +19 -15
  38. data/lib/holidays/scandinavia.rb +51 -47
  39. data/lib/holidays/se.rb +21 -17
  40. data/lib/holidays/united_nations.rb +68 -8
  41. data/lib/holidays/ups.rb +15 -11
  42. data/lib/holidays/us.rb +22 -18
  43. data/lib/holidays/za.rb +19 -15
  44. data/rakefile.rb +6 -4
  45. data/test/defs/test_defs_europe.rb +161 -1
  46. data/test/defs/test_defs_li.rb +35 -0
  47. data/test/defs/test_defs_pl.rb +145 -0
  48. data/test/test_all_regions.rb +48 -0
  49. metadata +190 -42
@@ -0,0 +1,48 @@
1
+ # encoding: utf-8
2
+ module Holidays
3
+ # This file is generated by the Ruby Holidays gem.
4
+ #
5
+ # Definitions loaded: data/li.yaml
6
+ #
7
+ # To use the definitions in this file, load it right after you load the
8
+ # Holiday gem:
9
+ #
10
+ # require 'holidays'
11
+ # require 'holidays/li'
12
+ #
13
+ # All the definitions are available at https://github.com/alexdunae/holidays
14
+ module LI # :nodoc:
15
+ def self.defined_regions
16
+ [:li]
17
+ end
18
+
19
+ def self.holidays_by_month
20
+ {
21
+ 0 => [{:function => lambda { |year| Holidays.easter(year)-47 }, :function_id => "easter(year)-47", :name => "Fasnachtsdienstag", :regions => [:li]},
22
+ {:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Karfreitag", :regions => [:li]},
23
+ {:function => lambda { |year| Holidays.easter(year) }, :function_id => "easter(year)", :type => :informal, :name => "Ostern", :regions => [:li]},
24
+ {:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :name => "Ostermontag", :regions => [:li]},
25
+ {:function => lambda { |year| Holidays.easter(year)+39 }, :function_id => "easter(year)+39", :name => "Auffahrt", :regions => [:li]},
26
+ {:function => lambda { |year| Holidays.easter(year)+50 }, :function_id => "easter(year)+50", :name => "Pfingstmontag", :regions => [:li]},
27
+ {:function => lambda { |year| Holidays.easter(year)+60 }, :function_id => "easter(year)+60", :name => "Fronleichnam", :regions => [:li]}],
28
+ 1 => [{:mday => 1, :name => "Neujahrstag", :regions => [:li]},
29
+ {:mday => 6, :name => "Heilige Drei Könige", :regions => [:li]}],
30
+ 2 => [{:mday => 2, :name => "Maria Lichtmess", :regions => [:li]}],
31
+ 3 => [{:mday => 19, :name => "St. Josef", :regions => [:li]}],
32
+ 5 => [{:mday => 1, :name => "Tag der Arbeit", :regions => [:li]}],
33
+ 8 => [{:mday => 15, :name => "Staatsfeiertag", :regions => [:li]}],
34
+ 9 => [{:mday => 8, :name => "Maria Geburt", :regions => [:li]}],
35
+ 11 => [{:mday => 1, :name => "Allerheiligen", :regions => [:li]}],
36
+ 12 => [{:mday => 8, :name => "Maria Empfängnis", :regions => [:li]},
37
+ {:mday => 24, :name => "Heilig Abend", :regions => [:li]},
38
+ {:mday => 25, :name => "Weihnachten", :regions => [:li]},
39
+ {:mday => 26, :name => "Stefanstag", :regions => [:li]},
40
+ {:mday => 31, :name => "Silvester", :regions => [:li]}]
41
+ }
42
+ end
43
+ end
44
+
45
+
46
+ end
47
+
48
+ Holidays.merge_defs(Holidays::LI.defined_regions, Holidays::LI.holidays_by_month)
data/lib/holidays/mx.rb CHANGED
@@ -1,52 +1,56 @@
1
1
  # encoding: utf-8
2
2
  module Holidays
3
- # This file is generated by the Ruby Holiday gem.
3
+ # This file is generated by the Ruby Holidays gem.
4
4
  #
5
5
  # Definitions loaded: data/mx.yaml, data/north_america_informal.yaml
6
6
  #
7
- # To use the definitions in this file, load them right after you load the
7
+ # To use the definitions in this file, load it right after you load the
8
8
  # Holiday gem:
9
9
  #
10
10
  # require 'holidays'
11
11
  # require 'holidays/mx'
12
12
  #
13
- # More definitions are available at http://code.dunae.ca/holidays.
13
+ # All the definitions are available at https://github.com/alexdunae/holidays
14
14
  module MX # :nodoc:
15
- DEFINED_REGIONS = [:mx, :mx_pue, :us, :ca]
15
+ def self.defined_regions
16
+ [:mx, :mx_pue, :us, :ca]
17
+ end
16
18
 
17
- HOLIDAYS_BY_MONTH = {
19
+ def self.holidays_by_month
20
+ {
21
+ 1 => [{:mday => 1, :name => "Año nuevo", :regions => [:mx]},
22
+ {:mday => 6, :name => "Dia de los Santos Reyes", :regions => [:mx]}],
23
+ 2 => [{:wday => 1, :week => 1, :name => "Día de la Constitución", :regions => [:mx]},
24
+ {:mday => 2, :type => :informal, :name => "Groundhog Day", :regions => [:us, :ca]},
25
+ {:mday => 14, :type => :informal, :name => "Valentine's Day", :regions => [:us, :ca]}],
26
+ 3 => [{:wday => 1, :week => 3, :name => "Natalicio de Benito Juárez", :regions => [:mx]},
27
+ {:mday => 17, :type => :informal, :name => "St. Patrick's Day", :regions => [:us, :ca]}],
28
+ 4 => [{:mday => 30, :type => :informal, :name => "Día del Niño", :regions => [:mx]},
29
+ {:mday => 1, :type => :informal, :name => "April Fool's Day", :regions => [:us, :ca]},
30
+ {:mday => 22, :type => :informal, :name => "Earth Day", :regions => [:us, :ca]}],
18
31
  5 => [{:mday => 1, :name => "Día del Trabajo", :regions => [:mx]},
19
32
  {:mday => 5, :type => :informal, :name => "Cinco de Mayo", :regions => [:mx]},
20
33
  {:mday => 5, :name => "La Batalla de Puebla", :regions => [:mx_pue]},
21
34
  {:mday => 10, :type => :informal, :name => "Día de la Madre", :regions => [:mx]},
22
35
  {:mday => 15, :type => :informal, :name => "Día del Maestro", :regions => [:mx]},
23
36
  {:wday => 0, :week => 3, :type => :informal, :name => "Father's Day", :regions => [:us, :ca]}],
37
+ 6 => [{:wday => 0, :week => 3, :type => :informal, :name => "Día del Padre", :regions => [:mx]}],
38
+ 9 => [{:mday => 15, :name => "Grito de Dolores", :regions => [:mx]},
39
+ {:mday => 16, :name => "Día de la Independencia", :regions => [:mx]}],
40
+ 10 => [{:mday => 12, :type => :informal, :name => "Día de la Raza", :regions => [:mx]},
41
+ {:mday => 31, :type => :informal, :name => "Halloween", :regions => [:us, :ca]}],
24
42
  11 => [{:mday => 1, :type => :informal, :name => "Todos los Santos", :regions => [:mx]},
25
43
  {:mday => 2, :type => :informal, :name => "Los Fieles Difuntos", :regions => [:mx]},
26
44
  {:wday => 1, :week => 3, :name => "Día de la Revolución", :regions => [:mx]}],
27
- 6 => [{:wday => 0, :week => 3, :type => :informal, :name => "Día del Padre", :regions => [:mx]}],
28
- 1 => [{:mday => 1, :name => "Año nuevo", :regions => [:mx]},
29
- {:mday => 6, :name => "Dia de los Santos Reyes", :regions => [:mx]}],
30
45
  12 => [{:mday => 12, :type => :informal, :name => "Día de la Virgen de Guadalupe", :regions => [:mx]},
31
46
  {:mday => 24, :type => :informal, :name => "Nochebuena", :regions => [:mx]},
32
47
  {:mday => 25, :name => "Navidad", :regions => [:mx]},
33
- {:mday => 28, :name => "Los Santos Inocentes", :regions => [:mx]}],
34
- 2 => [{:wday => 1, :week => 1, :name => "Día de la Constitución", :regions => [:mx]},
35
- {:mday => 2, :type => :informal, :name => "Groundhog Day", :regions => [:us, :ca]},
36
- {:mday => 14, :type => :informal, :name => "Valentine's Day", :regions => [:us, :ca]}],
37
- 3 => [{:wday => 1, :week => 3, :name => "Natalicio de Benito Juárez", :regions => [:mx]},
38
- {:mday => 17, :type => :informal, :name => "St. Patrick's Day", :regions => [:us, :ca]}],
39
- 9 => [{:mday => 15, :name => "Grito de Dolores", :regions => [:mx]},
40
- {:mday => 16, :name => "Día de la Independencia", :regions => [:mx]}],
41
- 4 => [{:mday => 30, :type => :informal, :name => "Día del Niño", :regions => [:mx]},
42
- {:mday => 1, :type => :informal, :name => "April Fool's Day", :regions => [:us, :ca]},
43
- {:mday => 22, :type => :informal, :name => "Earth Day", :regions => [:us, :ca]}],
44
- 10 => [{:mday => 12, :type => :informal, :name => "Día de la Raza", :regions => [:mx]},
45
- {:mday => 31, :type => :informal, :name => "Halloween", :regions => [:us, :ca]}]
46
- }
48
+ {:mday => 28, :name => "Los Santos Inocentes", :regions => [:mx]}]
49
+ }
50
+ end
47
51
  end
48
52
 
49
53
 
50
54
  end
51
55
 
52
- Holidays.merge_defs(Holidays::MX::DEFINED_REGIONS, Holidays::MX::HOLIDAYS_BY_MONTH)
56
+ Holidays.merge_defs(Holidays::MX.defined_regions, Holidays::MX.holidays_by_month)
data/lib/holidays/nl.rb CHANGED
@@ -1,37 +1,41 @@
1
1
  # encoding: utf-8
2
2
  module Holidays
3
- # This file is generated by the Ruby Holiday gem.
3
+ # This file is generated by the Ruby Holidays gem.
4
4
  #
5
5
  # Definitions loaded: data/nl.yaml
6
6
  #
7
- # To use the definitions in this file, load them right after you load the
7
+ # To use the definitions in this file, load it right after you load the
8
8
  # Holiday gem:
9
9
  #
10
10
  # require 'holidays'
11
11
  # require 'holidays/nl'
12
12
  #
13
- # More definitions are available at http://code.dunae.ca/holidays.
13
+ # All the definitions are available at https://github.com/alexdunae/holidays
14
14
  module NL # :nodoc:
15
- DEFINED_REGIONS = [:nl]
15
+ def self.defined_regions
16
+ [:nl]
17
+ end
16
18
 
17
- HOLIDAYS_BY_MONTH = {
18
- 5 => [{:mday => 4, :name => "Dodenherdenking", :regions => [:nl]},
19
- {:mday => 5, :name => "Bevrijdingsdag", :regions => [:nl]}],
20
- 0 => [{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Goede Vrijdag", :regions => [:nl]},
19
+ def self.holidays_by_month
20
+ {
21
+ 0 => [{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Goede Vrijdag", :regions => [:nl]},
21
22
  {:function => lambda { |year| Holidays.easter(year) }, :function_id => "easter(year)", :name => "Pasen", :regions => [:nl]},
22
23
  {:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :name => "Pasen", :regions => [:nl]},
23
24
  {:function => lambda { |year| Holidays.easter(year)+39 }, :function_id => "easter(year)+39", :name => "Hemelvaartsdag", :regions => [:nl]},
24
25
  {:function => lambda { |year| Holidays.easter(year)+49 }, :function_id => "easter(year)+49", :name => "Pinksteren", :regions => [:nl]},
25
26
  {:function => lambda { |year| Holidays.easter(year)+50 }, :function_id => "easter(year)+50", :name => "Pinksteren", :regions => [:nl]}],
26
27
  1 => [{:mday => 1, :name => "Nieuwjaar", :regions => [:nl]}],
28
+ 4 => [{:mday => 30, :name => "Koninginnedag", :regions => [:nl]}],
29
+ 5 => [{:mday => 4, :name => "Dodenherdenking", :regions => [:nl]},
30
+ {:mday => 5, :name => "Bevrijdingsdag", :regions => [:nl]}],
27
31
  12 => [{:mday => 5, :type => :informal, :name => "Sinterklaas", :regions => [:nl]},
28
32
  {:mday => 25, :name => "Kerstmis", :regions => [:nl]},
29
- {:mday => 26, :name => "Kerstmis", :regions => [:nl]}],
30
- 4 => [{:mday => 30, :name => "Koninginnedag", :regions => [:nl]}]
31
- }
33
+ {:mday => 26, :name => "Kerstmis", :regions => [:nl]}]
34
+ }
35
+ end
32
36
  end
33
37
 
34
38
 
35
39
  end
36
40
 
37
- Holidays.merge_defs(Holidays::NL::DEFINED_REGIONS, Holidays::NL::HOLIDAYS_BY_MONTH)
41
+ Holidays.merge_defs(Holidays::NL.defined_regions, Holidays::NL.holidays_by_month)
data/lib/holidays/no.rb CHANGED
@@ -1,23 +1,24 @@
1
1
  # encoding: utf-8
2
2
  module Holidays
3
- # This file is generated by the Ruby Holiday gem.
3
+ # This file is generated by the Ruby Holidays gem.
4
4
  #
5
5
  # Definitions loaded: data/no.yaml
6
6
  #
7
- # To use the definitions in this file, load them right after you load the
7
+ # To use the definitions in this file, load it right after you load the
8
8
  # Holiday gem:
9
9
  #
10
10
  # require 'holidays'
11
11
  # require 'holidays/no'
12
12
  #
13
- # More definitions are available at http://code.dunae.ca/holidays.
13
+ # All the definitions are available at https://github.com/alexdunae/holidays
14
14
  module NO # :nodoc:
15
- DEFINED_REGIONS = [:no]
15
+ def self.defined_regions
16
+ [:no]
17
+ end
16
18
 
17
- HOLIDAYS_BY_MONTH = {
18
- 5 => [{:mday => 1, :name => "1. mai", :regions => [:no]},
19
- {:mday => 17, :name => "17. mai", :regions => [:no]}],
20
- 0 => [{:function => lambda { |year| Holidays.easter(year)-49 }, :function_id => "easter(year)-49", :type => :informal, :name => "Fastelavn", :regions => [:no]},
19
+ def self.holidays_by_month
20
+ {
21
+ 0 => [{:function => lambda { |year| Holidays.easter(year)-49 }, :function_id => "easter(year)-49", :type => :informal, :name => "Fastelavn", :regions => [:no]},
21
22
  {:function => lambda { |year| Holidays.easter(year)-7 }, :function_id => "easter(year)-7", :name => "Palmesøndag", :regions => [:no]},
22
23
  {:function => lambda { |year| Holidays.easter(year)-3 }, :function_id => "easter(year)-3", :name => "Skjærtorsdag", :regions => [:no]},
23
24
  {:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Langfredag", :regions => [:no]},
@@ -27,14 +28,17 @@ module Holidays
27
28
  {:function => lambda { |year| Holidays.easter(year)+49 }, :function_id => "easter(year)+49", :name => "1. pinsedag", :regions => [:no]},
28
29
  {:function => lambda { |year| Holidays.easter(year)+50 }, :function_id => "easter(year)+50", :name => "2. pinsedag", :regions => [:no]}],
29
30
  1 => [{:mday => 1, :name => "Nyttårsdag", :regions => [:no]}],
31
+ 5 => [{:mday => 1, :name => "1. mai", :regions => [:no]},
32
+ {:mday => 17, :name => "17. mai", :regions => [:no]}],
30
33
  12 => [{:mday => 24, :type => :informal, :name => "Julaften", :regions => [:no]},
31
34
  {:mday => 25, :name => "1. juledag", :regions => [:no]},
32
35
  {:mday => 26, :name => "2. juledag", :regions => [:no]},
33
36
  {:mday => 31, :type => :informal, :name => "Nyttårsaften", :regions => [:no]}]
34
- }
37
+ }
38
+ end
35
39
  end
36
40
 
37
41
 
38
42
  end
39
43
 
40
- Holidays.merge_defs(Holidays::NO::DEFINED_REGIONS, Holidays::NO::HOLIDAYS_BY_MONTH)
44
+ Holidays.merge_defs(Holidays::NO.defined_regions, Holidays::NO.holidays_by_month)
@@ -1,20 +1,42 @@
1
1
  # encoding: utf-8
2
2
  module Holidays
3
- # This file is generated by the Ruby Holiday gem.
3
+ # This file is generated by the Ruby Holidays gem.
4
4
  #
5
5
  # Definitions loaded: data/ca.yaml, data/mx.yaml, data/us.yaml, data/north_america_informal.yaml
6
6
  #
7
- # To use the definitions in this file, load them right after you load the
7
+ # To use the definitions in this file, load it right after you load the
8
8
  # Holiday gem:
9
9
  #
10
10
  # require 'holidays'
11
11
  # require 'holidays/north_america'
12
12
  #
13
- # More definitions are available at http://code.dunae.ca/holidays.
13
+ # All the definitions are available at https://github.com/alexdunae/holidays
14
14
  module North_America # :nodoc:
15
- DEFINED_REGIONS = [:ca, :ca_qc, :ca_nf, :ca_nt, :ca_nu, :ca_ab, :ca_on, :ca_sk, :ca_mb, :ca_bc, :ca_ns, :ca_yk, :mx, :mx_pue, :us, :us_dc]
15
+ def self.defined_regions
16
+ [:ca, :ca_qc, :ca_ab, :ca_on, :ca_sk, :ca_mb, :ca_nf, :ca_nt, :ca_nu, :ca_bc, :ca_ns, :ca_yk, :mx, :mx_pue, :us, :us_dc]
17
+ end
16
18
 
17
- HOLIDAYS_BY_MONTH = {
19
+ def self.holidays_by_month
20
+ {
21
+ 0 => [{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Good Friday", :regions => [:ca]},
22
+ {:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :type => :informal, :name => "Easter Monday", :regions => [:ca]},
23
+ {:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :type => :informal, :name => "Good Friday", :regions => [:us]}],
24
+ 1 => [{:mday => 1, :name => "New Year's Day", :regions => [:ca]},
25
+ {:mday => 2, :name => "New Year's", :regions => [:ca_qc]},
26
+ {:mday => 1, :name => "Año nuevo", :regions => [:mx]},
27
+ {:mday => 6, :name => "Dia de los Santos Reyes", :regions => [:mx]},
28
+ {:mday => 1, :observed => lambda { |date| Holidays.to_weekday_if_weekend(date) }, :observed_id => "to_weekday_if_weekend", :name => "New Year's Day", :regions => [:us]},
29
+ {:wday => 1, :week => 3, :name => "Martin Luther King, Jr. Day", :regions => [:us]},
30
+ {:function => lambda { |year| Holidays.us_inauguration_day(year) }, :function_id => "us_inauguration_day(year)", :name => "Inauguration Day", :regions => [:us_dc]}],
31
+ 2 => [{:wday => 1, :week => 3, :name => "Family Day", :regions => [:ca_ab, :ca_on, :ca_sk]},
32
+ {:wday => 1, :week => 3, :name => "Louis Riel Day", :regions => [:ca_mb]},
33
+ {:wday => 1, :week => 1, :name => "Día de la Constitución", :regions => [:mx]},
34
+ {:wday => 1, :week => 3, :name => "Presidents' Day", :regions => [:us]},
35
+ {:mday => 2, :type => :informal, :name => "Groundhog Day", :regions => [:us, :ca]},
36
+ {:mday => 14, :type => :informal, :name => "Valentine's Day", :regions => [:us, :ca]}],
37
+ 3 => [{:mday => 23, :name => "St. George's Day", :regions => [:ca_nf]},
38
+ {:wday => 1, :week => 3, :name => "Natalicio de Benito Juárez", :regions => [:mx]},
39
+ {:mday => 17, :type => :informal, :name => "St. Patrick's Day", :regions => [:us, :ca]}],
18
40
  5 => [{:function => lambda { |year| Holidays.ca_victoria_day(year) }, :function_id => "ca_victoria_day(year)", :name => "Victoria Day", :regions => [:ca]},
19
41
  {:function => lambda { |year| Holidays.ca_victoria_day(year) }, :function_id => "ca_victoria_day(year)", :name => "National Patriotes Day", :regions => [:ca_qc]},
20
42
  {:mday => 1, :name => "Día del Trabajo", :regions => [:mx]},
@@ -24,64 +46,46 @@ module Holidays
24
46
  {:mday => 15, :type => :informal, :name => "Día del Maestro", :regions => [:mx]},
25
47
  {:wday => 1, :week => -1, :name => "Memorial Day", :regions => [:us]},
26
48
  {:wday => 0, :week => 3, :type => :informal, :name => "Father's Day", :regions => [:us, :ca]}],
27
- 0 => [{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Good Friday", :regions => [:ca]},
28
- {:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :type => :informal, :name => "Easter Monday", :regions => [:ca]},
29
- {:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :type => :informal, :name => "Good Friday", :regions => [:us]}],
30
- 11 => [{:mday => 11, :name => "Remembrance Day", :regions => [:ca]},
31
- {:mday => 1, :type => :informal, :name => "Todos los Santos", :regions => [:mx]},
32
- {:mday => 2, :type => :informal, :name => "Los Fieles Difuntos", :regions => [:mx]},
33
- {:wday => 1, :week => 3, :name => "Día de la Revolución", :regions => [:mx]},
34
- {:mday => 11, :observed => lambda { |date| Holidays.to_weekday_if_weekend(date) }, :observed_id => "to_weekday_if_weekend", :name => "Veterans Day", :regions => [:us]},
35
- {:wday => 4, :week => 4, :name => "Thanksgiving", :regions => [:us]}],
36
49
  6 => [{:mday => 24, :name => "Discovery Day", :regions => [:ca_nf]},
37
50
  {:mday => 24, :name => "Fête Nationale", :regions => [:ca_qc]},
38
51
  {:mday => 21, :name => "National Aboriginal Day", :regions => [:ca_nt]},
39
52
  {:wday => 0, :week => 3, :type => :informal, :name => "Día del Padre", :regions => [:mx]}],
40
- 1 => [{:mday => 1, :name => "New Year's Day", :regions => [:ca]},
41
- {:mday => 2, :name => "New Year's", :regions => [:ca_qc]},
42
- {:mday => 1, :name => "Año nuevo", :regions => [:mx]},
43
- {:mday => 6, :name => "Dia de los Santos Reyes", :regions => [:mx]},
44
- {:mday => 1, :observed => lambda { |date| Holidays.to_weekday_if_weekend(date) }, :observed_id => "to_weekday_if_weekend", :name => "New Year's Day", :regions => [:us]},
45
- {:wday => 1, :week => 3, :name => "Martin Luther King, Jr. Day", :regions => [:us]},
46
- {:function => lambda { |year| Holidays.us_inauguration_day(year) }, :function_id => "us_inauguration_day(year)", :name => "Inauguration Day", :regions => [:us_dc]}],
47
- 12 => [{:mday => 25, :name => "Christmas Day", :regions => [:ca]},
48
- {:mday => 26, :name => "Boxing Day", :regions => [:ca]},
49
- {:mday => 12, :type => :informal, :name => "Día de la Virgen de Guadalupe", :regions => [:mx]},
50
- {:mday => 24, :type => :informal, :name => "Nochebuena", :regions => [:mx]},
51
- {:mday => 25, :name => "Navidad", :regions => [:mx]},
52
- {:mday => 28, :name => "Los Santos Inocentes", :regions => [:mx]},
53
- {:mday => 25, :observed => lambda { |date| Holidays.to_weekday_if_weekend(date) }, :observed_id => "to_weekday_if_weekend", :name => "Christmas Day", :regions => [:us]}],
54
53
  7 => [{:mday => 1, :observed => lambda { |date| Holidays.to_monday_if_sunday(date) }, :observed_id => "to_monday_if_sunday", :name => "Canada Day", :regions => [:ca]},
55
54
  {:mday => 12, :name => "Orangemen's Day", :regions => [:ca_nf]},
56
55
  {:mday => 9, :name => "Nunavut Day", :regions => [:ca_nu]},
57
56
  {:mday => 4, :observed => lambda { |date| Holidays.to_weekday_if_weekend(date) }, :observed_id => "to_weekday_if_weekend", :name => "Independence Day", :regions => [:us]}],
58
- 2 => [{:wday => 1, :week => 3, :name => "Family Day", :regions => [:ca_ab, :ca_on, :ca_sk]},
59
- {:wday => 1, :week => 3, :name => "Louis Riel Day", :regions => [:ca_mb]},
60
- {:wday => 1, :week => 1, :name => "Día de la Constitución", :regions => [:mx]},
61
- {:wday => 1, :week => 3, :name => "Presidents' Day", :regions => [:us]},
62
- {:mday => 2, :type => :informal, :name => "Groundhog Day", :regions => [:us, :ca]},
63
- {:mday => 14, :type => :informal, :name => "Valentine's Day", :regions => [:us, :ca]}],
64
57
  8 => [{:wday => 1, :week => 1, :name => "BC Day", :regions => [:ca_bc]},
65
58
  {:wday => 1, :week => 1, :name => "Saskatchewan Day", :regions => [:ca_sk]},
66
59
  {:wday => 1, :week => 1, :name => "Heritage Day", :regions => [:ca_ab]},
67
60
  {:wday => 1, :week => 1, :name => "Natal Day", :regions => [:ca_ns]},
68
61
  {:wday => 1, :week => 1, :name => "Civic Holiday", :regions => [:ca_on]},
69
62
  {:wday => 1, :week => 3, :name => "Discovery Day", :regions => [:ca_yk]}],
70
- 3 => [{:mday => 23, :name => "St. George's Day", :regions => [:ca_nf]},
71
- {:wday => 1, :week => 3, :name => "Natalicio de Benito Juárez", :regions => [:mx]},
72
- {:mday => 17, :type => :informal, :name => "St. Patrick's Day", :regions => [:us, :ca]}],
73
63
  9 => [{:wday => 1, :week => 1, :name => "Labour Day", :regions => [:ca]},
74
64
  {:mday => 15, :name => "Grito de Dolores", :regions => [:mx]},
75
65
  {:mday => 16, :name => "Día de la Independencia", :regions => [:mx]},
76
66
  {:wday => 1, :week => 1, :name => "Labor Day", :regions => [:us]}],
77
- 4 => [{:mday => 30, :type => :informal, :name => "Día del Niño", :regions => [:mx]},
78
- {:mday => 1, :type => :informal, :name => "April Fool's Day", :regions => [:us, :ca]},
79
- {:mday => 22, :type => :informal, :name => "Earth Day", :regions => [:us, :ca]}],
80
67
  10 => [{:wday => 1, :week => 2, :name => "Thanksgiving", :regions => [:ca]},
81
68
  {:mday => 12, :type => :informal, :name => "Día de la Raza", :regions => [:mx]},
82
69
  {:wday => 1, :week => 2, :name => "Columbus Day", :regions => [:us]},
83
- {:mday => 31, :type => :informal, :name => "Halloween", :regions => [:us, :ca]}]
84
- }
70
+ {:mday => 31, :type => :informal, :name => "Halloween", :regions => [:us, :ca]}],
71
+ 11 => [{:mday => 11, :name => "Remembrance Day", :regions => [:ca]},
72
+ {:mday => 1, :type => :informal, :name => "Todos los Santos", :regions => [:mx]},
73
+ {:mday => 2, :type => :informal, :name => "Los Fieles Difuntos", :regions => [:mx]},
74
+ {:wday => 1, :week => 3, :name => "Día de la Revolución", :regions => [:mx]},
75
+ {:mday => 11, :observed => lambda { |date| Holidays.to_weekday_if_weekend(date) }, :observed_id => "to_weekday_if_weekend", :name => "Veterans Day", :regions => [:us]},
76
+ {:wday => 4, :week => 4, :name => "Thanksgiving", :regions => [:us]}],
77
+ 12 => [{:mday => 25, :name => "Christmas Day", :regions => [:ca]},
78
+ {:mday => 26, :name => "Boxing Day", :regions => [:ca]},
79
+ {:mday => 12, :type => :informal, :name => "Día de la Virgen de Guadalupe", :regions => [:mx]},
80
+ {:mday => 24, :type => :informal, :name => "Nochebuena", :regions => [:mx]},
81
+ {:mday => 25, :name => "Navidad", :regions => [:mx]},
82
+ {:mday => 28, :name => "Los Santos Inocentes", :regions => [:mx]},
83
+ {:mday => 25, :observed => lambda { |date| Holidays.to_weekday_if_weekend(date) }, :observed_id => "to_weekday_if_weekend", :name => "Christmas Day", :regions => [:us]}],
84
+ 4 => [{:mday => 30, :type => :informal, :name => "Día del Niño", :regions => [:mx]},
85
+ {:mday => 1, :type => :informal, :name => "April Fool's Day", :regions => [:us, :ca]},
86
+ {:mday => 22, :type => :informal, :name => "Earth Day", :regions => [:us, :ca]}]
87
+ }
88
+ end
85
89
  end
86
90
 
87
91
  # Monday on or before May 24
@@ -105,4 +109,4 @@ end
105
109
 
106
110
  end
107
111
 
108
- Holidays.merge_defs(Holidays::North_America::DEFINED_REGIONS, Holidays::North_America::HOLIDAYS_BY_MONTH)
112
+ Holidays.merge_defs(Holidays::North_America.defined_regions, Holidays::North_America.holidays_by_month)
data/lib/holidays/nyse.rb CHANGED
@@ -1,33 +1,37 @@
1
1
  # encoding: utf-8
2
2
  module Holidays
3
- # This file is generated by the Ruby Holiday gem.
3
+ # This file is generated by the Ruby Holidays gem.
4
4
  #
5
5
  # Definitions loaded: data/nyse.yaml
6
6
  #
7
- # To use the definitions in this file, load them right after you load the
7
+ # To use the definitions in this file, load it right after you load the
8
8
  # Holiday gem:
9
9
  #
10
10
  # require 'holidays'
11
11
  # require 'holidays/nyse'
12
12
  #
13
- # More definitions are available at http://code.dunae.ca/holidays.
13
+ # All the definitions are available at https://github.com/alexdunae/holidays
14
14
  module NYSE # :nodoc:
15
- DEFINED_REGIONS = [:nyse]
15
+ def self.defined_regions
16
+ [:nyse]
17
+ end
16
18
 
17
- HOLIDAYS_BY_MONTH = {
18
- 5 => [{:wday => 1, :week => -1, :name => "Memorial Day", :regions => [:nyse]}],
19
- 0 => [{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Good Friday", :regions => [:nyse]}],
20
- 11 => [{:wday => 4, :week => 4, :name => "Thanksgiving", :regions => [:nyse]}],
19
+ def self.holidays_by_month
20
+ {
21
+ 0 => [{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Good Friday", :regions => [:nyse]}],
21
22
  1 => [{:mday => 1, :name => "New Year's Day", :regions => [:nyse]},
22
23
  {:wday => 1, :week => 3, :name => "Martin Luther King, Jr. Day", :regions => [:nyse]}],
23
- 12 => [{:mday => 25, :observed => lambda { |date| Holidays.to_weekday_if_weekend(date) }, :observed_id => "to_weekday_if_weekend", :name => "Christmas Day", :regions => [:nyse]}],
24
- 7 => [{:mday => 4, :observed => lambda { |date| Holidays.to_weekday_if_weekend(date) }, :observed_id => "to_weekday_if_weekend", :name => "Independence Day", :regions => [:nyse]}],
25
24
  2 => [{:wday => 1, :week => 3, :name => "Presidents' Day", :regions => [:nyse]}],
26
- 9 => [{:wday => 1, :week => 1, :name => "Labor Day", :regions => [:nyse]}]
27
- }
25
+ 5 => [{:wday => 1, :week => -1, :name => "Memorial Day", :regions => [:nyse]}],
26
+ 7 => [{:mday => 4, :observed => lambda { |date| Holidays.to_weekday_if_weekend(date) }, :observed_id => "to_weekday_if_weekend", :name => "Independence Day", :regions => [:nyse]}],
27
+ 9 => [{:wday => 1, :week => 1, :name => "Labor Day", :regions => [:nyse]}],
28
+ 11 => [{:wday => 4, :week => 4, :name => "Thanksgiving", :regions => [:nyse]}],
29
+ 12 => [{:mday => 25, :observed => lambda { |date| Holidays.to_weekday_if_weekend(date) }, :observed_id => "to_weekday_if_weekend", :name => "Christmas Day", :regions => [:nyse]}]
30
+ }
31
+ end
28
32
  end
29
33
 
30
34
 
31
35
  end
32
36
 
33
- Holidays.merge_defs(Holidays::NYSE::DEFINED_REGIONS, Holidays::NYSE::HOLIDAYS_BY_MONTH)
37
+ Holidays.merge_defs(Holidays::NYSE.defined_regions, Holidays::NYSE.holidays_by_month)
data/lib/holidays/nz.rb CHANGED
@@ -1,45 +1,49 @@
1
1
  # encoding: utf-8
2
2
  module Holidays
3
- # This file is generated by the Ruby Holiday gem.
3
+ # This file is generated by the Ruby Holidays gem.
4
4
  #
5
5
  # Definitions loaded: data/nz.yaml
6
6
  #
7
- # To use the definitions in this file, load them right after you load the
7
+ # To use the definitions in this file, load it right after you load the
8
8
  # Holiday gem:
9
9
  #
10
10
  # require 'holidays'
11
11
  # require 'holidays/nz'
12
12
  #
13
- # More definitions are available at http://code.dunae.ca/holidays.
13
+ # All the definitions are available at https://github.com/alexdunae/holidays
14
14
  module NZ # :nodoc:
15
- DEFINED_REGIONS = [:nz_ca, :nz_ch, :nz, :nz_wl, :nz_sl, :nz_we, :nz_ak, :nz_nl, :nz_ot, :nz_sc, :nz_hb, :nz_mb]
15
+ def self.defined_regions
16
+ [:nz, :nz_sl, :nz_we, :nz_ak, :nz_nl, :nz_ot, :nz_sc, :nz_hb, :nz_mb, :nz_ca, :nz_ch, :nz_wl]
17
+ end
16
18
 
17
- HOLIDAYS_BY_MONTH = {
18
- 0 => [{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Good Friday", :regions => [:nz]},
19
+ def self.holidays_by_month
20
+ {
21
+ 0 => [{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Good Friday", :regions => [:nz]},
19
22
  {:function => lambda { |year| Holidays.easter(year)-1 }, :function_id => "easter(year)-1", :name => "Easter Saturday", :regions => [:nz]},
20
23
  {:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :name => "Easter Monday", :regions => [:nz]}],
21
- 11 => [{:wday => 5, :week => 2, :name => "Canterbury Anniversary Day", :regions => [:nz_ca]},
22
- {:mday => 30, :observed => lambda { |date| Holidays.closest_monday(date) }, :observed_id => "closest_monday", :name => "Chatham Island Anniversary Day", :regions => [:nz_ch]}],
23
- 6 => [{:wday => 1, :week => 1, :name => "Queen's Birthday", :regions => [:nz]}],
24
24
  1 => [{:mday => 1, :observed => lambda { |date| Holidays.to_monday_if_weekend(date) }, :observed_id => "to_monday_if_weekend", :name => "New Year's Day", :regions => [:nz]},
25
25
  {:mday => 2, :observed => lambda { |date| Holidays.to_weekday_if_boxing_weekend(date) }, :observed_id => "to_weekday_if_boxing_weekend", :name => "Day after New Year's Day", :regions => [:nz]},
26
26
  {:mday => 17, :name => "Southland Anniversary Day", :regions => [:nz_sl]},
27
27
  {:mday => 22, :observed => lambda { |date| Holidays.closest_monday(date) }, :observed_id => "closest_monday", :name => "Wellington Anniversary Day", :regions => [:nz_we]},
28
28
  {:mday => 29, :observed => lambda { |date| Holidays.closest_monday(date) }, :observed_id => "closest_monday", :name => "Auckland Anniversary Day", :regions => [:nz_ak]},
29
29
  {:mday => 29, :observed => lambda { |date| Holidays.closest_monday(date) }, :observed_id => "closest_monday", :name => "Northland Anniversary Day", :regions => [:nz_nl]}],
30
- 12 => [{:mday => 1, :observed => lambda { |date| Holidays.closest_monday(date) }, :observed_id => "closest_monday", :name => "Westland Anniversary Day", :regions => [:nz_wl]},
31
- {:mday => 25, :observed => lambda { |date| Holidays.to_monday_if_weekend(date) }, :observed_id => "to_monday_if_weekend", :name => "Christmas Day", :regions => [:nz]},
32
- {:mday => 26, :observed => lambda { |date| Holidays.to_weekday_if_boxing_weekend(date) }, :observed_id => "to_weekday_if_boxing_weekend", :name => "Boxing Day", :regions => [:nz]}],
33
30
  2 => [{:mday => 1, :observed => lambda { |date| Holidays.closest_monday(date) }, :observed_id => "closest_monday", :name => "Nelson Anniversary Day", :regions => [:nz_ak]},
34
31
  {:mday => 6, :name => "Waitangi Day", :regions => [:nz]}],
35
32
  3 => [{:mday => 23, :observed => lambda { |date| Holidays.closest_monday(date) }, :observed_id => "closest_monday", :name => "Otago Anniversary Day", :regions => [:nz_ot]},
36
33
  {:wday => 1, :week => 2, :name => "Taranaki Anniversary Day", :regions => [:nz_ak]}],
37
- 9 => [{:wday => 1, :week => 4, :name => "Dominion Day", :regions => [:nz_sc]}],
38
34
  4 => [{:mday => 25, :name => "ANZAC Day", :regions => [:nz]}],
35
+ 6 => [{:wday => 1, :week => 1, :name => "Queen's Birthday", :regions => [:nz]}],
36
+ 9 => [{:wday => 1, :week => 4, :name => "Dominion Day", :regions => [:nz_sc]}],
39
37
  10 => [{:wday => 1, :week => 1, :observed => lambda { |date| Holidays.previous_friday(date) }, :observed_id => "previous_friday", :name => "Hawke's bay Anniversary Day", :regions => [:nz_hb]},
40
38
  {:wday => 1, :week => 4, :name => "Labour Day", :regions => [:nz]},
41
- {:wday => 1, :week => 4, :observed => lambda { |date| Holidays.next_week(date) }, :observed_id => "next_week", :name => "Marlborough Anniversary Day", :regions => [:nz_mb]}]
42
- }
39
+ {:wday => 1, :week => 4, :observed => lambda { |date| Holidays.next_week(date) }, :observed_id => "next_week", :name => "Marlborough Anniversary Day", :regions => [:nz_mb]}],
40
+ 11 => [{:wday => 5, :week => 2, :name => "Canterbury Anniversary Day", :regions => [:nz_ca]},
41
+ {:mday => 30, :observed => lambda { |date| Holidays.closest_monday(date) }, :observed_id => "closest_monday", :name => "Chatham Island Anniversary Day", :regions => [:nz_ch]}],
42
+ 12 => [{:mday => 1, :observed => lambda { |date| Holidays.closest_monday(date) }, :observed_id => "closest_monday", :name => "Westland Anniversary Day", :regions => [:nz_wl]},
43
+ {:mday => 25, :observed => lambda { |date| Holidays.to_monday_if_weekend(date) }, :observed_id => "to_monday_if_weekend", :name => "Christmas Day", :regions => [:nz]},
44
+ {:mday => 26, :observed => lambda { |date| Holidays.to_weekday_if_boxing_weekend(date) }, :observed_id => "to_weekday_if_boxing_weekend", :name => "Boxing Day", :regions => [:nz]}]
45
+ }
46
+ end
43
47
  end
44
48
 
45
49
  def self.closest_monday(date)
@@ -54,16 +58,16 @@ def self.closest_monday(date)
54
58
  end
55
59
 
56
60
 
57
- def self.next_week(date)
58
- date + 7
59
- end
60
-
61
61
  def self.previous_friday(date)
62
62
  date - 3
63
63
  end
64
64
 
65
65
 
66
+ def self.next_week(date)
67
+ date + 7
68
+ end
69
+
66
70
 
67
71
  end
68
72
 
69
- Holidays.merge_defs(Holidays::NZ::DEFINED_REGIONS, Holidays::NZ::HOLIDAYS_BY_MONTH)
73
+ Holidays.merge_defs(Holidays::NZ.defined_regions, Holidays::NZ.holidays_by_month)