holidays 1.0.5 → 1.0.6

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 (80) hide show
  1. data/.travis.yml +8 -1
  2. data/{CHANGELOG → CHANGELOG.rdoc} +29 -3
  3. data/LICENSE +2 -2
  4. data/README.rdoc +41 -28
  5. data/data/ar.yaml +82 -0
  6. data/data/au.yaml +40 -4
  7. data/data/be.yaml +65 -0
  8. data/data/br.yaml +12 -12
  9. data/data/ca.yaml +30 -17
  10. data/data/ch.yaml +187 -0
  11. data/data/federal_reserve.yaml +151 -0
  12. data/data/fi.yaml +19 -0
  13. data/data/fr.yaml +5 -5
  14. data/data/gb.yaml +19 -14
  15. data/data/hr.yaml +77 -0
  16. data/data/ie.yaml +36 -8
  17. data/data/index.yaml +12 -2
  18. data/data/ma.yaml +52 -0
  19. data/data/nerc.yaml +51 -0
  20. data/data/north_america_informal.yaml +13 -1
  21. data/data/pt.yaml +14 -13
  22. data/data/ro.yaml +76 -0
  23. data/data/sk.yaml +74 -0
  24. data/data/us.yaml +5 -1
  25. data/data/ve.yaml +70 -0
  26. data/holidays.gemspec +41 -9
  27. data/lib/holidays.rb +57 -34
  28. data/lib/holidays/MANIFEST +35 -24
  29. data/lib/holidays/ar.rb +42 -0
  30. data/lib/holidays/at.rb +3 -3
  31. data/lib/holidays/au.rb +28 -4
  32. data/lib/holidays/be.rb +40 -0
  33. data/lib/holidays/br.rb +1 -1
  34. data/lib/holidays/ca.rb +7 -3
  35. data/lib/holidays/ch.rb +92 -0
  36. data/lib/holidays/europe.rb +173 -53
  37. data/lib/holidays/federal_reserve.rb +50 -0
  38. data/lib/holidays/fi.rb +14 -1
  39. data/lib/holidays/fr.rb +1 -1
  40. data/lib/holidays/gb.rb +1 -1
  41. data/lib/holidays/hr.rb +42 -0
  42. data/lib/holidays/hu.rb +38 -0
  43. data/lib/holidays/ie.rb +16 -7
  44. data/lib/holidays/ma.rb +37 -0
  45. data/lib/holidays/mx.rb +3 -1
  46. data/lib/holidays/nerc.rb +34 -0
  47. data/lib/holidays/north_america.rb +9 -4
  48. data/lib/holidays/pt.rb +1 -1
  49. data/lib/holidays/ro.rb +40 -0
  50. data/lib/holidays/scandinavia.rb +13 -0
  51. data/lib/holidays/sk.rb +42 -0
  52. data/lib/holidays/us.rb +6 -3
  53. data/lib/holidays/ve.rb +40 -0
  54. data/rakefile.rb +1 -1
  55. data/test/defs/test_defs_ar.rb +27 -0
  56. data/test/defs/test_defs_au.rb +10 -0
  57. data/test/defs/test_defs_be.rb +25 -0
  58. data/test/defs/test_defs_br.rb +5 -5
  59. data/test/defs/test_defs_ca.rb +22 -2
  60. data/test/defs/test_defs_ch.rb +39 -0
  61. data/test/defs/test_defs_europe.rb +160 -10
  62. data/test/defs/test_defs_federal_reserve.rb +84 -0
  63. data/test/defs/test_defs_fi.rb +5 -0
  64. data/test/defs/test_defs_fr.rb +1 -1
  65. data/test/defs/test_defs_gb.rb +7 -2
  66. data/test/defs/test_defs_hr.rb +31 -0
  67. data/test/defs/test_defs_hu.rb +29 -0
  68. data/test/defs/test_defs_ie.rb +18 -3
  69. data/test/defs/test_defs_ma.rb +22 -0
  70. data/test/defs/test_defs_mx.rb +13 -0
  71. data/test/defs/test_defs_nerc.rb +23 -0
  72. data/test/defs/test_defs_north_america.rb +23 -2
  73. data/test/defs/test_defs_pt.rb +4 -3
  74. data/test/defs/test_defs_ro.rb +37 -0
  75. data/test/defs/test_defs_scandinavia.rb +5 -0
  76. data/test/defs/test_defs_sk.rb +28 -0
  77. data/test/defs/test_defs_us.rb +14 -0
  78. data/test/defs/test_defs_ve.rb +28 -0
  79. data/test/test_all_regions.rb +10 -0
  80. metadata +40 -6
@@ -18,7 +18,8 @@ module Holidays
18
18
 
19
19
  def self.holidays_by_month
