wombleton-holidays 0.9.6
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +3 -0
- data/CHANGELOG +22 -0
- data/LICENSE +21 -0
- data/README.rdoc +77 -0
- data/REFERENCES +16 -0
- data/VERSION +1 -0
- data/data/SYNTAX +111 -0
- data/data/au.yaml +111 -0
- data/data/build_defs.rb +152 -0
- data/data/ca.yaml +141 -0
- data/data/cz.yaml +68 -0
- data/data/de.yaml +111 -0
- data/data/dk.yaml +117 -0
- data/data/es.yaml +161 -0
- data/data/fr.yaml +70 -0
- data/data/gb.yaml +106 -0
- data/data/ie.yaml +58 -0
- data/data/index.yaml +26 -0
- data/data/is.yaml +136 -0
- data/data/it.yaml +66 -0
- data/data/mx.yaml +106 -0
- data/data/nl.yaml +67 -0
- data/data/no.yaml +82 -0
- data/data/north_america_informal.yaml +49 -0
- data/data/nyse.yaml +63 -0
- data/data/nz.yaml +141 -0
- data/data/pt.yaml +85 -0
- data/data/se.yaml +91 -0
- data/data/united_nations.yaml +188 -0
- data/data/ups.yaml +56 -0
- data/data/us.yaml +81 -0
- data/data/za.yaml +78 -0
- data/holidays.gemspec +16 -0
- data/lib/holidays/MANIFEST +28 -0
- data/lib/holidays/au.rb +43 -0
- data/lib/holidays/ca.rb +69 -0
- data/lib/holidays/cz.rb +36 -0
- data/lib/holidays/de.rb +51 -0
- data/lib/holidays/dk.rb +48 -0
- data/lib/holidays/es.rb +53 -0
- data/lib/holidays/europe.rb +236 -0
- data/lib/holidays/fr.rb +37 -0
- data/lib/holidays/gb.rb +41 -0
- data/lib/holidays/ie.rb +33 -0
- data/lib/holidays/is.rb +62 -0
- data/lib/holidays/it.rb +36 -0
- data/lib/holidays/mx.rb +52 -0
- data/lib/holidays/nl.rb +37 -0
- data/lib/holidays/no.rb +40 -0
- data/lib/holidays/north_america.rb +108 -0
- data/lib/holidays/nyse.rb +33 -0
- data/lib/holidays/nz.rb +69 -0
- data/lib/holidays/pt.rb +38 -0
- data/lib/holidays/scandinavia.rb +115 -0
- data/lib/holidays/se.rb +53 -0
- data/lib/holidays/united_nations.rb +25 -0
- data/lib/holidays/ups.rb +32 -0
- data/lib/holidays/us.rb +49 -0
- data/lib/holidays/za.rb +36 -0
- data/lib/holidays.rb +408 -0
- data/rakefile.rb +103 -0
- data/test/defs/test_defs_au.rb +35 -0
- data/test/defs/test_defs_ca.rb +28 -0
- data/test/defs/test_defs_cz.rb +25 -0
- data/test/defs/test_defs_de.rb +48 -0
- data/test/defs/test_defs_dk.rb +29 -0
- data/test/defs/test_defs_es.rb +56 -0
- data/test/defs/test_defs_europe.rb +277 -0
- data/test/defs/test_defs_fr.rb +25 -0
- data/test/defs/test_defs_gb.rb +35 -0
- data/test/defs/test_defs_ie.rb +20 -0
- data/test/defs/test_defs_is.rb +32 -0
- data/test/defs/test_defs_it.rb +24 -0
- data/test/defs/test_defs_mx.rb +21 -0
- data/test/defs/test_defs_nl.rb +23 -0
- data/test/defs/test_defs_no.rb +28 -0
- data/test/defs/test_defs_north_america.rb +53 -0
- data/test/defs/test_defs_nyse.rb +21 -0
- data/test/defs/test_defs_nz.rb +21 -0
- data/test/defs/test_defs_pt.rb +31 -0
- data/test/defs/test_defs_scandinavia.rb +75 -0
- data/test/defs/test_defs_se.rb +32 -0
- data/test/defs/test_defs_ups.rb +20 -0
- data/test/defs/test_defs_us.rb +22 -0
- data/test/defs/test_defs_za.rb +24 -0
- data/test/test_date.rb +101 -0
- data/test/test_helper.rb +11 -0
- data/test/test_holidays.rb +117 -0
- data/test/test_multiple_regions.rb +20 -0
- metadata +172 -0
data/data/index.yaml
ADDED
@@ -0,0 +1,26 @@
|
|
1
|
+
# Definition build list
|
2
|
+
---
|
3
|
+
defs:
|
4
|
+
AU: ['au.yaml']
|
5
|
+
CA: ['ca.yaml', 'north_america_informal.yaml']
|
6
|
+
CZ: ['cz.yaml']
|
7
|
+
DK: ['dk.yaml']
|
8
|
+
DE: ['de.yaml']
|
9
|
+
ES: ['es.yaml']
|
10
|
+
FR: ['fr.yaml']
|
11
|
+
GB: ['gb.yaml']
|
12
|
+
IE: ['ie.yaml']
|
13
|
+
IS: ['is.yaml']
|
14
|
+
IT: ['it.yaml']
|
15
|
+
MX: ['mx.yaml', 'north_america_informal.yaml']
|
16
|
+
NL: ['nl.yaml']
|
17
|
+
"NO": ['no.yaml']
|
18
|
+
NYSE: ['nyse.yaml']
|
19
|
+
NZ: ['nz.yaml']
|
20
|
+
PT: ['pt.yaml']
|
21
|
+
US: ['us.yaml', 'north_america_informal.yaml']
|
22
|
+
United_Nations: ['united_nations.yaml']
|
23
|
+
UPS: ['ups.yaml']
|
24
|
+
ZA: ['za.yaml']
|
25
|
+
North_America: ['ca.yaml', 'mx.yaml', 'us.yaml', 'north_america_informal.yaml']
|
26
|
+
Europe: ['cz.yaml', 'dk.yaml', 'de.yaml', 'es.yaml', 'fr.yaml', 'gb.yaml', 'ie.yaml', 'is.yaml', 'it.yaml', 'nl.yaml', 'no.yaml', 'pt.yaml']
|
data/data/is.yaml
ADDED
@@ -0,0 +1,136 @@
|
|
1
|
+
# Icelandic holiday definitions for the Ruby Holiday gem.
|
2
|
+
#
|
3
|
+
# Updated: 2008-11-29.
|
4
|
+
# Sources:
|
5
|
+
# - http://www.simnet.is/gardarj/folk/days.htm#days
|
6
|
+
# - http://www.iceland.is/history-and-culture/Traditions/IcelandicHolidays/
|
7
|
+
# - http://en.wikipedia.org/wiki/Public_holidays_in_Iceland
|
8
|
+
# - http://www.qppstudio.net/publicholidays2007/iceland.htm
|
9
|
+
---
|
10
|
+
months:
|
11
|
+
0:
|
12
|
+
- name: Bolludagur
|
13
|
+
regions: [is]
|
14
|
+
function: easter(year)-48
|
15
|
+
- name: Sprengidagur
|
16
|
+
regions: [is]
|
17
|
+
function: easter(year)-47
|
18
|
+
- name: Öskudagur
|
19
|
+
regions: [is]
|
20
|
+
function: easter(year)-46
|
21
|
+
- name: Pálmasunnudagur
|
22
|
+
regions: [is]
|
23
|
+
function: easter(year)-7
|
24
|
+
- name: Skírdagur
|
25
|
+
regions: [is]
|
26
|
+
function: easter(year)-3
|
27
|
+
- name: Föstudaginn langi
|
28
|
+
regions: [is]
|
29
|
+
function: easter(year)-2
|
30
|
+
- name: Páskadagur
|
31
|
+
regions: [is]
|
32
|
+
function: easter(year)
|
33
|
+
- name: Annar í páskum
|
34
|
+
regions: [is]
|
35
|
+
function: easter(year)+1
|
36
|
+
- name: Uppstigningardagur
|
37
|
+
regions: [is]
|
38
|
+
function: easter(year)+39
|
39
|
+
- name: Hvítasunnudagur
|
40
|
+
regions: [is]
|
41
|
+
function: easter(year)+49
|
42
|
+
- name: Annar í hvítasunnu
|
43
|
+
regions: [is]
|
44
|
+
function: easter(year)+50
|
45
|
+
1:
|
46
|
+
- name: Nýársdagur
|
47
|
+
regions: [is]
|
48
|
+
mday: 1
|
49
|
+
- name: Þrettándinn
|
50
|
+
regions: [is]
|
51
|
+
mday: 6
|
52
|
+
- name: Bóndadagur
|
53
|
+
regions: [is]
|
54
|
+
mday: 19
|
55
|
+
type: informal
|
56
|
+
2:
|
57
|
+
- name: Konudagur
|
58
|
+
regions: [is]
|
59
|
+
mday: 18
|
60
|
+
type: informal
|
61
|
+
4:
|
62
|
+
- name: Sumardagurinn fyrsti
|
63
|
+
regions: [is]
|
64
|
+
function: is_sumardagurinn_fyrsti(year)
|
65
|
+
5:
|
66
|
+
- name: Verkalýðsdagurinn
|
67
|
+
regions: [is]
|
68
|
+
mday: 1
|
69
|
+
- name: Mæðradagurinn
|
70
|
+
regions: [is]
|
71
|
+
mday: 13
|
72
|
+
6:
|
73
|
+
- name: Sjómannadagurinn
|
74
|
+
regions: [is]
|
75
|
+
mday: 3
|
76
|
+
type: informal
|
77
|
+
- name: Lýðveldisdagurinn
|
78
|
+
regions: [is]
|
79
|
+
mday: 17
|
80
|
+
8:
|
81
|
+
- name: Frídagur verslunarmanna
|
82
|
+
regions: [is]
|
83
|
+
week: 1
|
84
|
+
wday: 1
|
85
|
+
11:
|
86
|
+
- name: Dagur íslenskrar tungu
|
87
|
+
regions: [is]
|
88
|
+
mday: 16
|
89
|
+
12:
|
90
|
+
- name: Jól
|
91
|
+
regions: [is]
|
92
|
+
mday: 24
|
93
|
+
- name: Jól
|
94
|
+
regions: [is]
|
95
|
+
mday: 25
|
96
|
+
- name: Jól
|
97
|
+
regions: [is]
|
98
|
+
mday: 26
|
99
|
+
- name: Gamlárskvöld
|
100
|
+
regions: [is]
|
101
|
+
mday: 31
|
102
|
+
methods:
|
103
|
+
is_sumardagurinn_fyrsti: |
|
104
|
+
# Iceland: first day of summer (Thursday after 18 April)
|
105
|
+
def self.is_sumardagurinn_fyrsti(year)
|
106
|
+
date = Date.civil(year,4,18)
|
107
|
+
if date.wday < 4
|
108
|
+
date += (4 - date.wday)
|
109
|
+
else date
|
110
|
+
date += (11 - date.wday)
|
111
|
+
end
|
112
|
+
date
|
113
|
+
end
|
114
|
+
tests: |
|
115
|
+
{Date.civil(2007,1,1) => 'Nýársdagur',
|
116
|
+
Date.civil(2007,1,6) => 'Þrettándinn',
|
117
|
+
Date.civil(2007,1,19) => 'Bóndadagur',
|
118
|
+
Date.civil(2007,2,18) => 'Konudagur',
|
119
|
+
Date.civil(2007,4,5) => 'Skírdagur',
|
120
|
+
Date.civil(2007,4,6) => 'Föstudaginn langi',
|
121
|
+
Date.civil(2007,4,8) => 'Páskadagur',
|
122
|
+
Date.civil(2007,4,9) => 'Annar í páskum',
|
123
|
+
Date.civil(2007,4,19) => 'Sumardagurinn fyrsti',
|
124
|
+
Date.civil(2007,5,1) => 'Verkalýðsdagurinn',
|
125
|
+
Date.civil(2007,5,17) => 'Uppstigningardagur',
|
126
|
+
Date.civil(2007,5,27) => 'Hvítasunnudagur',
|
127
|
+
Date.civil(2007,5,28) => 'Annar í hvítasunnu',
|
128
|
+
Date.civil(2007,6,3) => 'Sjómannadagurinn',
|
129
|
+
Date.civil(2007,6,17) => 'Lýðveldisdagurinn',
|
130
|
+
Date.civil(2007,8,6) => 'Frídagur verslunarmanna',
|
131
|
+
Date.civil(2007,12,24) => 'Jól',
|
132
|
+
Date.civil(2007,12,25) => 'Jól',
|
133
|
+
Date.civil(2007,12,26) => 'Jól',
|
134
|
+
Date.civil(2007,12,31) => 'Gamlárskvöld'}.each do |date, name|
|
135
|
+
assert_equal name, (Holidays.on(date, :is, :informal)[0] || {})[:name]
|
136
|
+
end
|
data/data/it.yaml
ADDED
@@ -0,0 +1,66 @@
|
|
1
|
+
# Italian holiday definitions for the Ruby Holiday gem.
|
2
|
+
#
|
3
|
+
# Updated: 2008-11-23.
|
4
|
+
# Sources:
|
5
|
+
# - http://en.wikipedia.org/wiki/Holidays_in_Italy
|
6
|
+
---
|
7
|
+
months:
|
8
|
+
0:
|
9
|
+
- name: Pasqua
|
10
|
+
regions: [it]
|
11
|
+
function: easter(year)
|
12
|
+
- name: Lunedì dell'Angelo
|
13
|
+
regions: [it]
|
14
|
+
function: easter(year)+1
|
15
|
+
1:
|
16
|
+
- name: Capodanno
|
17
|
+
regions: [it]
|
18
|
+
mday: 1
|
19
|
+
- name: Epifania
|
20
|
+
regions: [it]
|
21
|
+
mday: 6
|
22
|
+
4:
|
23
|
+
- name: Festa della Liberazione
|
24
|
+
regions: [it]
|
25
|
+
mday: 25
|
26
|
+
5:
|
27
|
+
- name: Festa dei Lavoratori
|
28
|
+
regions: [it]
|
29
|
+
mday: 1
|
30
|
+
6:
|
31
|
+
- name: Festa della Repubblica
|
32
|
+
regions: [it]
|
33
|
+
mday: 2
|
34
|
+
8:
|
35
|
+
- name: Assunzione
|
36
|
+
regions: [it]
|
37
|
+
mday: 15
|
38
|
+
11:
|
39
|
+
- name: Ognissanti
|
40
|
+
regions: [it]
|
41
|
+
mday: 1
|
42
|
+
12:
|
43
|
+
- name: Immacolata Concezione
|
44
|
+
regions: [it]
|
45
|
+
mday: 8
|
46
|
+
- name: Natale
|
47
|
+
regions: [it]
|
48
|
+
mday: 25
|
49
|
+
- name: Santo Stefano
|
50
|
+
regions: [it]
|
51
|
+
mday: 26
|
52
|
+
tests: |
|
53
|
+
{Date.civil(2007,1,1) => 'Capodanno',
|
54
|
+
Date.civil(2007,1,6) => 'Epifania',
|
55
|
+
Date.civil(2007,4,8) => 'Pasqua',
|
56
|
+
Date.civil(2007,4,9) => 'Lunedì dell\'Angelo',
|
57
|
+
Date.civil(2007,4,25) => 'Festa della Liberazione',
|
58
|
+
Date.civil(2007,5,1) => 'Festa dei Lavoratori',
|
59
|
+
Date.civil(2007,6,2) => 'Festa della Repubblica',
|
60
|
+
Date.civil(2007,8,15) => 'Assunzione',
|
61
|
+
Date.civil(2007,11,1) => 'Ognissanti',
|
62
|
+
Date.civil(2007,12,8) => 'Immacolata Concezione',
|
63
|
+
Date.civil(2007,12,25) => 'Natale',
|
64
|
+
Date.civil(2007,12,26) => 'Santo Stefano'}.each do |date, name|
|
65
|
+
assert_equal name, (Holidays.on(date, :it, :informal)[0] || {})[:name]
|
66
|
+
end
|
data/data/mx.yaml
ADDED
@@ -0,0 +1,106 @@
|
|
1
|
+
# Mexican holiday definitions for the Ruby Holiday gem.
|
2
|
+
# Updated 2008-12-05.
|
3
|
+
# Sources:
|
4
|
+
# - http://www.britishembassy.gov.uk/servlet/Front?pagename=OpenMarket/Xcelerate/ShowPage&c=Page&cid=1125561634963
|
5
|
+
# - http://www.usembassy-mexico.gov/eng/holidays.html
|
6
|
+
---
|
7
|
+
months:
|
8
|
+
1:
|
9
|
+
- name: Año nuevo
|
10
|
+
regions: [mx]
|
11
|
+
mday: 1
|
12
|
+
- name: Dia de los Santos Reyes
|
13
|
+
regions: [mx]
|
14
|
+
mday: 6
|
15
|
+
2:
|
16
|
+
- name: Día de la Constitución
|
17
|
+
week: 1
|
18
|
+
regions: [mx]
|
19
|
+
wday: 1
|
20
|
+
3:
|
21
|
+
- name: Natalicio de Benito Juárez
|
22
|
+
week: 3
|
23
|
+
regions: [mx]
|
24
|
+
wday: 1
|
25
|
+
4:
|
26
|
+
- name: Día del Niño
|
27
|
+
regions: [mx]
|
28
|
+
mday: 30
|
29
|
+
type: informal
|
30
|
+
5:
|
31
|
+
- name: Día del Trabajo
|
32
|
+
regions: [mx]
|
33
|
+
mday: 1
|
34
|
+
- name: Cinco de Mayo
|
35
|
+
regions: [mx]
|
36
|
+
mday: 5
|
37
|
+
type: informal
|
38
|
+
- name: La Batalla de Puebla
|
39
|
+
regions: [mx_pue]
|
40
|
+
mday: 5
|
41
|
+
- name: Día de la Madre
|
42
|
+
regions: [mx]
|
43
|
+
mday: 10
|
44
|
+
type: informal
|
45
|
+
- name: Día del Maestro
|
46
|
+
regions: [mx]
|
47
|
+
mday: 15
|
48
|
+
type: informal
|
49
|
+
6:
|
50
|
+
- name: Día del Padre
|
51
|
+
regions: [mx]
|
52
|
+
wday: 0
|
53
|
+
week: 3
|
54
|
+
type: informal
|
55
|
+
9:
|
56
|
+
- name: Grito de Dolores
|
57
|
+
regions: [mx]
|
58
|
+
mday: 15
|
59
|
+
- name: Día de la Independencia
|
60
|
+
regions: [mx]
|
61
|
+
mday: 16
|
62
|
+
10:
|
63
|
+
- name: Día de la Raza
|
64
|
+
regions: [mx]
|
65
|
+
mday: 12
|
66
|
+
type: informal
|
67
|
+
11:
|
68
|
+
- name: Todos los Santos
|
69
|
+
regions: [mx]
|
70
|
+
mday: 1
|
71
|
+
type: informal
|
72
|
+
- name: Los Fieles Difuntos
|
73
|
+
regions: [mx]
|
74
|
+
mday: 2
|
75
|
+
type: informal
|
76
|
+
- name: Día de la Revolución
|
77
|
+
week: 3
|
78
|
+
regions: [mx]
|
79
|
+
wday: 1
|
80
|
+
12:
|
81
|
+
- name: Día de la Virgen de Guadalupe
|
82
|
+
regions: [mx]
|
83
|
+
mday: 12
|
84
|
+
type: informal
|
85
|
+
- name: Nochebuena
|
86
|
+
regions: [mx]
|
87
|
+
mday: 24
|
88
|
+
type: informal
|
89
|
+
- name: Navidad
|
90
|
+
regions: [mx]
|
91
|
+
mday: 25
|
92
|
+
- name: Los Santos Inocentes
|
93
|
+
regions: [mx]
|
94
|
+
mday: 28
|
95
|
+
tests: |
|
96
|
+
{Date.civil(2007,1,1) => 'Año nuevo',
|
97
|
+
Date.civil(2007,2,5) => 'Día de la Constitución',
|
98
|
+
Date.civil(2007,5,1) => 'Día del Trabajo',
|
99
|
+
Date.civil(2007,5,5) => 'Cinco de Mayo',
|
100
|
+
Date.civil(2007,9,16) => 'Día de la Independencia',
|
101
|
+
Date.civil(2007,11,1) => 'Todos los Santos',
|
102
|
+
Date.civil(2007,11,2) => 'Los Fieles Difuntos',
|
103
|
+
Date.civil(2007,11,19) => 'Día de la Revolución',
|
104
|
+
Date.civil(2007,12,25) => 'Navidad'}.each do |date, name|
|
105
|
+
assert_equal name, (Holidays.on(date, :mx, :informal)[0] || {})[:name]
|
106
|
+
end
|
data/data/nl.yaml
ADDED
@@ -0,0 +1,67 @@
|
|
1
|
+
# Dutch holiday definitions for the Ruby Holiday gem.
|
2
|
+
#
|
3
|
+
# Updated: 2008-11-23.
|
4
|
+
# Sources:
|
5
|
+
# - http://en.wikipedia.org/wiki/Public_holidays_in_the_Netherlands
|
6
|
+
# - http://www.buyusa.gov/netherlands/en/dutch_holidays.html
|
7
|
+
---
|
8
|
+
months:
|
9
|
+
0:
|
10
|
+
- name: Goede Vrijdag
|
11
|
+
regions: [nl]
|
12
|
+
function: easter(year)-2
|
13
|
+
- name: Pasen
|
14
|
+
regions: [nl]
|
15
|
+
function: easter(year)
|
16
|
+
- name: Pasen
|
17
|
+
regions: [nl]
|
18
|
+
function: easter(year)+1
|
19
|
+
- name: Hemelvaartsdag
|
20
|
+
regions: [nl]
|
21
|
+
function: easter(year)+39
|
22
|
+
- name: Pinksteren
|
23
|
+
regions: [nl]
|
24
|
+
function: easter(year)+49
|
25
|
+
- name: Pinksteren
|
26
|
+
regions: [nl]
|
27
|
+
function: easter(year)+50
|
28
|
+
1:
|
29
|
+
- name: Nieuwjaar
|
30
|
+
regions: [nl]
|
31
|
+
mday: 1
|
32
|
+
4:
|
33
|
+
- name: Koninginnedag
|
34
|
+
regions: [nl]
|
35
|
+
mday: 30
|
36
|
+
5:
|
37
|
+
- name: Dodenherdenking
|
38
|
+
regions: [nl]
|
39
|
+
mday: 4
|
40
|
+
- name: Bevrijdingsdag
|
41
|
+
regions: [nl]
|
42
|
+
mday: 5
|
43
|
+
12:
|
44
|
+
- name: Sinterklaas
|
45
|
+
regions: [nl]
|
46
|
+
mday: 5
|
47
|
+
type: informal
|
48
|
+
- name: Kerstmis
|
49
|
+
regions: [nl]
|
50
|
+
mday: 25
|
51
|
+
- name: Kerstmis
|
52
|
+
regions: [nl]
|
53
|
+
mday: 26
|
54
|
+
tests: |
|
55
|
+
{Date.civil(2008,1,1) => 'Nieuwjaar',
|
56
|
+
Date.civil(2008,3,21) => 'Goede Vrijdag',
|
57
|
+
Date.civil(2008,3,23) => 'Pasen',
|
58
|
+
Date.civil(2008,3,24) => 'Pasen',
|
59
|
+
Date.civil(2008,4,30) => 'Koninginnedag',
|
60
|
+
Date.civil(2008,5,1) => 'Hemelvaartsdag', # Ascension, Easter+39
|
61
|
+
Date.civil(2008,5,5) => 'Bevrijdingsdag',
|
62
|
+
Date.civil(2008,5,11) => 'Pinksteren', # Pentecost, Easter+49
|
63
|
+
Date.civil(2008,5,12) => 'Pinksteren', # Pentecost, Easter+50
|
64
|
+
Date.civil(2008,12,25) => 'Kerstmis',
|
65
|
+
Date.civil(2008,12,26) => 'Kerstmis'}.each do |date, name|
|
66
|
+
assert_equal name, (Holidays.on(date, :nl, :informal)[0] || {})[:name]
|
67
|
+
end
|
data/data/no.yaml
ADDED
@@ -0,0 +1,82 @@
|
|
1
|
+
# Norwegian holiday definitions for the Ruby Holiday gem.
|
2
|
+
#
|
3
|
+
# Added: 20010-02-22.
|
4
|
+
# Sources:
|
5
|
+
# - http://no.wikipedia.org/wiki/Offentlig_fridag
|
6
|
+
# - http://www.timeanddate.com/norsk/kalender.html
|
7
|
+
---
|
8
|
+
months:
|
9
|
+
0:
|
10
|
+
- name: Fastelavn
|
11
|
+
regions: ["no"]
|
12
|
+
function: easter(year)-49
|
13
|
+
type: informal
|
14
|
+
- name: Palmesøndag
|
15
|
+
regions: ["no"]
|
16
|
+
function: easter(year)-7
|
17
|
+
- name: Skjærtorsdag
|
18
|
+
regions: ["no"]
|
19
|
+
function: easter(year)-3
|
20
|
+
- name: Langfredag
|
21
|
+
regions: ["no"]
|
22
|
+
function: easter(year)-2
|
23
|
+
- name: 1. påskedag
|
24
|
+
regions: ["no"]
|
25
|
+
function: easter(year)
|
26
|
+
- name: 2. påskedag
|
27
|
+
regions: ["no"]
|
28
|
+
function: easter(year)+1
|
29
|
+
- name: Kristi Himmelfartsdag
|
30
|
+
regions: ["no"]
|
31
|
+
function: easter(year)+39
|
32
|
+
- name: 1. pinsedag
|
33
|
+
regions: ["no"]
|
34
|
+
function: easter(year)+49
|
35
|
+
- name: 2. pinsedag
|
36
|
+
regions: ["no"]
|
37
|
+
function: easter(year)+50
|
38
|
+
1:
|
39
|
+
- name: Nyttårsdag
|
40
|
+
regions: ["no"]
|
41
|
+
mday: 1
|
42
|
+
5:
|
43
|
+
- name: 1. mai
|
44
|
+
regions: ["no"]
|
45
|
+
mday: 1
|
46
|
+
- name: 17. mai
|
47
|
+
regions: ["no"]
|
48
|
+
mday: 17
|
49
|
+
12:
|
50
|
+
- name: Julaften
|
51
|
+
regions: ["no"]
|
52
|
+
mday: 24
|
53
|
+
type: informal
|
54
|
+
- name: 1. juledag
|
55
|
+
regions: ["no"]
|
56
|
+
mday: 25
|
57
|
+
- name: 2. juledag
|
58
|
+
regions: ["no"]
|
59
|
+
mday: 26
|
60
|
+
- name: Nyttårsaften
|
61
|
+
regions: ["no"]
|
62
|
+
mday: 31
|
63
|
+
type: informal
|
64
|
+
tests: |
|
65
|
+
{Date.civil(2010,1,1) => 'Nyttårsdag',
|
66
|
+
Date.civil(2010,5,1) => '1. mai',
|
67
|
+
Date.civil(2010,5,17) => '17. mai',
|
68
|
+
Date.civil(2010,12,24) => 'Julaften',
|
69
|
+
Date.civil(2010,12,25) => '1. juledag',
|
70
|
+
Date.civil(2010,12,26) => '2. juledag',
|
71
|
+
Date.civil(2010,12,31) => 'Nyttårsaften',
|
72
|
+
Date.civil(2010,2,14) => 'Fastelavn',
|
73
|
+
Date.civil(2010,3,28) => 'Palmesøndag',
|
74
|
+
Date.civil(2010,4,1) => 'Skjærtorsdag',
|
75
|
+
Date.civil(2010,4,2) => 'Langfredag',
|
76
|
+
Date.civil(2010,4,4) => '1. påskedag',
|
77
|
+
Date.civil(2010,4,5) => '2. påskedag',
|
78
|
+
Date.civil(2010,5,13) => 'Kristi Himmelfartsdag',
|
79
|
+
Date.civil(2010,5,23) => '1. pinsedag',
|
80
|
+
Date.civil(2010,5,24) => '2. pinsedag'}.each do |date, name|
|
81
|
+
assert_equal name, (Holidays.on(date, :no, :informal)[0] || {})[:name]
|
82
|
+
end
|
@@ -0,0 +1,49 @@
|
|
1
|
+
# Informal North American holiday definitions for the Ruby Holiday gem.
|
2
|
+
# Updated 2008-11-22.
|
3
|
+
---
|
4
|
+
months:
|
5
|
+
2:
|
6
|
+
- name: Groundhog Day
|
7
|
+
regions: [us, ca]
|
8
|
+
mday: 2
|
9
|
+
type: informal
|
10
|
+
- name: Valentine's Day
|
11
|
+
regions: [us, ca]
|
12
|
+
mday: 14
|
13
|
+
type: informal
|
14
|
+
3:
|
15
|
+
- name: St. Patrick's Day
|
16
|
+
regions: [us, ca]
|
17
|
+
mday: 17
|
18
|
+
type: informal
|
19
|
+
4:
|
20
|
+
- name: April Fool's Day
|
21
|
+
regions: [us, ca]
|
22
|
+
mday: 1
|
23
|
+
type: informal
|
24
|
+
- name: Earth Day
|
25
|
+
regions: [us, ca]
|
26
|
+
mday: 22
|
27
|
+
type: informal
|
28
|
+
5:
|
29
|
+
- name: Mother's Day
|
30
|
+
week: 2
|
31
|
+
regions: [us, ca]
|
32
|
+
wday: 0
|
33
|
+
type: informal
|
34
|
+
- name: Armed Forces Day
|
35
|
+
week: 3
|
36
|
+
regions: [us]
|
37
|
+
wday: 6
|
38
|
+
type: informal
|
39
|
+
5:
|
40
|
+
- name: Father's Day
|
41
|
+
week: 3
|
42
|
+
regions: [us, ca]
|
43
|
+
wday: 0
|
44
|
+
type: informal
|
45
|
+
10:
|
46
|
+
- name: Halloween
|
47
|
+
regions: [us, ca]
|
48
|
+
mday: 31
|
49
|
+
type: informal
|
data/data/nyse.yaml
ADDED
@@ -0,0 +1,63 @@
|
|
1
|
+
# NYSE holiday definitions for the Ruby Holiday gem.
|
2
|
+
#
|
3
|
+
# By Alan Larkin
|
4
|
+
# Source: http://www.nyse.com/about/newsevents/1176373643795.html#earlyclose2008
|
5
|
+
#
|
6
|
+
# Updated 2008-11-19.
|
7
|
+
---
|
8
|
+
months:
|
9
|
+
0:
|
10
|
+
- name: Good Friday
|
11
|
+
regions: [nyse]
|
12
|
+
function: easter(year)-2
|
13
|
+
1:
|
14
|
+
- name: New Year's Day
|
15
|
+
regions: [nyse]
|
16
|
+
mday: 1
|
17
|
+
- name: Martin Luther King, Jr. Day
|
18
|
+
week: 3
|
19
|
+
regions: [nyse]
|
20
|
+
wday: 1
|
21
|
+
2:
|
22
|
+
- name: Presidents' Day
|
23
|
+
week: 3
|
24
|
+
regions: [nyse]
|
25
|
+
wday: 1
|
26
|
+
5:
|
27
|
+
- name: Memorial Day
|
28
|
+
week: -1
|
29
|
+
regions: [nyse]
|
30
|
+
wday: 1
|
31
|
+
7:
|
32
|
+
- name: Independence Day
|
33
|
+
regions: [nyse]
|
34
|
+
mday: 4
|
35
|
+
observed: to_weekday_if_weekend
|
36
|
+
9:
|
37
|
+
- name: Labor Day
|
38
|
+
week: 1
|
39
|
+
regions: [nyse]
|
40
|
+
wday: 1
|
41
|
+
11:
|
42
|
+
- name: Thanksgiving
|
43
|
+
week: 4
|
44
|
+
regions: [nyse]
|
45
|
+
wday: 4
|
46
|
+
12:
|
47
|
+
- name: Christmas Day
|
48
|
+
regions: [nyse]
|
49
|
+
mday: 25
|
50
|
+
observed: to_weekday_if_weekend
|
51
|
+
methods:
|
52
|
+
tests: |
|
53
|
+
{Date.civil(2008,1,1) => 'New Year\'s Day',
|
54
|
+
Date.civil(2008,1,21) => 'Martin Luther King, Jr. Day',
|
55
|
+
Date.civil(2008,2,18) => 'Presidents\' Day',
|
56
|
+
Date.civil(2008,3,21) => 'Good Friday',
|
57
|
+
Date.civil(2008,5,26) => 'Memorial Day',
|
58
|
+
Date.civil(2008,7,4) => 'Independence Day',
|
59
|
+
Date.civil(2008,9,1) => 'Labor Day',
|
60
|
+
Date.civil(2008,11,27) => 'Thanksgiving',
|
61
|
+
Date.civil(2008,12,25) => 'Christmas Day'}.each do |date, name|
|
62
|
+
assert_equal name, (Holidays.on(date, :nyse)[0] || {})[:name]
|
63
|
+
end
|