calendarium-romanum 0.6.0 → 0.7.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/bin/calendariumrom +3 -0
- data/config/locales/es.yml +90 -0
- data/data/README.md +43 -1
- data/data/czech-brno-cs.txt +4 -6
- data/data/czech-budejovice-cs.txt +4 -6
- data/data/czech-cechy-cs.txt +4 -5
- data/data/czech-cs.txt +237 -234
- data/data/czech-hradec-cs.txt +3 -5
- data/data/czech-litomerice-cs.txt +5 -7
- data/data/czech-morava-cs.txt +4 -5
- data/data/czech-olomouc-cs.txt +2 -4
- data/data/czech-ostrava-cs.txt +3 -5
- data/data/czech-plzen-cs.txt +3 -5
- data/data/czech-praha-cs.txt +3 -4
- data/data/universal-en.txt +214 -211
- data/data/universal-es.txt +243 -0
- data/data/universal-fr.txt +214 -210
- data/data/universal-it.txt +214 -211
- data/data/universal-la.txt +214 -212
- data/lib/calendarium-romanum.rb +6 -0
- data/lib/calendarium-romanum/abstract_date.rb +12 -0
- data/lib/calendarium-romanum/calendar.rb +93 -13
- data/lib/calendarium-romanum/cli.rb +11 -4
- data/lib/calendarium-romanum/cr.rb +16 -0
- data/lib/calendarium-romanum/data.rb +34 -7
- data/lib/calendarium-romanum/day.rb +132 -14
- data/lib/calendarium-romanum/enum.rb +22 -1
- data/lib/calendarium-romanum/enums.rb +80 -28
- data/lib/calendarium-romanum/errors.rb +1 -1
- data/lib/calendarium-romanum/ordinalizer.rb +10 -1
- data/lib/calendarium-romanum/perpetual_calendar.rb +43 -5
- data/lib/calendarium-romanum/rank.rb +23 -0
- data/lib/calendarium-romanum/sanctorale.rb +119 -20
- data/lib/calendarium-romanum/sanctorale_factory.rb +74 -3
- data/lib/calendarium-romanum/sanctorale_loader.rb +60 -19
- data/lib/calendarium-romanum/temporale.rb +110 -9
- data/lib/calendarium-romanum/temporale/celebration_factory.rb +45 -2
- data/lib/calendarium-romanum/temporale/dates.rb +65 -1
- data/lib/calendarium-romanum/temporale/extensions/christ_eternal_priest.rb +14 -2
- data/lib/calendarium-romanum/transfers.rb +20 -1
- data/lib/calendarium-romanum/util.rb +15 -3
- data/lib/calendarium-romanum/version.rb +3 -2
- data/spec/calendar_spec.rb +48 -4
- data/spec/celebration_factory_spec.rb +4 -0
- data/spec/celebration_spec.rb +9 -0
- data/spec/cli_spec.rb +7 -0
- data/spec/data_spec.rb +23 -0
- data/spec/day_spec.rb +26 -0
- data/spec/i18n_spec.rb +10 -0
- data/spec/sanctorale_factory_spec.rb +113 -9
- data/spec/sanctorale_loader_spec.rb +49 -24
- data/spec/sanctorale_spec.rb +72 -9
- data/spec/temporale_spec.rb +52 -53
- data/spec/year_spec.rb +25 -0
- metadata +7 -3
data/spec/sanctorale_spec.rb
CHANGED
@@ -4,10 +4,12 @@ describe CR::Sanctorale do
|
|
4
4
|
let(:s) { described_class.new }
|
5
5
|
|
6
6
|
# example celebrations
|
7
|
-
let(:antonius) { CR::Celebration.new('S. Antonii, abbatis', CR::Ranks::MEMORIAL_GENERAL) }
|
8
|
-
let(:
|
9
|
-
let(:
|
10
|
-
let(:
|
7
|
+
let(:antonius) { CR::Celebration.new('S. Antonii, abbatis', CR::Ranks::MEMORIAL_GENERAL, CR::Colours::WHITE, :antonius) }
|
8
|
+
let(:nullus) { CR::Celebration.new('S. Nullius', CR::Ranks::MEMORIAL_OPTIONAL, CR::Colours::WHITE, :nullus) }
|
9
|
+
let(:ignotus) { CR::Celebration.new('S. Ignoti', CR::Ranks::MEMORIAL_OPTIONAL, CR::Colours::WHITE, :ignotus) }
|
10
|
+
let(:opt_memorial) { nullus }
|
11
|
+
let(:opt_memorial_2) { ignotus }
|
12
|
+
let(:solemnity) { CR::Celebration.new('S. Nullius', CR::Ranks::SOLEMNITY_PROPER, CR::Colours::WHITE, :nullus_solemnity) }
|
11
13
|
|
12
14
|
describe '#get' do
|
13
15
|
describe 'for an empty day' do
|
@@ -61,27 +63,51 @@ describe CR::Sanctorale do
|
|
61
63
|
expect { s.add 1, 13, opt_memorial }.not_to change { s.solemnities.size }
|
62
64
|
end
|
63
65
|
|
66
|
+
it 'fails when adding second celebration with the same symbol' do
|
67
|
+
s.add 1, 13, antonius
|
68
|
+
|
69
|
+
expect do
|
70
|
+
s.add 1, 14, antonius
|
71
|
+
end.to raise_exception ArgumentError, /duplicate symbol :antonius/
|
72
|
+
end
|
73
|
+
|
64
74
|
describe 'multiple celebrations on a single day' do
|
65
75
|
it 'succeeds for any number of optional memorials' do
|
76
|
+
s.add 1, 13, opt_memorial
|
77
|
+
|
66
78
|
expect do
|
67
|
-
s.add 1, 13, opt_memorial
|
68
79
|
s.add 1, 13, opt_memorial_2
|
69
80
|
end.not_to raise_exception
|
70
81
|
end
|
71
82
|
|
72
83
|
it 'fails when adding a non-optional memorial' do
|
84
|
+
s.add 1, 13, opt_memorial
|
85
|
+
|
73
86
|
expect do
|
74
|
-
s.add 1, 13, opt_memorial
|
75
87
|
s.add 1, 13, CR::Celebration.new('S. Ignoti', CR::Ranks::MEMORIAL_GENERAL)
|
76
88
|
end.to raise_exception ArgumentError
|
77
89
|
end
|
78
90
|
|
79
91
|
it 'fails when adding to a non-optional memorial' do
|
92
|
+
s.add 1, 13, CR::Celebration.new('S. Nullius', CR::Ranks::MEMORIAL_GENERAL)
|
93
|
+
|
80
94
|
expect do
|
81
|
-
s.add 1, 13, CR::Celebration.new('S. Nullius', CR::Ranks::MEMORIAL_GENERAL)
|
82
95
|
s.add 1, 13, opt_memorial_2
|
83
96
|
end.to raise_exception ArgumentError
|
84
97
|
end
|
98
|
+
|
99
|
+
# there used to be a bug, registering a solemnity *before*
|
100
|
+
# checking if it can be added at all
|
101
|
+
it 'does not modify internal state when it fails' do
|
102
|
+
s.add 1, 13, opt_memorial
|
103
|
+
|
104
|
+
expect do
|
105
|
+
begin
|
106
|
+
s.add 1, 13, CR::Celebration.new('S. Nullius', CR::Ranks::SOLEMNITY_GENERAL)
|
107
|
+
rescue ArgumentError
|
108
|
+
end
|
109
|
+
end.not_to change { s.solemnities.size }
|
110
|
+
end
|
85
111
|
end
|
86
112
|
end
|
87
113
|
|
@@ -103,7 +129,7 @@ describe CR::Sanctorale do
|
|
103
129
|
s.add 1, 13, solemnity
|
104
130
|
expect do
|
105
131
|
s.replace 1, 13, [opt_memorial_2]
|
106
|
-
end.to change { s.solemnities.size }.by
|
132
|
+
end.to change { s.solemnities.size }.by(-1)
|
107
133
|
end
|
108
134
|
|
109
135
|
it 'does not simply save the passed Array' do
|
@@ -114,6 +140,37 @@ describe CR::Sanctorale do
|
|
114
140
|
|
115
141
|
expect(s.get(1, 13)).not_to include nil
|
116
142
|
end
|
143
|
+
|
144
|
+
describe 'duplicate symbol handling' do
|
145
|
+
it 'fails when adding second celebration with the same symbol' do
|
146
|
+
s.replace 1, 13, [nullus]
|
147
|
+
|
148
|
+
expect do
|
149
|
+
s.replace 1, 14, [nullus]
|
150
|
+
end.to raise_exception ArgumentError, /duplicate symbols \[:nullus\]/
|
151
|
+
end
|
152
|
+
|
153
|
+
it 'failed attempts do not modify state of the internal symbol set' do
|
154
|
+
s.replace 1, 14, [nullus]
|
155
|
+
s.replace 1, 15, [ignotus]
|
156
|
+
|
157
|
+
expect do
|
158
|
+
s.replace 1, 14, [ignotus]
|
159
|
+
end.to raise_exception ArgumentError, /duplicate symbols \[:ignotus\]/
|
160
|
+
|
161
|
+
expect do
|
162
|
+
s.replace 1, 15, [nullus]
|
163
|
+
end.to raise_exception ArgumentError, /duplicate symbols \[:nullus\]/
|
164
|
+
end
|
165
|
+
|
166
|
+
it 'succeeds when celebration with the same symbol is being replaced' do
|
167
|
+
s.replace 1, 13, [nullus]
|
168
|
+
|
169
|
+
expect do
|
170
|
+
s.replace 1, 13, [nullus]
|
171
|
+
end.not_to raise_exception
|
172
|
+
end
|
173
|
+
end
|
117
174
|
end
|
118
175
|
|
119
176
|
describe '#update' do
|
@@ -166,11 +223,17 @@ describe CR::Sanctorale do
|
|
166
223
|
end
|
167
224
|
|
168
225
|
describe '#each_day' do
|
169
|
-
|
226
|
+
before :each do
|
170
227
|
s.add 1, 17, antonius
|
228
|
+
end
|
171
229
|
|
230
|
+
it 'yields each date and corresponding CR::Celebrations' do
|
172
231
|
expect {|block| s.each_day(&block) }.to yield_with_args(CR::AbstractDate.new(1, 17), [antonius])
|
173
232
|
end
|
233
|
+
|
234
|
+
it 'can be called without a block' do
|
235
|
+
expect(s.each_day).to be_an Enumerator
|
236
|
+
end
|
174
237
|
end
|
175
238
|
|
176
239
|
describe '#freeze' do
|
data/spec/temporale_spec.rb
CHANGED
@@ -2,10 +2,9 @@
|
|
2
2
|
require_relative 'spec_helper'
|
3
3
|
|
4
4
|
describe CR::Temporale do
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
end
|
5
|
+
let(:t12) { described_class.new 2012 }
|
6
|
+
let(:t13) { described_class.new 2013 }
|
7
|
+
let(:t) { t12 }
|
9
8
|
|
10
9
|
let(:factory) { CR::Temporale::CelebrationFactory }
|
11
10
|
|
@@ -123,26 +122,26 @@ describe CR::Temporale do
|
|
123
122
|
|
124
123
|
describe '#date_range' do
|
125
124
|
it 'includes days of the year' do
|
126
|
-
expect(
|
127
|
-
expect(
|
125
|
+
expect(t.date_range).to include Date.new(2012, 12, 3)
|
126
|
+
expect(t.date_range).to include Date.new(2013, 11, 5)
|
128
127
|
end
|
129
128
|
end
|
130
129
|
|
131
130
|
describe '#season' do
|
132
131
|
shared_examples 'season determination' do |year_beginning, year_end|
|
133
132
|
if year_beginning
|
134
|
-
it { expect {
|
133
|
+
it { expect { t13.season(date_beginning - 1) }.to raise_exception RangeError }
|
135
134
|
else
|
136
|
-
it { expect(
|
135
|
+
it { expect(t13.season(date_beginning - 1)).not_to be season }
|
137
136
|
end
|
138
137
|
|
139
|
-
it { expect(
|
140
|
-
it { expect(
|
138
|
+
it { expect(t13.season(date_beginning)).to be season }
|
139
|
+
it { expect(t13.season(date_end)).to be season }
|
141
140
|
|
142
141
|
if year_end
|
143
|
-
it { expect {
|
142
|
+
it { expect { t13.season(date_end + 1) }.to raise_exception RangeError }
|
144
143
|
else
|
145
|
-
it { expect(
|
144
|
+
it { expect(t13.season(date_end + 1)).not_to be season }
|
146
145
|
end
|
147
146
|
end
|
148
147
|
|
@@ -224,43 +223,43 @@ describe CR::Temporale do
|
|
224
223
|
|
225
224
|
describe '#get' do
|
226
225
|
it 'returns a Celebration' do
|
227
|
-
expect(
|
226
|
+
expect(t13.get(8, 12)).to be_a CR::Celebration
|
228
227
|
end
|
229
228
|
|
230
229
|
describe 'for' do
|
231
230
|
describe 'ferial' do
|
232
231
|
it 'in Ordinary Time' do
|
233
|
-
c =
|
232
|
+
c = t13.get(8, 12)
|
234
233
|
expect(c.rank).to eq CR::Ranks::FERIAL
|
235
234
|
expect(c.color).to eq CR::Colours::GREEN
|
236
235
|
end
|
237
236
|
|
238
237
|
it 'in Advent' do
|
239
|
-
c =
|
238
|
+
c = t13.get(12, 12)
|
240
239
|
expect(c.rank).to eq CR::Ranks::FERIAL
|
241
240
|
expect(c.color).to eq CR::Colours::VIOLET
|
242
241
|
end
|
243
242
|
|
244
243
|
it 'in the last week of Advent' do
|
245
|
-
c =
|
244
|
+
c = t13.get(12, 23)
|
246
245
|
expect(c.rank).to eq CR::Ranks::FERIAL_PRIVILEGED
|
247
246
|
expect(c.color).to eq CR::Colours::VIOLET
|
248
247
|
end
|
249
248
|
|
250
249
|
it 'in Christmas time' do
|
251
|
-
c =
|
250
|
+
c = t13.get(1, 3)
|
252
251
|
expect(c.rank).to eq CR::Ranks::FERIAL
|
253
252
|
expect(c.color).to eq CR::Colours::WHITE
|
254
253
|
end
|
255
254
|
|
256
255
|
it 'in Lent' do
|
257
|
-
c =
|
256
|
+
c = t13.get(3, 18)
|
258
257
|
expect(c.rank).to eq CR::Ranks::FERIAL_PRIVILEGED
|
259
258
|
expect(c.color).to eq CR::Colours::VIOLET
|
260
259
|
end
|
261
260
|
|
262
261
|
it 'in Easter Time' do
|
263
|
-
c =
|
262
|
+
c = t13.get(5, 5)
|
264
263
|
expect(c.rank).to eq CR::Ranks::FERIAL
|
265
264
|
expect(c.color).to eq CR::Colours::WHITE
|
266
265
|
end
|
@@ -268,31 +267,31 @@ describe CR::Temporale do
|
|
268
267
|
|
269
268
|
describe 'Sunday' do
|
270
269
|
it 'in Ordinary Time' do
|
271
|
-
c =
|
270
|
+
c = t13.get(8, 10)
|
272
271
|
expect(c.rank).to eq CR::Ranks::SUNDAY_UNPRIVILEGED
|
273
272
|
expect(c.color).to eq CR::Colours::GREEN
|
274
273
|
end
|
275
274
|
|
276
275
|
it 'in Advent' do
|
277
|
-
c =
|
276
|
+
c = t13.get(12, 15)
|
278
277
|
expect(c.rank).to eq CR::Ranks::PRIMARY
|
279
278
|
expect(c.color).to eq CR::Colours::VIOLET
|
280
279
|
end
|
281
280
|
|
282
281
|
it 'in Christmas time' do
|
283
|
-
c =
|
282
|
+
c = t13.get(1, 5)
|
284
283
|
expect(c.rank).to eq CR::Ranks::SUNDAY_UNPRIVILEGED
|
285
284
|
expect(c.color).to eq CR::Colours::WHITE
|
286
285
|
end
|
287
286
|
|
288
287
|
it 'in Lent' do
|
289
|
-
c =
|
288
|
+
c = t13.get(3, 23)
|
290
289
|
expect(c.rank).to eq CR::Ranks::PRIMARY
|
291
290
|
expect(c.color).to eq CR::Colours::VIOLET
|
292
291
|
end
|
293
292
|
|
294
293
|
it 'in Easter Time' do
|
295
|
-
c =
|
294
|
+
c = t13.get(5, 11)
|
296
295
|
expect(c.rank).to eq CR::Ranks::PRIMARY
|
297
296
|
expect(c.color).to eq CR::Colours::WHITE
|
298
297
|
end
|
@@ -300,13 +299,13 @@ describe CR::Temporale do
|
|
300
299
|
|
301
300
|
describe 'solemnities and their cycles - ' do
|
302
301
|
it 'end of Advent time' do
|
303
|
-
c =
|
302
|
+
c = t13.get(12, 17)
|
304
303
|
expect(c.rank).to eq CR::Ranks::FERIAL_PRIVILEGED
|
305
304
|
expect(c.colour).to eq CR::Colours::VIOLET
|
306
305
|
end
|
307
306
|
|
308
307
|
it 'Nativity' do
|
309
|
-
c =
|
308
|
+
c = t13.get(12, 25)
|
310
309
|
expect(c.rank).to eq CR::Ranks::PRIMARY
|
311
310
|
expect(c.title).to have_translation 'Christmas'
|
312
311
|
expect(c.colour).to eq CR::Colours::WHITE
|
@@ -315,13 +314,13 @@ describe CR::Temporale do
|
|
315
314
|
end
|
316
315
|
|
317
316
|
it 'day in the octave of Nativity' do
|
318
|
-
c =
|
317
|
+
c = t13.get(12, 27)
|
319
318
|
expect(c.rank).to eq CR::Ranks::FERIAL_PRIVILEGED
|
320
319
|
expect(c.colour).to eq CR::Colours::WHITE
|
321
320
|
end
|
322
321
|
|
323
322
|
it 'Holy Family' do
|
324
|
-
c =
|
323
|
+
c = t13.get(12, 29)
|
325
324
|
expect(c.rank).to eq CR::Ranks::FEAST_LORD_GENERAL
|
326
325
|
expect(c.title).to have_translation 'The Holy Family'
|
327
326
|
expect(c.colour).to eq CR::Colours::WHITE
|
@@ -329,56 +328,56 @@ describe CR::Temporale do
|
|
329
328
|
|
330
329
|
context 'when a Sunday does not occur between Dec 25 and Jan 1' do
|
331
330
|
it 'is Holy Family on Friday Dec 30' do
|
332
|
-
|
333
|
-
c =
|
331
|
+
t16 = described_class.new 2016
|
332
|
+
c = t16.get(12, 30)
|
334
333
|
expect(c.title).to have_translation 'The Holy Family'
|
335
334
|
end
|
336
335
|
end
|
337
336
|
|
338
337
|
it 'Epiphany' do
|
339
|
-
c =
|
338
|
+
c = t13.get(1, 6)
|
340
339
|
expect(c.rank).to eq CR::Ranks::PRIMARY
|
341
340
|
expect(c.title).to have_translation 'The Epiphany'
|
342
341
|
expect(c.colour).to eq CR::Colours::WHITE
|
343
342
|
end
|
344
343
|
|
345
344
|
it 'Baptism of the Lord' do
|
346
|
-
c =
|
345
|
+
c = t13.get(1, 12)
|
347
346
|
expect(c.rank).to eq CR::Ranks::FEAST_LORD_GENERAL
|
348
347
|
expect(c.title).to have_translation 'The Baptism of the Lord'
|
349
348
|
expect(c.colour).to eq CR::Colours::WHITE
|
350
349
|
end
|
351
350
|
|
352
351
|
it 'Ash Wednesday' do
|
353
|
-
c =
|
352
|
+
c = t13.get(3, 5)
|
354
353
|
expect(c.rank).to eq CR::Ranks::PRIMARY
|
355
354
|
expect(c.title).to have_translation 'Ash Wednesday'
|
356
355
|
expect(c.colour).to eq CR::Colours::VIOLET
|
357
356
|
end
|
358
357
|
|
359
358
|
it 'Palm Sunday' do
|
360
|
-
c =
|
359
|
+
c = t13.get(4, 13)
|
361
360
|
expect(c.rank).to eq CR::Ranks::PRIMARY
|
362
361
|
expect(c.title).to have_translation 'Passion Sunday (Palm Sunday)'
|
363
362
|
expect(c.colour).to eq CR::Colours::RED
|
364
363
|
end
|
365
364
|
|
366
365
|
it 'Good Friday' do
|
367
|
-
c =
|
366
|
+
c = t13.get(4, 18)
|
368
367
|
expect(c.rank).to eq CR::Ranks::TRIDUUM
|
369
368
|
expect(c.title).to have_translation 'Good Friday'
|
370
369
|
expect(c.colour).to eq CR::Colours::RED
|
371
370
|
end
|
372
371
|
|
373
372
|
it 'Holy Saturday' do
|
374
|
-
c =
|
373
|
+
c = t13.get(4, 19)
|
375
374
|
expect(c.rank).to eq CR::Ranks::TRIDUUM
|
376
375
|
expect(c.title).to have_translation 'Holy Saturday'
|
377
376
|
expect(c.colour).to eq CR::Colours::VIOLET
|
378
377
|
end
|
379
378
|
|
380
379
|
it 'Resurrection' do
|
381
|
-
c =
|
380
|
+
c = t13.get(4, 20)
|
382
381
|
expect(c.rank).to eq CR::Ranks::TRIDUUM
|
383
382
|
expect(c.title).to have_translation 'Easter Sunday'
|
384
383
|
expect(c.colour).to eq CR::Colours::WHITE
|
@@ -386,14 +385,14 @@ describe CR::Temporale do
|
|
386
385
|
end
|
387
386
|
|
388
387
|
it 'Ascension' do
|
389
|
-
c =
|
388
|
+
c = t13.get(5, 29)
|
390
389
|
expect(c.rank).to eq CR::Ranks::PRIMARY
|
391
390
|
expect(c.title).to have_translation 'The Ascension'
|
392
391
|
expect(c.colour).to eq CR::Colours::WHITE
|
393
392
|
end
|
394
393
|
|
395
394
|
it 'Pentecost' do
|
396
|
-
c =
|
395
|
+
c = t13.get(6, 8)
|
397
396
|
expect(c.rank).to eq CR::Ranks::PRIMARY
|
398
397
|
expect(c.title).to have_translation 'Pentecost'
|
399
398
|
expect(c.colour).to eq CR::Colours::RED
|
@@ -401,28 +400,28 @@ describe CR::Temporale do
|
|
401
400
|
end
|
402
401
|
|
403
402
|
it 'Trinity' do
|
404
|
-
c =
|
403
|
+
c = t13.get(6, 15)
|
405
404
|
expect(c.rank).to eq CR::Ranks::SOLEMNITY_GENERAL
|
406
405
|
expect(c.title).to have_translation 'Trinity Sunday'
|
407
406
|
expect(c.colour).to eq CR::Colours::WHITE
|
408
407
|
end
|
409
408
|
|
410
409
|
it 'Body of Christ' do
|
411
|
-
c =
|
410
|
+
c = t13.get(6, 19)
|
412
411
|
expect(c.rank).to eq CR::Ranks::SOLEMNITY_GENERAL
|
413
412
|
expect(c.title).to have_translation 'Corpus Christi (The Body and Blood of Christ)'
|
414
413
|
expect(c.colour).to eq CR::Colours::WHITE
|
415
414
|
end
|
416
415
|
|
417
416
|
it 'Sacred Heart' do
|
418
|
-
c =
|
417
|
+
c = t13.get(6, 27)
|
419
418
|
expect(c.rank).to eq CR::Ranks::SOLEMNITY_GENERAL
|
420
419
|
expect(c.title).to have_translation 'The Sacred Heart of Jesus'
|
421
420
|
expect(c.colour).to eq CR::Colours::WHITE
|
422
421
|
end
|
423
422
|
|
424
423
|
it 'Christ the King' do
|
425
|
-
c =
|
424
|
+
c = t13.get(11, 23)
|
426
425
|
expect(c.rank).to eq CR::Ranks::SOLEMNITY_GENERAL
|
427
426
|
expect(c.title).to have_translation 'Christ The King'
|
428
427
|
expect(c.colour).to eq CR::Colours::WHITE
|
@@ -431,21 +430,21 @@ describe CR::Temporale do
|
|
431
430
|
describe 'other locales' do
|
432
431
|
it 'Latin' do
|
433
432
|
I18n.with_locale(:la) do
|
434
|
-
c =
|
433
|
+
c = t13.get(11, 23)
|
435
434
|
expect(c.title).to eq 'Domini nostri Iesu Christi universorum regis'
|
436
435
|
end
|
437
436
|
end
|
438
437
|
|
439
438
|
it 'Czech' do
|
440
439
|
I18n.with_locale(:cs) do
|
441
|
-
c =
|
440
|
+
c = t13.get(11, 23)
|
442
441
|
expect(c.title).to eq 'Ježíše Krista krále'
|
443
442
|
end
|
444
443
|
end
|
445
444
|
|
446
445
|
it 'Italian' do
|
447
446
|
I18n.with_locale(:it) do
|
448
|
-
c =
|
447
|
+
c = t13.get(11, 23)
|
449
448
|
expect(c.title).to eq "Nostro Signore Gesù Cristo Re dell'universo"
|
450
449
|
end
|
451
450
|
end
|
@@ -455,14 +454,14 @@ describe CR::Temporale do
|
|
455
454
|
# movable sanctorale feasts don't really belong in Temporale, but ...
|
456
455
|
describe 'movable sanctorale feasts' do
|
457
456
|
it 'Immaculate Heart' do
|
458
|
-
c =
|
457
|
+
c = t13.get(6, 28)
|
459
458
|
expect(c.title).to have_translation 'The Immaculate Heart of Mary'
|
460
459
|
expect(c.rank).to eq CR::Ranks::MEMORIAL_GENERAL
|
461
460
|
end
|
462
461
|
|
463
462
|
it 'Mary, Mother of the Church' do
|
464
463
|
# it would be an anachronism to retrieve this celebration
|
465
|
-
# from
|
464
|
+
# from t13
|
466
465
|
t17 = described_class.new 2017
|
467
466
|
c = t17.get(5, 21)
|
468
467
|
expect(c.title).to have_translation 'Mary, Mother of the Church'
|
@@ -473,7 +472,7 @@ describe CR::Temporale do
|
|
473
472
|
|
474
473
|
describe 'titles of Sundays and ferials' do
|
475
474
|
def title_for(month, day)
|
476
|
-
|
475
|
+
t13.get(month, day).title
|
477
476
|
end
|
478
477
|
|
479
478
|
describe 'Ordinary time' do
|
@@ -503,7 +502,7 @@ describe CR::Temporale do
|
|
503
502
|
describe 'Christmas time' do
|
504
503
|
describe 'Octave of Christmas' do
|
505
504
|
it 'ferial' do
|
506
|
-
day =
|
505
|
+
day = t13.get(12, 30)
|
507
506
|
expect(day.rank).to eq CR::Ranks::FERIAL_PRIVILEGED
|
508
507
|
expect(day.title).to have_translation '6th day of Christmas Octave'
|
509
508
|
end
|
@@ -543,7 +542,7 @@ describe CR::Temporale do
|
|
543
542
|
|
544
543
|
describe 'Holy Week' do
|
545
544
|
it 'ferial' do
|
546
|
-
day =
|
545
|
+
day = t13.get(4, 14)
|
547
546
|
expect(day.rank).to eq CR::Ranks::PRIMARY
|
548
547
|
expect(day.title).to have_translation 'Monday of Holy Week'
|
549
548
|
end
|
@@ -553,13 +552,13 @@ describe CR::Temporale do
|
|
553
552
|
describe 'Easter' do
|
554
553
|
describe 'Easter Octave' do
|
555
554
|
it 'ferial' do
|
556
|
-
c =
|
555
|
+
c = t13.get(4, 22)
|
557
556
|
expect(c.rank).to eq CR::Ranks::PRIMARY
|
558
557
|
expect(c.title).to have_translation 'Easter Tuesday'
|
559
558
|
end
|
560
559
|
|
561
560
|
it 'Sunday (the octave day)' do
|
562
|
-
c =
|
561
|
+
c = t13.get(4, 27)
|
563
562
|
expect(c.rank).to eq CR::Ranks::PRIMARY
|
564
563
|
expect(c.title).to have_translation '2nd Sunday of Easter'
|
565
564
|
end
|