20
20
  {
21
- 0 => [{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :type => :informal, :name => "Good Friday", :regions => [:us]}],
21
+ 0 => [{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :type => :informal, :name => "Good Friday", :regions => [:us]},
22
+ {:function => lambda { |year| Holidays.easter(year) }, :function_id => "easter(year)", :type => :informal, :name => "Easter Sunday", :regions => [:us]}],
22
23
  1 => [{:mday => 1, :observed => lambda { |date| Holidays.to_weekday_if_weekend(date) }, :observed_id => "to_weekday_if_weekend", :name => "New Year's Day", :regions => [:us]},
23
24
  {:wday => 1, :week => 3, :name => "Martin Luther King, Jr. Day", :regions => [:us]},
24
25
  {:function => lambda { |year| Holidays.us_inauguration_day(year) }, :function_id => "us_inauguration_day(year)", :name => "Inauguration Day", :regions => [:us_dc]}],
@@ -26,7 +27,8 @@ module Holidays
26
27
  {:mday => 2, :type => :informal, :name => "Groundhog Day", :regions => [:us, :ca]},
27
28
  {:mday => 14, :type => :informal, :name => "Valentine's Day", :regions => [:us, :ca]}],
28
29
  5 => [{:wday => 1, :week => -1, :name => "Memorial Day", :regions => [:us]},
29
- {:wday => 0, :week => 3, :type => :informal, :name => "Father's Day", :regions => [:us, :ca]}],
30
+ {:wday => 0, :week => 2, :type => :informal, :name => "Mother's Day", :regions => [:us, :ca]},
31
+ {:wday => 6, :week => 3, :type => :informal, :name => "Armed Forces Day", :regions => [:us]}],
30
32
  7 => [{:mday => 4, :observed => lambda { |date| Holidays.to_weekday_if_weekend(date) }, :observed_id => "to_weekday_if_weekend", :name => "Independence Day", :regions => [:us]}],
31
33
  9 => [{:wday => 1, :week => 1, :name => "Labor Day", :regions => [:us]}],
32
34
  10 => [{:wday => 1, :week => 2, :name => "Columbus Day", :regions => [:us]},
@@ -36,7 +38,8 @@ module Holidays
36
38
  12 => [{:mday => 25, :observed => lambda { |date| Holidays.to_weekday_if_weekend(date) }, :observed_id => "to_weekday_if_weekend", :name => "Christmas Day", :regions => [:us]}],
37
39
  3 => [{:mday => 17, :type => :informal, :name => "St. Patrick's Day", :regions => [:us, :ca]}],
38
40
  4 => [{:mday => 1, :type => :informal, :name => "April Fool's Day", :regions => [:us, :ca]},
39
- {:mday => 22, :type => :informal, :name => "Earth Day", :regions => [:us, :ca]}]
41
+ {:mday => 22, :type => :informal, :name => "Earth Day", :regions => [:us, :ca]}],
42
+ 6 => [{:wday => 0, :week => 3, :type => :informal, :name => "Father's Day", :regions => [:us, :ca]}]
40
43
  }
41
44
  end
42
45
  end
@@ -0,0 +1,40 @@
1
+ # encoding: utf-8
2
+ module Holidays
3
+ # This file is generated by the Ruby Holidays gem.
4
+ #
5
+ # Definitions loaded: data/ve.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/ve'
12
+ #
13
+ # All the definitions are available at https://github.com/alexdunae/holidays
14
+ module VE # :nodoc:
15
+ def self.defined_regions
16
+ [:ve]
17
+ end
18
+
19
+ def self.holidays_by_month
20
+ {
21
+ 0 => [{:function => lambda { |year| Holidays.easter(year)-48 }, :function_id => "easter(year)-48", :name => "Lunes Carnaval", :regions => [:ve]},
22
+ {:function => lambda { |year| Holidays.easter(year)-47 }, :function_id => "easter(year)-47", :name => "Martes Carnaval", :regions => [:ve]},
23
+ {:function => lambda { |year| Holidays.easter(year)-3 }, :function_id => "easter(year)-3", :name => "Jueves Santo", :regions => [:ve]},
24
+ {:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Viernes Santo", :regions => [:ve]}],
25
+ 1 => [{:mday => 1, :name => "Año Nuevo", :regions => [:ve]}],
26
+ 4 => [{:mday => 19, :name => "Declaración Independencia", :regions => [:ve]}],
27
+ 5 => [{:mday => 1, :name => "Día del Trabajador", :regions => [:ve]}],
28
+ 6 => [{:mday => 24, :name => "Aniversario Batalla de Carabobo", :regions => [:ve]}],
29
+ 7 => [{:mday => 5, :name => "Día de la Independencia", :regions => [:ve]},
30
+ {:mday => 24, :name => "Natalicio de Simón Bolívar", :regions => [:ve]}],
31
+ 10 => [{:mday => 12, :name => "Día de la Resistencia Indígena", :regions => [:ve]}],
32
+ 12 => [{:mday => 25, :name => "Día de Navidad", :regions => [:ve]}]
33
+ }
34
+ end
35
+ end
36
+
37
+
38
+ end
39
+
40
+ Holidays.merge_defs(Holidays::VE.defined_regions, Holidays::VE.holidays_by_month)
@@ -40,7 +40,7 @@ RDoc::Task.new do |rdoc|
40
40
  rdoc.rdoc_files.include('data/SYNTAX.rdoc')
41
41
  rdoc.rdoc_files.include('lib/holidays/MANIFEST')
42
42
  rdoc.rdoc_files.include('REFERENCES')
43
- rdoc.rdoc_files.include('CHANGELOG')
43
+ rdoc.rdoc_files.include('CHANGELOG.rdoc')
44
44
  rdoc.rdoc_files.include('LICENSE')
45
45
  rdoc.rdoc_files.include('lib/*.rb')
46
46
  end
@@ -0,0 +1,27 @@
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: data/ar.yaml
7
+ class ArDefinitionTests < Test::Unit::TestCase # :nodoc:
8
+
9
+ def test_ar
10
+ {Date.civil(2013,1,1) => 'Año Nuevo',
11
+ Date.civil(2013,3,24) => 'Día Nacional de la Memoria por la Verdad y la Justicia',
12
+ Date.civil(2013,3,28) => 'Jueves Santo',
13
+ Date.civil(2013,3,29) => 'Viernes Santo',
14
+ Date.civil(2013,4,2) => 'Día del Veterano y de los Caídos en la Guerra de Malvinas',
15
+ Date.civil(2013,5,1) => 'Día del Trabajador',
16
+ Date.civil(2013,5,25) => 'Día de la Revolución de Mayo',
17
+ Date.civil(2013,6,20) => 'Día de la Bandera',
18
+ Date.civil(2013,7,9) => 'Día de la Independencia',
19
+ Date.civil(2013,8,19) => 'Paso a la Inmortalidad del General José de San Martín',
20
+ Date.civil(2013,10,14) => 'Día del Respeto a la Diversidad Cultural',
21
+ Date.civil(2013,11,25) => 'Día de la Soberanía nacional',
22
+ Date.civil(2013,12,8) => 'Inmaculada Concepción de María',
23
+ Date.civil(2013,12,25) => 'Navidad'}.each do |date, name|
24
+ assert_equal name, (Holidays.on(date, :ar, :informal)[0] || {})[:name]
25
+ end
26
+ end
27
+ end
@@ -29,8 +29,18 @@ assert_equal 'Labour Day', Date.civil(2007,3,5).holidays(:au_wa)[0][:name]
29
29
  assert_equal 'Labour Day', Date.civil(2007,3,12).holidays(:au_vic)[0][:name]
30
30
  assert_equal 'Labour Day', Date.civil(2007,5,7).holidays(:au_qld)[0][:name]
31
31
 
32
+ assert_equal 'Easter Sunday', Date.civil(2007,4,8).holidays(:au_nsw)[0][:name]
33
+
32
34
  assert_equal 'May Day', Date.civil(2007,5,7).holidays(:au_nt)[0][:name]
33
35
 
34
36
  assert_equal 'Eight Hours Day', Date.civil(2007,3,12).holidays(:au_tas)[0][:name]
37
+
38
+ assert_equal 'Labour Day', Date.civil(2013,10,7).holidays(:au_qld)[0][:name]
39
+ assert_equal 'Labour Day', Date.civil(2012,5,7).holidays(:au_qld)[0][:name]
40
+
41
+ assert_equal "Queen's Birthday", Date.civil(2012,6,11).holidays(:au_qld)[0][:name]
42
+ assert_equal "Queen's Birthday", Date.civil(2012,10,1).holidays(:au_qld)[0][:name]
43
+ assert_equal "Queen's Birthday", Date.civil(2013,6,10).holidays(:au_qld)[0][:name]
44
+
35
45
  end
36
46
  end
@@ -0,0 +1,25 @@
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: data/be.yaml
7
+ class BeDefinitionTests < Test::Unit::TestCase # :nodoc:
8
+
9
+ def test_be
10
+ {Date.civil(2007,1,1) => 'New Year\'s Day',
11
+ Date.civil(2007,4,8) => 'Easter',
12
+ Date.civil(2007,4,9) => 'Easter Monday',
13
+ Date.civil(2007,5,1) => 'Labour Day',
14
+ Date.civil(2007,5,17) => 'Ascension',
15
+ Date.civil(2007,5,27) => 'Pentecost',
16
+ Date.civil(2007,5,28) => 'Pentecost Monday',
17
+ Date.civil(2007,7,21) => 'National holiday',
18
+ Date.civil(2007,8,15) => 'Assumption of Mary',
19
+ Date.civil(2007,11,1) => 'All Saints',
20
+ Date.civil(2007,11,11) => 'Armistice Day',
21
+ Date.civil(2007,12,25) => 'Christmas'}.each do |date, name|
22
+ assert_equal name, (Holidays.on(date, :be, :informal)[0] || {})[:name]
23
+ end
24
+ end
25
+ end
@@ -7,18 +7,18 @@ require File.expand_path(File.dirname(__FILE__)) + '/../test_helper'
7
7
  class BrDefinitionTests < Test::Unit::TestCase # :nodoc:
8
8
 
9
9
  def test_br
10
- {Date.civil(2008,1,1) => 'Dia da Confraternização Universal',
10
+ {Date.civil(2008,1,1) => 'Dia da Confraternização Universal',
11
11
  Date.civil(2005,2,8) => 'Carnaval',
12
12
  Date.civil(2006,2,28) => 'Carnaval',
13
13
  Date.civil(2007,2,20) => 'Carnaval',
14
14
  Date.civil(2008,2,5) => 'Carnaval',
15
- Date.civil(2008,3,21) => 'Sexta-feira Santa',
15
+ Date.civil(2008,3,21) => 'Sexta-feira Santa',
16
16
  Date.civil(2008,3,23) => 'Páscoa',
17
17
  Date.civil(2008,4,21) => 'Dia de Tiradentes',
18
18
  Date.civil(2008,5,1) => 'Dia do Trabalho',
19
- Date.civil(2005,5,26) => 'Corpus Christ',
20
- Date.civil(2007,6,7) => 'Corpus Christ',
21
- Date.civil(2008,5,22) => 'Corpus Christ',
19
+ Date.civil(2005,5,26) => 'Corpus Christi',
20
+ Date.civil(2007,6,7) => 'Corpus Christi',
21
+ Date.civil(2008,5,22) => 'Corpus Christi',
22
22
  Date.civil(2008,9,7) => 'Proclamação da Independência',
23
23
  Date.civil(2008,10,12) => 'Dia de Nossa Senhora Aparecida',
24
24
  Date.civil(2008,11,2) => 'Dia de Finados',
@@ -7,8 +7,9 @@ require File.expand_path(File.dirname(__FILE__)) + '/../test_helper'
7
7
  class CaDefinitionTests < Test::Unit::TestCase # :nodoc:
8
8
 
9
9
  def test_ca
10
- {Date.civil(2008,1,1) => 'New Year\'s Day',
11
- Date.civil(2008,3,21) => 'Good Friday',
10
+ {Date.civil(2008,1,1) => 'New Year\'s Day',
11
+ Date.civil(2008,3,21) => 'Good Friday',
12
+ Date.civil(2013,3,31) => 'Easter Sunday',
12
13
  Date.civil(2008,3,24) => 'Easter Monday',
13
14
  Date.civil(2008,5,19) => 'Victoria Day',
14
15
  Date.civil(2008,7,1) => 'Canada Day',
@@ -20,10 +21,29 @@ class CaDefinitionTests < Test::Unit::TestCase # :nodoc:
20
21
  assert_equal name, (Holidays.on(date, :ca, :informal)[0] || {})[:name]
21
22
  end
22
23
 
24
+ # Family Day in BC
25
+ [ Date.civil(2013,2,11), Date.civil(2014,2,10) ].each do |date|
26
+ assert_equal 'BC Family Day', Holidays.on(date, :ca_bc)[0][:name]
27
+ end
28
+
23
29
  # Victoria Day
24
30
  [Date.civil(2004,5,24), Date.civil(2005,5,23), Date.civil(2006,5,22),
25
31
  Date.civil(2007,5,21), Date.civil(2008,5,19)].each do |date|
26
32
  assert_equal 'Victoria Day', Holidays.on(date, :ca)[0][:name]
27
33
  end
34
+
35
+
36
+ {Date.civil(2013,2,2) => 'Groundhog Day',
37
+ Date.civil(2013,2,14) => 'Valentine\'s Day',
38
+ Date.civil(2013,3,17) => 'St. Patrick\'s Day',
39
+ Date.civil(2013,4,1) => 'April Fool\'s Day',
40
+ Date.civil(2013,4,22) => 'Earth Day',
41
+ Date.civil(2013,5,12) => 'Mother\'s Day',
42
+ Date.civil(2013,5,18) => 'Armed Forces Day',
43
+ Date.civil(2013,6,16) => 'Father\'s Day',
44
+ Date.civil(2013,10,31) => 'Halloween'}.each do |date, name|
45
+ assert_equal name, (Holidays.on(date, :us, :informal)[0] || {})[:name]
46
+ end
47
+
28
48
  end
29
49
  end
@@ -0,0 +1,39 @@
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: data/ch.yaml
7
+ class ChDefinitionTests < Test::Unit::TestCase # :nodoc:
8
+
9
+ def test_ch
10
+ { Date.civil(2012,8,1) => 'Bundesfeiertag',
11
+ Date.civil(2012,12,25) => 'Weihnachten',
12
+ Date.civil(2012,05,17) => 'Auffahrt'
13
+ }.each do |date, name|
14
+ assert_equal name, (Holidays.on(date, :ch)[0] || {})[:name]
15
+ end
16
+
17
+ { Date.civil(2012,8,1) => 'Bundesfeiertag',
18
+ Date.civil(2012,12,25) => 'Weihnachten',
19
+ Date.civil(2012,05,17) => 'Auffahrt',
20
+ Date.civil(2012,5,1) => 'Tag der Arbeit',
21
+ Date.civil(2012,12,26) => 'Stefanstag'
22
+ }.each do |date, name|
23
+ assert_equal name, (Holidays.on(date, :ch_zh)[0] || {})[:name]
24
+ end
25
+
26
+ [Date.civil(2012,9,17), Date.civil(2013,9,16), Date.civil(2014,9,22)].each do |date|
27
+ assert_equal 'Lundi du Jeûne fédéral', (Holidays.on(date, :ch_vd)[0] || {})[:name]
28
+ end
29
+
30
+ [Date.civil(2012,9,6), Date.civil(2013,9,5), Date.civil(2014,9,11)].each do |date|
31
+ assert_equal 'Jeûne genevois', (Holidays.on(date, :ch_ge)[0] || {})[:name]
32
+ end
33
+
34
+ [Date.civil(2012,4,12), Date.civil(2013,4,4), Date.civil(2014,4,3)].each do |date|
35
+ assert_equal 'Näfelser Fahrt', (Holidays.on(date, :ch_gl)[0] || {})[:name]
36
+ end
37
+
38
+ end
39
+ end
@@ -3,7 +3,7 @@ require File.expand_path(File.dirname(__FILE__)) + '/../test_helper'
3
3
 
4
4
  # This file is generated by the Ruby Holiday gem.
5
5
  #
6
- # Definitions loaded: data/at.yaml, data/cz.yaml, data/dk.yaml, data/de.yaml, data/el.yaml, data/es.yaml, data/fr.yaml, data/gb.yaml, data/ie.yaml, data/is.yaml, data/it.yaml, data/li.yaml, data/nl.yaml, data/no.yaml, data/pl.yaml, data/pt.yaml
6
+ # Definitions loaded: data/at.yaml, data/be.yaml, data/ch.yaml, data/cz.yaml, data/dk.yaml, data/de.yaml, data/el.yaml, data/es.yaml, data/fr.yaml, data/gb.yaml, data/hr.yaml, data/hu.yaml, data/ie.yaml, data/is.yaml, data/it.yaml, data/li.yaml, data/nl.yaml, data/no.yaml, data/pl.yaml, data/pt.yaml, data/ro.yaml, data/sk.yaml
7
7
  class EuropeDefinitionTests < Test::Unit::TestCase # :nodoc:
8
8
 
9
9
  def test_europe
@@ -21,6 +21,50 @@ end
21
21
  assert !Date.civil(2010,5,8).holiday?(:at), '2010-05-08 is not a holiday in Austria'
22
22
 
23
23
 
24
+ {Date.civil(2007,1,1) => 'New Year\'s Day',
25
+ Date.civil(2007,4,8) => 'Easter',
26
+ Date.civil(2007,4,9) => 'Easter Monday',
27
+ Date.civil(2007,5,1) => 'Labour Day',
28
+ Date.civil(2007,5,17) => 'Ascension',
29
+ Date.civil(2007,5,27) => 'Pentecost',
30
+ Date.civil(2007,5,28) => 'Pentecost Monday',
31
+ Date.civil(2007,7,21) => 'National holiday',
32
+ Date.civil(2007,8,15) => 'Assumption of Mary',
33
+ Date.civil(2007,11,1) => 'All Saints',
34
+ Date.civil(2007,11,11) => 'Armistice Day',
35
+ Date.civil(2007,12,25) => 'Christmas'}.each do |date, name|
36
+ assert_equal name, (Holidays.on(date, :be, :informal)[0] || {})[:name]
37
+ end
38
+
39
+ { Date.civil(2012,8,1) => 'Bundesfeiertag',
40
+ Date.civil(2012,12,25) => 'Weihnachten',
41
+ Date.civil(2012,05,17) => 'Auffahrt'
42
+ }.each do |date, name|
43
+ assert_equal name, (Holidays.on(date, :ch)[0] || {})[:name]
44
+ end
45
+
46
+ { Date.civil(2012,8,1) => 'Bundesfeiertag',
47
+ Date.civil(2012,12,25) => 'Weihnachten',
48
+ Date.civil(2012,05,17) => 'Auffahrt',
49
+ Date.civil(2012,5,1) => 'Tag der Arbeit',
50
+ Date.civil(2012,12,26) => 'Stefanstag'
51
+ }.each do |date, name|
52
+ assert_equal name, (Holidays.on(date, :ch_zh)[0] || {})[:name]
53
+ end
54
+
55
+ [Date.civil(2012,9,17), Date.civil(2013,9,16), Date.civil(2014,9,22)].each do |date|
56
+ assert_equal 'Lundi du Jeûne fédéral', (Holidays.on(date, :ch_vd)[0] || {})[:name]
57
+ end
58
+
59
+ [Date.civil(2012,9,6), Date.civil(2013,9,5), Date.civil(2014,9,11)].each do |date|
60
+ assert_equal 'Jeûne genevois', (Holidays.on(date, :ch_ge)[0] || {})[:name]
61
+ end
62
+
63
+ [Date.civil(2012,4,12), Date.civil(2013,4,4), Date.civil(2014,4,3)].each do |date|
64
+ assert_equal 'Näfelser Fahrt', (Holidays.on(date, :ch_gl)[0] || {})[:name]
65
+ end
66
+
67
+
24
68
  {Date.civil(2010,1,1) => 'Den obnovy samostatného českého státu',
25
69
  Date.civil(2010,4,5) => 'Velikonoční pondělí',
26
70
  Date.civil(2010,5,1) => 'Svátek práce',
@@ -175,12 +219,11 @@ assert_equal 'Fiesta Nacional de Cataluña', Date.civil(2009,9,11).holidays(:es_
175
219
  Date.civil(2007,8,15) => 'Assomption',
176
220
  Date.civil(2007,11,1) => 'Toussaint',
177
221
  Date.civil(2007,11,11) => 'Armistice 1918',
178
- Date.civil(2007,12,25) => 'Nöel'}.each do |date, name|
222
+ Date.civil(2007,12,25) => 'Noël'}.each do |date, name|
179
223
  assert_equal name, (Holidays.on(date, :fr, :informal)[0] || {})[:name]
180
224
  end
181
225
 
182
- {Date.civil(2008,1,1) => 'New Year\'s Day',
183
- Date.civil(2008,3,21) => 'Good Friday',
226
+ {Date.civil(2008,3,21) => 'Good Friday',
184
227
  Date.civil(2008,3,23) => 'Easter Sunday',
185
228
  Date.civil(2008,5,5) => 'May Day',
186
229
  Date.civil(2008,5,26) => 'Bank Holiday',
@@ -199,23 +242,84 @@ assert_equal 'Christmas Day', Date.civil(2010,12,27).holidays(:gb_, :observed)[0
199
242
  assert_equal 'Boxing Day', Date.civil(2008,12,26).holidays(:gb_, :observed)[0][:name]
200
243
  assert_equal 'Boxing Day', Date.civil(2009,12,28).holidays(:gb_, :observed)[0][:name]
201
244
  assert_equal 'Boxing Day', Date.civil(2010,12,28).holidays(:gb_, :observed)[0][:name]
245
+ assert_equal 'Boxing Day', Date.civil(2011,12,27).holidays(:gb_, :observed)[0][:name]
246
+
247
+ assert_equal 'New Year\'s Day', Date.civil(2010,1,1).holidays(:gb, :observed)[0][:name]
248
+ assert_equal 'New Year\'s Day', Date.civil(2011,1,3).holidays(:gb, :observed)[0][:name]
249
+ assert_equal 'New Year\'s Day', Date.civil(2012,1,2).holidays(:gb, :observed)[0][:name]
202
250
 
203
251
  [:gb_wls, :gb_eng, :gb_nir, :gb_eaw, :gb_].each do |r|
204
252
  assert_equal 'Easter Monday', Date.civil(2008,3,24).holidays(r)[0][:name]
205
253
  assert_equal 'Bank Holiday', Date.civil(2008,8,25).holidays(r)[0][:name]
206
254
  end
207
255
 
256
+
257
+ {Date.civil(2012,1,1) => 'Nova godina',
258
+ Date.civil(2012,1,6) => 'Sveta tri kralja',
259
+ Date.civil(2012,5,1) => 'Međunarodni praznik rada',
260
+ Date.civil(2012,6,22) => 'Dan antifašističke borbe',
261
+ Date.civil(2012,6,25) => 'Dan državnosti',
262
+ Date.civil(2012,8,5) => 'Dan pobjede i domovinske zahvalnosti i dan hrvatskih branitelja',
263
+ Date.civil(2012,8,15) => 'Velika Gospa',
264
+ Date.civil(2012,10,8) => 'Dan neovisnosti',
265
+ Date.civil(2012,11,1) => 'Dan svih svetih',
266
+ Date.civil(2012,12,25) => 'Božić',
267
+ Date.civil(2012,12,26) => 'Sveti Stjepan'}.each do |date, name|
268
+ assert_equal name, (Holidays.on(date, :hr, :informal)[0] || {})[:name]
269
+ end
270
+
271
+ # Tijelovo
272
+ [Date.civil(2008,5,22), Date.civil(2009,6,11), Date.civil(2010,6,3),
273
+ Date.civil(2012,6,7), Date.civil(2013,5,30), Date.civil(2014,6,19)].each do |date|
274
+ assert_equal 'Tijelovo', Holidays.on(date, :hr)[0][:name]
275
+ end
276
+
277
+
278
+ {Date.civil(2012,1,1) => 'Újév',
279
+ Date.civil(2011,1,1) => 'Újév',
280
+ Date.civil(2012,3,15) => '1848/49-es forradalom és szabadságharc ünnepe',
281
+ Date.civil(2011,4,25) => 'Húsvét hétfő',
282
+ Date.civil(2012,4,9) => 'Húsvét hétfő',
283
+ Date.civil(2012,5,1) => 'A munka ünnepe',
284
+ Date.civil(2011,6,13) => 'Pünkösd hétfő',
285
+ Date.civil(2012,5,28) => 'Pünkösd hétfő',
286
+ Date.civil(2012,8,20) => 'Az államalapítás ünnepe',
287
+ Date.civil(2012,10,23) => '1956-os forradalom és szabadságharc ünnepe',
288
+ Date.civil(2012,11,1) => 'Mindenszentek',
289
+ Date.civil(2012,12,25) => 'Karácsony',
290
+ Date.civil(2012,12,26) => 'Karácsony',}.each do |date, name|
291
+ assert_equal name, (Holidays.on(date, :hu, :informal)[0] || {})[:name]
292
+ end
293
+
294
+ assert !Date.civil(2012,3,14).holiday?(:hu), '2012-03-14 is not a holiday in Hungary'
295
+
296
+
208
297
  {Date.civil(2008,1,1) => 'New Year\'s Day',
209
298
  Date.civil(2008,3,17) => 'St. Patrick\'s Day',
210
299
  Date.civil(2008,3,24) => 'Easter Monday',
211
300
  Date.civil(2008,5,5) => 'May Day',
212
- Date.civil(2008,6,2) => 'Bank Holiday',
213
- Date.civil(2008,8,4) => 'Bank Holiday',
301
+ Date.civil(2008,6,2) => 'June Bank Holiday',
302
+ Date.civil(2008,8,4) => 'August Bank Holiday',
303
+ Date.civil(2008,10,27) => 'October Bank Holiday',
214
304
  Date.civil(2008,12,25) => 'Christmas Day',
215
305
  Date.civil(2008,12,26) => 'St. Stephen\'s Day'}.each do |date, name|
216
- assert_equal name, (Holidays.on(date, :ie, :informal)[0] || {})[:name]
306
+ assert_equal name, (Holidays.on(date, :ie)[0] || {})[:name]
307
+ end
308
+ {Date.civil(2012,1,2) => 'New Year\'s Day',
309
+ Date.civil(2012,3,19) => 'St. Patrick\'s Day',
310
+ Date.civil(2012,4,9) => 'Easter Monday',
311
+ Date.civil(2012,5,7) => 'May Day',
312
+ Date.civil(2012,6,4) => 'June Bank Holiday',
313
+ Date.civil(2012,8,6) => 'August Bank Holiday',
314
+ Date.civil(2012,10,29) => 'October Bank Holiday',
315
+ Date.civil(2011,12,26) => 'Christmas Day',
316
+ Date.civil(2011,12,27) => 'St. Stephen\'s Day',
317
+ Date.civil(2012,12,25) => 'Christmas Day',
318
+ Date.civil(2012,12,26) => 'St. Stephen\'s Day'}.each do |date, name|
319
+ assert_equal name, (Holidays.on(date, :ie, :observed)[0] || {})[:name]
217
320
  end
218
321
 
322
+
219
323
  {Date.civil(2007,1,1) => 'Nýársdagur',
220
324
  Date.civil(2007,1,6) => 'Þrettándinn',
221
325
  Date.civil(2007,1,19) => 'Bóndadagur',
@@ -447,20 +551,66 @@ end
447
551
  assert_equal 'Wniebowzięcie Najświętszej Maryi Panny', (Holidays.on(Date.civil(2011,8,15), :pl)[0] || {})[:name]
448
552
  assert_equal 'Święto Wojska Polskiego', (Holidays.on(Date.civil(2011,8,15), :pl)[1] || {})[:name]
449
553
 
450
- {Date.civil(2008,1,1) => 'Ano Novo',
554
+ {Date.civil(2008,1,1) => 'Ano Novo',
451
555
  Date.civil(2005,2,8) => 'Carnaval',
452
556
  Date.civil(2006,2,28) => 'Carnaval',
453
557
  Date.civil(2007,2,20) => 'Carnaval',
454
558
  Date.civil(2008,2,5) => 'Carnaval',
455
- Date.civil(2008,3,21) => 'Sexta-feira Santa',
559
+ Date.civil(2008,3,21) => 'Sexta-feira Santa',
456
560
  Date.civil(2008,3,23) => 'Páscoa',
457
561
  Date.civil(2008,4,25) => 'Dia da Liberdade',
458
562
  Date.civil(2008,5,1) => 'Dia do Trabalhador',
459
563
  Date.civil(2008,6,10) => 'Dia de Portugal',
460
- Date.civil(2008,11,1) => 'Todos os Santos',
564
+ Date.civil(2008,8,15) => 'Assunção de Nossa Senhora',
461
565
  Date.civil(2008,12,8) => 'Imaculada Conceição',
462
566
  Date.civil(2008,12,25) => 'Natal'}.each do |date, name|
463
567
  assert_equal name, (Holidays.on(date, :pt, :informal)[0] || {})[:name]
464
568
  end
569
+
570
+
571
+ {
572
+ Date.civil(1961,4,9) => 'Paștele',
573
+ Date.civil(1961,4,10) => 'Paștele',
574
+ Date.civil(2013,5,5) => 'Paștele',
575
+ Date.civil(2013,5,6) => 'Paștele',
576
+ Date.civil(2027,5,2) => 'Paștele',
577
+ Date.civil(2027,5,3) => 'Paștele',
578
+ Date.civil(2012,6,4) => 'Rusaliile',
579
+ Date.civil(2013,6,23) => 'Rusaliile',
580
+ Date.civil(2013,6,24) => 'Rusaliile',
581
+ Date.civil(1986,6,22) => 'Rusaliile',
582
+ Date.civil(1986,6,23) => 'Rusaliile',
583
+ Date.civil(2009,1,1) => 'Anul nou',
584
+ Date.civil(2014,1,2) => 'Anul nou',
585
+ Date.civil(2009,5,1) => 'Ziua muncii',
586
+ Date.civil(2012,8,15) => 'Adormirea Maicii Domnului',
587
+ Date.civil(2013,11,30) => 'Sfântul Apostol Andrei',
588
+ Date.civil(2013,12,1) => 'Ziua Națională',
589
+ Date.civil(2013,12,25) => 'Sărbătoarea Nașterii Domnului',
590
+ Date.civil(2013,12,26) => 'Sărbătoarea Nașterii Domnului'}.each do |date, name|
591
+ assert_equal name, (Holidays.on(date, :ro, :informal)[0] || {})[:name]
592
+ end
593
+
594
+ assert !Date.civil(2013,7,23).holiday?(:ro), '2010-07-23 is not a holiday in Romania'
595
+ assert !Date.civil(2013,7,23).holiday?(:ro), '2010-07-23 is not a holiday in Romania'
596
+
597
+
598
+ {Date.civil(2013,1,1) => 'Nový rok',
599
+ Date.civil(2013,3,29) => 'Veľký piatok',
600
+ Date.civil(2013,4,1) => 'Veľkonočný pondelok',
601
+ Date.civil(2013,5,1) => 'Sviatok práce',
602
+ Date.civil(2013,5,8) => 'Deň víťazstva',
603
+ Date.civil(2013,7,5) => 'Sviatok svätého Cyrila a svätého Metoda',
604
+ Date.civil(2013,8,29) => 'Výročie Slovenského národného povstania',
605
+ Date.civil(2013,9,1) => 'Deň Ústavy Slovenskej republiky',
606
+ Date.civil(2013,9,15) => 'Sedembolestná Panna Mária',
607
+ Date.civil(2013,11,1) => 'Sviatok všetkých svätých',
608
+ Date.civil(2013,11,17) => 'Deň boja za slobodu a demokraciu',
609
+ Date.civil(2013,12,24) => 'Štedrý deň',
610
+ Date.civil(2013,12,25) => '1. sviatok vianočný',
611
+ Date.civil(2013,12,26) => '2. sviatek vianočný'}.each do |date, name|
612
+ assert_equal name, (Holidays.on(date, :sk, :informal)[0] || {})[:name]
613
+ end
614
+
465
615
  end
466
616
  end