when_exe 0.4.2 → 0.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/LICENSE.ja.txt +8 -21
- data/LICENSE.txt +5 -27
- data/README.md +25 -79
- data/bin/.pryrc +9 -0
- data/bin/make_ttl.rb +3 -2
- data/bin/make_ttl.rb.config +3 -3
- data/lib/when_exe.rb +101 -5
- data/lib/when_exe/basictypes.rb +47 -16
- data/lib/when_exe/calendarnote.rb +27 -18
- data/lib/when_exe/calendartypes.rb +12 -50
- data/lib/when_exe/coordinates.rb +37 -391
- data/lib/when_exe/ephemeris.rb +53 -14
- data/lib/when_exe/ephemeris/eclipse.rb +8 -8
- data/lib/when_exe/ephemeris/moon.rb +333 -333
- data/lib/when_exe/ephemeris/notes.rb +29 -17
- data/lib/when_exe/ephemeris/phase_table.rb +825 -0
- data/lib/when_exe/ephemeris/term_table.rb +603 -0
- data/lib/when_exe/events.rb +1888 -0
- data/lib/when_exe/google_api.rb +26 -31
- data/lib/when_exe/icalendar.rb +129 -12
- data/lib/when_exe/inspect.rb +5 -5
- data/lib/when_exe/linkeddata.rb +43 -23
- data/lib/when_exe/locales/akt.rb +63 -0
- data/lib/when_exe/locales/encoding_conversion.rb +134 -134
- data/lib/when_exe/locales/iast.rb +90 -90
- data/lib/when_exe/locales/locale.rb +88 -18
- data/lib/when_exe/locales/transliteration_table.rb +62 -62
- data/lib/when_exe/mini_application.rb +14 -8
- data/lib/when_exe/namespace.rb +42 -0
- data/lib/when_exe/parts/enumerator.rb +16 -5
- data/lib/when_exe/parts/geometric_complex.rb +52 -2
- data/lib/when_exe/parts/method_cash.rb +229 -224
- data/lib/when_exe/parts/resource.rb +65 -35
- data/lib/when_exe/parts/timezone.rb +25 -34
- data/lib/when_exe/region/balinese.rb +5 -3
- data/lib/when_exe/region/chinese.rb +39 -11
- data/lib/when_exe/region/chinese/calendars.rb +1016 -1016
- data/lib/when_exe/region/chinese/epochs.rb +7 -7
- data/lib/when_exe/region/chinese/notes.rb +3 -3
- data/lib/when_exe/region/chinese/twins.rb +134 -11
- data/lib/when_exe/region/dee.rb +4 -4
- data/lib/when_exe/region/discordian.rb +1 -1
- data/lib/when_exe/region/geologicalage.rb +139 -128
- data/lib/when_exe/region/hanke_henry.rb +4 -4
- data/lib/when_exe/region/indian.rb +77 -8
- data/lib/when_exe/region/international_fixed.rb +3 -3
- data/lib/when_exe/region/islamic.rb +1 -1
- data/lib/when_exe/region/japanese.rb +12 -8
- data/lib/when_exe/region/japanese/calendars.rb +397 -397
- data/lib/when_exe/region/japanese/eclipses.rb +1194 -1194
- data/lib/when_exe/region/japanese/epochs.rb +8 -4
- data/lib/when_exe/region/japanese/location.rb +93 -0
- data/lib/when_exe/region/japanese/nihon_shoki.rb +70 -70
- data/lib/when_exe/region/japanese/notes.rb +57 -18
- data/lib/when_exe/region/japanese/residues.rb +33 -11
- data/lib/when_exe/region/japanese/twins.rb +27 -14
- data/lib/when_exe/region/japanese/weeks.rb +7 -7
- data/lib/when_exe/region/korean.rb +384 -384
- data/lib/when_exe/region/location.rb +40 -0
- data/lib/when_exe/region/martian.rb +1 -1
- data/lib/when_exe/region/mayan.rb +2 -2
- data/lib/when_exe/region/roman.rb +2 -2
- data/lib/when_exe/region/ryukyu.rb +101 -101
- data/lib/when_exe/region/saudi_arabian.rb +57 -0
- data/lib/when_exe/region/shire.rb +1 -1
- data/lib/when_exe/region/world.rb +3 -3
- data/lib/when_exe/region/zoroastrian.rb +1 -1
- data/lib/when_exe/spatial.rb +611 -0
- data/lib/when_exe/timestandard.rb +9 -7
- data/lib/when_exe/tmobjects.rb +34 -2
- data/lib/when_exe/tmposition.rb +225 -1322
- data/lib/when_exe/tmptypes.rb +1279 -0
- data/lib/when_exe/tmreference.rb +42 -7
- data/lib/when_exe/version.rb +3 -3
- data/test/events/example-datasets +6 -0
- data/test/events/history-dataset.csv +22 -0
- data/test/events/japanese-holiday-index.csv +28 -0
- data/test/events/japanese-holiday.csv +94 -0
- data/test/events/japanese-holiday.ttl +948 -0
- data/test/events/make_events_ttl.rb +18 -0
- data/test/events/mori_wikichoshi.csv +14 -0
- data/test/events/ndl_koyomi.csv +220 -0
- data/test/events/ndl_koyomi_index.csv +44 -0
- data/test/events/primeminister-dataset.csv +19 -0
- data/test/events/shogun-dataset.csv +22 -0
- data/test/events/test-history-dataset-edge-sparql.csv +26 -0
- data/test/events/test-history-dataset-edge.csv +27 -0
- data/test/events/test-history-dataset-sparql.csv +22 -0
- data/test/events/test-history-dataset.csv +23 -0
- data/test/events/test-history-events-edge.ttl +89 -0
- data/test/events/test-history-events.csv +6 -0
- data/test/examples/JapanHolidays.ics +2 -2
- data/test/examples/JapanHolidaysRFC6350.ics +3 -3
- data/test/examples/Residue.m17n +2 -2
- data/test/examples/Spatial.m17n +3 -3
- data/test/examples/Terms.m17n +3 -3
- data/test/scripts/8.ext.rb +6 -6
- data/test/scripts/8.rb +6 -6
- data/test/scripts/geometric_complex.rb +41 -41
- data/test/scripts/korea.rb +59 -59
- data/test/scripts/thai.rb +36 -36
- data/test/test.rb +6 -0
- data/test/test/basictypes.rb +431 -431
- data/test/test/calendarnote.rb +86 -86
- data/test/test/calendartypes.rb +97 -97
- data/test/test/coordinates.rb +399 -397
- data/test/test/ephemeris.rb +115 -115
- data/test/test/ephemeris/moon.rb +14 -14
- data/test/test/ephemeris/planets.rb +14 -14
- data/test/test/ephemeris/sun.rb +14 -14
- data/test/test/events.rb +32 -0
- data/test/test/google_api.rb +45 -32
- data/test/test/inspect.rb +153 -153
- data/test/test/parts.rb +488 -488
- data/test/test/region/armenian.rb +20 -20
- data/test/test/region/bahai.rb +58 -58
- data/test/test/region/balinese.rb +34 -34
- data/test/test/region/chinese.rb +229 -229
- data/test/test/region/christian.rb +226 -226
- data/test/test/region/coptic.rb +27 -27
- data/test/test/region/discordian.rb +20 -20
- data/test/test/region/french.rb +33 -33
- data/test/test/region/geologicalage.rb +17 -17
- data/test/test/region/indian.rb +14 -1
- data/test/test/region/iran.rb +54 -54
- data/test/test/region/islamic.rb +64 -54
- data/test/test/region/japanese.rb +281 -261
- data/test/test/region/jewish.rb +63 -63
- data/test/test/region/m17n.rb +21 -21
- data/test/test/region/mayan.rb +17 -16
- data/test/test/region/reforms.rb +2 -2
- data/test/test/region/residue.rb +7 -7
- data/test/test/region/shire.rb +58 -58
- data/test/test/region/swedish.rb +45 -45
- data/test/test/region/thai.rb +116 -116
- data/test/test/region/tibetan.rb +30 -30
- data/test/test/region/vietnamese.rb +102 -102
- data/test/test/region/zoroastrian.rb +58 -58
- data/test/test/timestandard.rb +81 -81
- data/test/test/tmobjects.rb +402 -402
- data/test/test/tmposition.rb +66 -4
- data/test/test/tmreference.rb +157 -157
- metadata +36 -93
data/test/test/region/swedish.rb
CHANGED
@@ -1,45 +1,45 @@
|
|
1
|
-
# -*- coding: utf-8 -*-
|
2
|
-
=begin
|
3
|
-
Copyright (C) 2014 Takashi SUGA
|
4
|
-
|
5
|
-
You may use and/or modify this file according to the license
|
6
|
-
described in the LICENSE.txt file included in this archive.
|
7
|
-
=end
|
8
|
-
|
9
|
-
module MiniTest
|
10
|
-
|
11
|
-
class Swedish < MiniTest::TestCase
|
12
|
-
def test__swedish_date
|
13
|
-
|
14
|
-
dates = []
|
15
|
-
jdns = []
|
16
|
-
[2342042, 2346424].each do |base|
|
17
|
-
(-3..+3).each do |diff|
|
18
|
-
jdn = base + diff
|
19
|
-
jdate = When::Julian ^ jdn
|
20
|
-
s1date = When::Swedish ^ jdn
|
21
|
-
s2date = When.tm_pos(*(s1date.cal_date + [{:frame=>When::Swedish}]))
|
22
|
-
dates << s1date.to_s
|
23
|
-
jdns << [s1date.to_s == s2date.to_s, s1date.to_i == jdn, s2date.to_i == jdn].uniq
|
24
|
-
end
|
25
|
-
end
|
26
|
-
|
27
|
-
assert_equal(%w(1700-02-26 1700-02-27 1700-02-28 1700-03-01 1700-03-02 1700-03-03 1700-03-04
|
28
|
-
1712-02-26 1712-02-27 1712-02-28 1712-02-29 1712-02-30 1712-03-01 1712-03-02), dates)
|
29
|
-
assert_equal([[true]], jdns.uniq)
|
30
|
-
end
|
31
|
-
|
32
|
-
def test__swedish_easter
|
33
|
-
|
34
|
-
dates = []
|
35
|
-
civil = When.Calendar('Civil?old=Swedish&reform_date=1753-03-01')
|
36
|
-
((1700..1711).to_a + (1740..1752).to_a+[1802,1805,1818]).each do |year|
|
37
|
-
dates << When.tm_pos(year, {:frame=>civil}).easter.to_s
|
38
|
-
end
|
39
|
-
assert_equal(%w(1700-04-01 1701-04-21 1702-04-06 1703-03-29 1704-04-17 1705-04-02 1706-03-25
|
40
|
-
1707-04-14 1708-04-05 1709-04-18 1710-04-10 1711-03-26 1740-04-06 1741-03-22
|
41
|
-
1742-03-14 1743-04-03 1744-03-18 1745-04-07 1746-03-30 1747-03-22 1748-04-03
|
42
|
-
1749-03-26 1750-03-18 1751-03-31 1752-03-22 1802-04-25 1805-04-21 1818-03-29), dates)
|
43
|
-
end
|
44
|
-
end
|
45
|
-
end
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
=begin
|
3
|
+
Copyright (C) 2014 Takashi SUGA
|
4
|
+
|
5
|
+
You may use and/or modify this file according to the license
|
6
|
+
described in the LICENSE.txt file included in this archive.
|
7
|
+
=end
|
8
|
+
|
9
|
+
module MiniTest
|
10
|
+
|
11
|
+
class Swedish < MiniTest::TestCase
|
12
|
+
def test__swedish_date
|
13
|
+
|
14
|
+
dates = []
|
15
|
+
jdns = []
|
16
|
+
[2342042, 2346424].each do |base|
|
17
|
+
(-3..+3).each do |diff|
|
18
|
+
jdn = base + diff
|
19
|
+
jdate = When::Julian ^ jdn
|
20
|
+
s1date = When::Swedish ^ jdn
|
21
|
+
s2date = When.tm_pos(*(s1date.cal_date + [{:frame=>When::Swedish}]))
|
22
|
+
dates << s1date.to_s
|
23
|
+
jdns << [s1date.to_s == s2date.to_s, s1date.to_i == jdn, s2date.to_i == jdn].uniq
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
assert_equal(%w(1700-02-26 1700-02-27 1700-02-28 1700-03-01 1700-03-02 1700-03-03 1700-03-04
|
28
|
+
1712-02-26 1712-02-27 1712-02-28 1712-02-29 1712-02-30 1712-03-01 1712-03-02), dates)
|
29
|
+
assert_equal([[true]], jdns.uniq)
|
30
|
+
end
|
31
|
+
|
32
|
+
def test__swedish_easter
|
33
|
+
|
34
|
+
dates = []
|
35
|
+
civil = When.Calendar('Civil?old=Swedish&reform_date=1753-03-01')
|
36
|
+
((1700..1711).to_a + (1740..1752).to_a+[1802,1805,1818]).each do |year|
|
37
|
+
dates << When.tm_pos(year, {:frame=>civil}).easter.to_s
|
38
|
+
end
|
39
|
+
assert_equal(%w(1700-04-01 1701-04-21 1702-04-06 1703-03-29 1704-04-17 1705-04-02 1706-03-25
|
40
|
+
1707-04-14 1708-04-05 1709-04-18 1710-04-10 1711-03-26 1740-04-06 1741-03-22
|
41
|
+
1742-03-14 1743-04-03 1744-03-18 1745-04-07 1746-03-30 1747-03-22 1748-04-03
|
42
|
+
1749-03-26 1750-03-18 1751-03-31 1752-03-22 1802-04-25 1805-04-21 1818-03-29), dates)
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
data/test/test/region/thai.rb
CHANGED
@@ -1,116 +1,116 @@
|
|
1
|
-
# -*- coding: utf-8 -*-
|
2
|
-
=begin
|
3
|
-
Copyright (C) 2011-2013 Takashi SUGA
|
4
|
-
|
5
|
-
You may use and/or modify this file according to the license
|
6
|
-
described in the LICENSE.txt file included in this archive.
|
7
|
-
=end
|
8
|
-
|
9
|
-
module MiniTest
|
10
|
-
|
11
|
-
class Thai < MiniTest::TestCase
|
12
|
-
def test_thai_date
|
13
|
-
|
14
|
-
date = When.Resource('_c:ThaiP') ^ When.when?('2011-05-16')
|
15
|
-
[["1373-07-15", 2455698],
|
16
|
-
["1373-07<01", 2455699],
|
17
|
-
["1373-07<02", 2455700]].each do |sample|
|
18
|
-
assert_equal(sample, [date.to_s, date.to_i])
|
19
|
-
date += When.Duration('P1D')
|
20
|
-
end
|
21
|
-
|
22
|
-
[["1373-07<03", 2455701],
|
23
|
-
["1373-08-03", 2455716],
|
24
|
-
["1373-08<03", 2455731],
|
25
|
-
["1373-09-03", 2455745],
|
26
|
-
["1373-09<03", 2455760],
|
27
|
-
["1373-10-03", 2455775],
|
28
|
-
["1373-10<03", 2455790],
|
29
|
-
["1373-11-03", 2455804],
|
30
|
-
["1373-11<03", 2455819],
|
31
|
-
["1373-12-03", 2455834]].each do |sample|
|
32
|
-
assert_equal(sample, [date.to_s, date.to_i])
|
33
|
-
date += When.Duration('P1M')
|
34
|
-
end
|
35
|
-
|
36
|
-
date = When.Resource('_c:Thai') ^ When.when?('2011-05-16')
|
37
|
-
[["1373-06-14", 2455698],
|
38
|
-
["1373-06-15", 2455699],
|
39
|
-
["1373-06<01", 2455700]].each do |sample|
|
40
|
-
assert_equal(sample, [date.to_s, date.to_i])
|
41
|
-
date += When.Duration('P1D')
|
42
|
-
end
|
43
|
-
|
44
|
-
[["1373-06<02", 2455701],
|
45
|
-
["1373-07-02", 2455716],
|
46
|
-
["1373-07<02", 2455731],
|
47
|
-
["1373-08-02", 2455745],
|
48
|
-
["1373-08<02", 2455760],
|
49
|
-
["1373-09-02", 2455775],
|
50
|
-
["1373-09<02", 2455790],
|
51
|
-
["1373-10-02", 2455804],
|
52
|
-
["1373-10<02", 2455819],
|
53
|
-
["1373-11-02", 2455834],
|
54
|
-
["1373-11<02", 2455849],
|
55
|
-
["1373-12-02", 2455863],
|
56
|
-
["1373-12<02", 2455878],
|
57
|
-
["1374-01-02", 2455893],
|
58
|
-
["1374-01<02", 2455908],
|
59
|
-
["1374-02-02", 2455922],
|
60
|
-
["1374-02<02", 2455937],
|
61
|
-
["1374-03-02", 2455952],
|
62
|
-
["1374-03<02", 2455967],
|
63
|
-
["1374-04-02", 2455981],
|
64
|
-
["1374-04<02", 2455996],
|
65
|
-
["1374-05-02", 2456011],
|
66
|
-
["1374-05<02", 2456026],
|
67
|
-
["1374-06-02", 2456040],
|
68
|
-
["1374-06<02", 2456055],
|
69
|
-
["1374-07-02", 2456070],
|
70
|
-
["1374-07<02", 2456085],
|
71
|
-
["1374-08&02", 2456099],
|
72
|
-
["1374-08*02", 2456114],
|
73
|
-
["1374-08-02", 2456129],
|
74
|
-
["1374-08<02", 2456144],
|
75
|
-
["1374-09-02", 2456159],
|
76
|
-
["1374-09<02", 2456174],
|
77
|
-
["1374-10-02", 2456188],
|
78
|
-
["1374-10<02", 2456203],
|
79
|
-
["1374-11-02", 2456218],
|
80
|
-
["1374-11<02", 2456233],
|
81
|
-
["1374-12-02", 2456247],
|
82
|
-
["1374-12<02", 2456262],
|
83
|
-
["1375-01-02", 2456277]].each do |sample|
|
84
|
-
assert_equal(sample, [date.to_s, date.to_i])
|
85
|
-
date += When.Duration('P1M')
|
86
|
-
end
|
87
|
-
|
88
|
-
date = When.when?('1374-08&02', {:frame=>When.Resource('_c:Thai')})
|
89
|
-
assert_equal(["1374-08&02", 2456099, "adhika Āṣāḍha Śuklapakṣa"],
|
90
|
-
[date.to_s, date.to_i, date.name('Month').translate('en')])
|
91
|
-
|
92
|
-
diffs = [
|
93
|
-
[1840,-1], [1860, 1], [1865, 1], [1876,-1], [1880,-1], [1881,-1], [1891,29], [1901, 1],
|
94
|
-
[1902, 1], [1906, 1], [1910,30], [1911, 1], [1915, 1], [1916, 1], [1922, 1], [1926, 1],
|
95
|
-
[1927, 1], [1934, 1], [1935, 1], [1936, 1], [1963, 1], [2024,-1], [2025,-1], [2040,-1],
|
96
|
-
[2041,-1]]
|
97
|
-
(1840..2050).each do |year|
|
98
|
-
cdate = When.TemporalPosition(year-638, 1, 1, :frame=>'ThaiC').to_i
|
99
|
-
tdate = When.TemporalPosition(year-638, 1, 1, :frame=>'ThaiT').to_i
|
100
|
-
unless cdate == tdate
|
101
|
-
assert_equal(diffs.shift, [year, tdate - cdate])
|
102
|
-
end
|
103
|
-
end
|
104
|
-
assert_equal(0, diffs.size)
|
105
|
-
|
106
|
-
diffs = [[1961,0], [1962,0], [1963,1], [1964,1]]
|
107
|
-
(1961..1964).each do |year|
|
108
|
-
t0date = When.TemporalPosition(year-638, 1, 1, :frame=>'ThaiT').to_i
|
109
|
-
t1date = When.TemporalPosition(year-638, 1, 1, :frame=>'ThaiT?patch=1962A').to_i
|
110
|
-
assert_equal(diffs.shift, [year, t0date - t1date])
|
111
|
-
end
|
112
|
-
assert_equal(0, diffs.size)
|
113
|
-
end
|
114
|
-
end
|
115
|
-
end
|
116
|
-
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
=begin
|
3
|
+
Copyright (C) 2011-2013 Takashi SUGA
|
4
|
+
|
5
|
+
You may use and/or modify this file according to the license
|
6
|
+
described in the LICENSE.txt file included in this archive.
|
7
|
+
=end
|
8
|
+
|
9
|
+
module MiniTest
|
10
|
+
|
11
|
+
class Thai < MiniTest::TestCase
|
12
|
+
def test_thai_date
|
13
|
+
|
14
|
+
date = When.Resource('_c:ThaiP') ^ When.when?('2011-05-16')
|
15
|
+
[["1373-07-15", 2455698],
|
16
|
+
["1373-07<01", 2455699],
|
17
|
+
["1373-07<02", 2455700]].each do |sample|
|
18
|
+
assert_equal(sample, [date.to_s, date.to_i])
|
19
|
+
date += When.Duration('P1D')
|
20
|
+
end
|
21
|
+
|
22
|
+
[["1373-07<03", 2455701],
|
23
|
+
["1373-08-03", 2455716],
|
24
|
+
["1373-08<03", 2455731],
|
25
|
+
["1373-09-03", 2455745],
|
26
|
+
["1373-09<03", 2455760],
|
27
|
+
["1373-10-03", 2455775],
|
28
|
+
["1373-10<03", 2455790],
|
29
|
+
["1373-11-03", 2455804],
|
30
|
+
["1373-11<03", 2455819],
|
31
|
+
["1373-12-03", 2455834]].each do |sample|
|
32
|
+
assert_equal(sample, [date.to_s, date.to_i])
|
33
|
+
date += When.Duration('P1M')
|
34
|
+
end
|
35
|
+
|
36
|
+
date = When.Resource('_c:Thai') ^ When.when?('2011-05-16')
|
37
|
+
[["1373-06-14", 2455698],
|
38
|
+
["1373-06-15", 2455699],
|
39
|
+
["1373-06<01", 2455700]].each do |sample|
|
40
|
+
assert_equal(sample, [date.to_s, date.to_i])
|
41
|
+
date += When.Duration('P1D')
|
42
|
+
end
|
43
|
+
|
44
|
+
[["1373-06<02", 2455701],
|
45
|
+
["1373-07-02", 2455716],
|
46
|
+
["1373-07<02", 2455731],
|
47
|
+
["1373-08-02", 2455745],
|
48
|
+
["1373-08<02", 2455760],
|
49
|
+
["1373-09-02", 2455775],
|
50
|
+
["1373-09<02", 2455790],
|
51
|
+
["1373-10-02", 2455804],
|
52
|
+
["1373-10<02", 2455819],
|
53
|
+
["1373-11-02", 2455834],
|
54
|
+
["1373-11<02", 2455849],
|
55
|
+
["1373-12-02", 2455863],
|
56
|
+
["1373-12<02", 2455878],
|
57
|
+
["1374-01-02", 2455893],
|
58
|
+
["1374-01<02", 2455908],
|
59
|
+
["1374-02-02", 2455922],
|
60
|
+
["1374-02<02", 2455937],
|
61
|
+
["1374-03-02", 2455952],
|
62
|
+
["1374-03<02", 2455967],
|
63
|
+
["1374-04-02", 2455981],
|
64
|
+
["1374-04<02", 2455996],
|
65
|
+
["1374-05-02", 2456011],
|
66
|
+
["1374-05<02", 2456026],
|
67
|
+
["1374-06-02", 2456040],
|
68
|
+
["1374-06<02", 2456055],
|
69
|
+
["1374-07-02", 2456070],
|
70
|
+
["1374-07<02", 2456085],
|
71
|
+
["1374-08&02", 2456099],
|
72
|
+
["1374-08*02", 2456114],
|
73
|
+
["1374-08-02", 2456129],
|
74
|
+
["1374-08<02", 2456144],
|
75
|
+
["1374-09-02", 2456159],
|
76
|
+
["1374-09<02", 2456174],
|
77
|
+
["1374-10-02", 2456188],
|
78
|
+
["1374-10<02", 2456203],
|
79
|
+
["1374-11-02", 2456218],
|
80
|
+
["1374-11<02", 2456233],
|
81
|
+
["1374-12-02", 2456247],
|
82
|
+
["1374-12<02", 2456262],
|
83
|
+
["1375-01-02", 2456277]].each do |sample|
|
84
|
+
assert_equal(sample, [date.to_s, date.to_i])
|
85
|
+
date += When.Duration('P1M')
|
86
|
+
end
|
87
|
+
|
88
|
+
date = When.when?('1374-08&02', {:frame=>When.Resource('_c:Thai')})
|
89
|
+
assert_equal(["1374-08&02", 2456099, "adhika Āṣāḍha Śuklapakṣa"],
|
90
|
+
[date.to_s, date.to_i, date.name('Month').translate('en')])
|
91
|
+
|
92
|
+
diffs = [
|
93
|
+
[1840,-1], [1860, 1], [1865, 1], [1876,-1], [1880,-1], [1881,-1], [1891,29], [1901, 1],
|
94
|
+
[1902, 1], [1906, 1], [1910,30], [1911, 1], [1915, 1], [1916, 1], [1922, 1], [1926, 1],
|
95
|
+
[1927, 1], [1934, 1], [1935, 1], [1936, 1], [1963, 1], [2024,-1], [2025,-1], [2040,-1],
|
96
|
+
[2041,-1]]
|
97
|
+
(1840..2050).each do |year|
|
98
|
+
cdate = When.TemporalPosition(year-638, 1, 1, :frame=>'ThaiC').to_i
|
99
|
+
tdate = When.TemporalPosition(year-638, 1, 1, :frame=>'ThaiT').to_i
|
100
|
+
unless cdate == tdate
|
101
|
+
assert_equal(diffs.shift, [year, tdate - cdate])
|
102
|
+
end
|
103
|
+
end
|
104
|
+
assert_equal(0, diffs.size)
|
105
|
+
|
106
|
+
diffs = [[1961,0], [1962,0], [1963,1], [1964,1]]
|
107
|
+
(1961..1964).each do |year|
|
108
|
+
t0date = When.TemporalPosition(year-638, 1, 1, :frame=>'ThaiT').to_i
|
109
|
+
t1date = When.TemporalPosition(year-638, 1, 1, :frame=>'ThaiT?patch=1962A').to_i
|
110
|
+
assert_equal(diffs.shift, [year, t0date - t1date])
|
111
|
+
end
|
112
|
+
assert_equal(0, diffs.size)
|
113
|
+
end
|
114
|
+
end
|
115
|
+
end
|
116
|
+
|
data/test/test/region/tibetan.rb
CHANGED
@@ -1,30 +1,30 @@
|
|
1
|
-
# -*- coding: utf-8 -*-
|
2
|
-
=begin
|
3
|
-
Copyright (C) 2011 Takashi SUGA
|
4
|
-
|
5
|
-
You may use and/or modify this file according to the license
|
6
|
-
described in the LICENSE.txt file included in this archive.
|
7
|
-
=end
|
8
|
-
|
9
|
-
module MiniTest
|
10
|
-
|
11
|
-
class Tibetan < MiniTest::TestCase
|
12
|
-
Sample = [
|
13
|
-
"1991-05-01-", "1991-05-02-", "1991-05-03-", "1991-05-04-", "1991-05-05%", "1991-05-07-", "1991-05-08-", "1991-05-09-",
|
14
|
-
"1991-05-10-", "1991-05-11-", "1991-05-12-", "1991-05-13-", "1991-05-14-", "1991-05-15-", "1991-05-15=", "1991-05-16-",
|
15
|
-
"1991-05-17-", "1991-05-18-", "1991-05-19-", "1991-05-20-", "1991-05-21-", "1991-05-22-", "1991-05-23-", "1991-05-24-",
|
16
|
-
"1991-05-25-", "1991-05-26-", "1991-05-27-", "1991-05-28%", "1991-05-30-"
|
17
|
-
]
|
18
|
-
|
19
|
-
def test_tibetan_date
|
20
|
-
cc = When.Resource('_c:Tibetan')
|
21
|
-
date = When.when?('1991-05-01', {:frame=>cc})
|
22
|
-
start = 2448421
|
23
|
-
Sample.size.times do |i|
|
24
|
-
assert_equal([Sample[i], start+i], [date.to_s, date.to_i])
|
25
|
-
date += When.Duration('P1D')
|
26
|
-
end
|
27
|
-
end
|
28
|
-
end
|
29
|
-
end
|
30
|
-
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
=begin
|
3
|
+
Copyright (C) 2011 Takashi SUGA
|
4
|
+
|
5
|
+
You may use and/or modify this file according to the license
|
6
|
+
described in the LICENSE.txt file included in this archive.
|
7
|
+
=end
|
8
|
+
|
9
|
+
module MiniTest
|
10
|
+
|
11
|
+
class Tibetan < MiniTest::TestCase
|
12
|
+
Sample = [
|
13
|
+
"1991-05-01-", "1991-05-02-", "1991-05-03-", "1991-05-04-", "1991-05-05%", "1991-05-07-", "1991-05-08-", "1991-05-09-",
|
14
|
+
"1991-05-10-", "1991-05-11-", "1991-05-12-", "1991-05-13-", "1991-05-14-", "1991-05-15-", "1991-05-15=", "1991-05-16-",
|
15
|
+
"1991-05-17-", "1991-05-18-", "1991-05-19-", "1991-05-20-", "1991-05-21-", "1991-05-22-", "1991-05-23-", "1991-05-24-",
|
16
|
+
"1991-05-25-", "1991-05-26-", "1991-05-27-", "1991-05-28%", "1991-05-30-"
|
17
|
+
]
|
18
|
+
|
19
|
+
def test_tibetan_date
|
20
|
+
cc = When.Resource('_c:Tibetan')
|
21
|
+
date = When.when?('1991-05-01', {:frame=>cc})
|
22
|
+
start = 2448421
|
23
|
+
Sample.size.times do |i|
|
24
|
+
assert_equal([Sample[i], start+i], [date.to_s, date.to_i])
|
25
|
+
date += When.Duration('P1D')
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
@@ -1,102 +1,102 @@
|
|
1
|
-
# -*- coding: utf-8 -*-
|
2
|
-
=begin
|
3
|
-
Copyright (C) 2014 Takashi SUGA
|
4
|
-
|
5
|
-
You may use and/or modify this file according to the license
|
6
|
-
described in the LICENSE.txt file included in this archive.
|
7
|
-
=end
|
8
|
-
|
9
|
-
module MiniTest
|
10
|
-
|
11
|
-
class Vietnamese < MiniTest::TestCase
|
12
|
-
|
13
|
-
Sample1 = [%w(紹明2.1.1 1139-02-08 紹明02(1139).01.01),
|
14
|
-
%w(ベトナム?LY=VSL::李朝::紹明2.1.1 1138-02-19 ベトナム?LY=VSL::李朝::紹明02(1138).01.01),
|
15
|
-
%w(嗣徳2.8.1 1849-09-17 ベトナム::阮朝::嗣徳02(1849).08.01),
|
16
|
-
%w(ベトナム?LY=VSL&DN=LDNK::阮朝::嗣徳2.8.1 1849-09-16 ベトナム?LY=VSL&DN=LDNK::阮朝::嗣徳02(1849).08.01),
|
17
|
-
%w(ベトナム::後期黎朝::福泰2.7.1 1644-08-02 ベトナム::後期黎朝::福泰02(1644).07.01),
|
18
|
-
%w(ベトナム::広南::阮福瀾10.7.1 1644-08-03 ベトナム::広南::<阮福瀾>10(1644).07.01),
|
19
|
-
%w(ベトナム::後期黎朝::慶徳4.9.1 1652-10-02 ベトナム::後期黎朝::慶徳04(1652).09.01),
|
20
|
-
%w(ベトナム::広南::阮福瀕4.9.1 1652-10-03 ベトナム::広南::<阮福瀕>04(1652).09.01),
|
21
|
-
%w(ベトナム::阮朝::建福1.1.31 1884-02-26 ベトナム::阮朝::建福01(1884).01.31)]
|
22
|
-
|
23
|
-
Sample2 = [%w(1659-01- 1659-01-23),
|
24
|
-
%w(1659-01= 1659-02-21),
|
25
|
-
%w(1659-02- 1659-03-23),
|
26
|
-
%w(1659-03- 1659-04-21),
|
27
|
-
%w(1659-04- 1659-05-21),
|
28
|
-
%w(1659-05- 1659-06-20),
|
29
|
-
%w(1659-06- 1659-07-19),
|
30
|
-
%w(1659-07- 1659-08-18),
|
31
|
-
%w(1659-08- 1659-09-16),
|
32
|
-
%w(1659-09- 1659-10-16),
|
33
|
-
%w(1659-10- 1659-11-14),
|
34
|
-
%w(1659-11- 1659-12-14),
|
35
|
-
%w(1659-12- 1660-01-12),
|
36
|
-
%w(1660-01- 1660-02-11),
|
37
|
-
%w(1660-02- 1660-03-11),
|
38
|
-
%w(1660-03- 1660-04-10),
|
39
|
-
%w(1660-04- 1660-05-09),
|
40
|
-
%w(1660-05- 1660-06-08),
|
41
|
-
%w(1660-06- 1660-07-07),
|
42
|
-
%w(1660-07- 1660-08-06),
|
43
|
-
%w(1660-08- 1660-09-05),
|
44
|
-
%w(1660-09- 1660-10-04),
|
45
|
-
%w(1660-10- 1660-11-03),
|
46
|
-
%w(1660-11- 1660-12-02),
|
47
|
-
%w(1660-12- 1661-01-01),
|
48
|
-
|
49
|
-
%w(1659-01- 1659-01-23),
|
50
|
-
%w(1659-01= 1659-02-22),
|
51
|
-
%w(1659-02- 1659-03-23),
|
52
|
-
%w(1659-03- 1659-04-21),
|
53
|
-
%w(1659-04- 1659-05-21),
|
54
|
-
%w(1659-05- 1659-06-20),
|
55
|
-
%w(1659-06- 1659-07-19),
|
56
|
-
%w(1659-07- 1659-08-18),
|
57
|
-
%w(1659-08- 1659-09-16),
|
58
|
-
%w(1659-09- 1659-10-16),
|
59
|
-
%w(1659-10- 1659-11-15), # 1659-11-14 ではない
|
60
|
-
%w(1659-11- 1659-12-14),
|
61
|
-
%w(1659-12- 1660-01-12),
|
62
|
-
%w(1660-01- 1660-02-11),
|
63
|
-
%w(1660-02- 1660-03-11),
|
64
|
-
%w(1660-03- 1660-04-10),
|
65
|
-
%w(1660-04- 1660-05-09),
|
66
|
-
%w(1660-05- 1660-06-08),
|
67
|
-
%w(1660-06- 1660-07-07),
|
68
|
-
%w(1660-07- 1660-08-06),
|
69
|
-
%w(1660-08- 1660-09-05),
|
70
|
-
%w(1660-09- 1660-10-04),
|
71
|
-
%w(1660-10- 1660-11-03),
|
72
|
-
%w(1660-11- 1660-12-03), # 1660-12-02 ではない
|
73
|
-
%w(1660-12- 1661-01-01)]
|
74
|
-
|
75
|
-
def test_vietnamese_era
|
76
|
-
|
77
|
-
When.CalendarEra('Vietnamese')
|
78
|
-
When.CalendarEra('Vietnamese?LY=VSL')
|
79
|
-
When.CalendarEra('Vietnamese?LY=VSL&DN=LDNK')
|
80
|
-
|
81
|
-
Sample1.each do |sample|
|
82
|
-
date = When.when?(sample[0])
|
83
|
-
assert_equal(sample[1..2], [date.to_date.to_s, date.to_s])
|
84
|
-
end
|
85
|
-
end
|
86
|
-
|
87
|
-
def test_vietnamese_date
|
88
|
-
|
89
|
-
When.CalendarEra('Vietnamese')
|
90
|
-
|
91
|
-
sample = Sample2
|
92
|
-
[1544, 1631].each do |epoch|
|
93
|
-
calendar = When.Calendar('Vietnamese' + epoch.to_s)
|
94
|
-
date = When.TemporalPosition(1659, 1, :frame=>calendar)
|
95
|
-
25.times do
|
96
|
-
assert_equal(sample.shift, [date.to_s, date.to_date.to_s])
|
97
|
-
date = date.next
|
98
|
-
end
|
99
|
-
end
|
100
|
-
end
|
101
|
-
end
|
102
|
-
end
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
=begin
|
3
|
+
Copyright (C) 2014 Takashi SUGA
|
4
|
+
|
5
|
+
You may use and/or modify this file according to the license
|
6
|
+
described in the LICENSE.txt file included in this archive.
|
7
|
+
=end
|
8
|
+
|
9
|
+
module MiniTest
|
10
|
+
|
11
|
+
class Vietnamese < MiniTest::TestCase
|
12
|
+
|
13
|
+
Sample1 = [%w(紹明2.1.1 1139-02-08 紹明02(1139).01.01),
|
14
|
+
%w(ベトナム?LY=VSL::李朝::紹明2.1.1 1138-02-19 ベトナム?LY=VSL::李朝::紹明02(1138).01.01),
|
15
|
+
%w(嗣徳2.8.1 1849-09-17 ベトナム::阮朝::嗣徳02(1849).08.01),
|
16
|
+
%w(ベトナム?LY=VSL&DN=LDNK::阮朝::嗣徳2.8.1 1849-09-16 ベトナム?LY=VSL&DN=LDNK::阮朝::嗣徳02(1849).08.01),
|
17
|
+
%w(ベトナム::後期黎朝::福泰2.7.1 1644-08-02 ベトナム::後期黎朝::福泰02(1644).07.01),
|
18
|
+
%w(ベトナム::広南::阮福瀾10.7.1 1644-08-03 ベトナム::広南::<阮福瀾>10(1644).07.01),
|
19
|
+
%w(ベトナム::後期黎朝::慶徳4.9.1 1652-10-02 ベトナム::後期黎朝::慶徳04(1652).09.01),
|
20
|
+
%w(ベトナム::広南::阮福瀕4.9.1 1652-10-03 ベトナム::広南::<阮福瀕>04(1652).09.01),
|
21
|
+
%w(ベトナム::阮朝::建福1.1.31 1884-02-26 ベトナム::阮朝::建福01(1884).01.31)]
|
22
|
+
|
23
|
+
Sample2 = [%w(1659-01- 1659-01-23),
|
24
|
+
%w(1659-01= 1659-02-21),
|
25
|
+
%w(1659-02- 1659-03-23),
|
26
|
+
%w(1659-03- 1659-04-21),
|
27
|
+
%w(1659-04- 1659-05-21),
|
28
|
+
%w(1659-05- 1659-06-20),
|
29
|
+
%w(1659-06- 1659-07-19),
|
30
|
+
%w(1659-07- 1659-08-18),
|
31
|
+
%w(1659-08- 1659-09-16),
|
32
|
+
%w(1659-09- 1659-10-16),
|
33
|
+
%w(1659-10- 1659-11-14),
|
34
|
+
%w(1659-11- 1659-12-14),
|
35
|
+
%w(1659-12- 1660-01-12),
|
36
|
+
%w(1660-01- 1660-02-11),
|
37
|
+
%w(1660-02- 1660-03-11),
|
38
|
+
%w(1660-03- 1660-04-10),
|
39
|
+
%w(1660-04- 1660-05-09),
|
40
|
+
%w(1660-05- 1660-06-08),
|
41
|
+
%w(1660-06- 1660-07-07),
|
42
|
+
%w(1660-07- 1660-08-06),
|
43
|
+
%w(1660-08- 1660-09-05),
|
44
|
+
%w(1660-09- 1660-10-04),
|
45
|
+
%w(1660-10- 1660-11-03),
|
46
|
+
%w(1660-11- 1660-12-02),
|
47
|
+
%w(1660-12- 1661-01-01),
|
48
|
+
|
49
|
+
%w(1659-01- 1659-01-23),
|
50
|
+
%w(1659-01= 1659-02-22),
|
51
|
+
%w(1659-02- 1659-03-23),
|
52
|
+
%w(1659-03- 1659-04-21),
|
53
|
+
%w(1659-04- 1659-05-21),
|
54
|
+
%w(1659-05- 1659-06-20),
|
55
|
+
%w(1659-06- 1659-07-19),
|
56
|
+
%w(1659-07- 1659-08-18),
|
57
|
+
%w(1659-08- 1659-09-16),
|
58
|
+
%w(1659-09- 1659-10-16),
|
59
|
+
%w(1659-10- 1659-11-15), # 1659-11-14 ではない
|
60
|
+
%w(1659-11- 1659-12-14),
|
61
|
+
%w(1659-12- 1660-01-12),
|
62
|
+
%w(1660-01- 1660-02-11),
|
63
|
+
%w(1660-02- 1660-03-11),
|
64
|
+
%w(1660-03- 1660-04-10),
|
65
|
+
%w(1660-04- 1660-05-09),
|
66
|
+
%w(1660-05- 1660-06-08),
|
67
|
+
%w(1660-06- 1660-07-07),
|
68
|
+
%w(1660-07- 1660-08-06),
|
69
|
+
%w(1660-08- 1660-09-05),
|
70
|
+
%w(1660-09- 1660-10-04),
|
71
|
+
%w(1660-10- 1660-11-03),
|
72
|
+
%w(1660-11- 1660-12-03), # 1660-12-02 ではない
|
73
|
+
%w(1660-12- 1661-01-01)]
|
74
|
+
|
75
|
+
def test_vietnamese_era
|
76
|
+
|
77
|
+
When.CalendarEra('Vietnamese')
|
78
|
+
When.CalendarEra('Vietnamese?LY=VSL')
|
79
|
+
When.CalendarEra('Vietnamese?LY=VSL&DN=LDNK')
|
80
|
+
|
81
|
+
Sample1.each do |sample|
|
82
|
+
date = When.when?(sample[0])
|
83
|
+
assert_equal(sample[1..2], [date.to_date.to_s, date.to_s])
|
84
|
+
end
|
85
|
+
end
|
86
|
+
|
87
|
+
def test_vietnamese_date
|
88
|
+
|
89
|
+
When.CalendarEra('Vietnamese')
|
90
|
+
|
91
|
+
sample = Sample2
|
92
|
+
[1544, 1631].each do |epoch|
|
93
|
+
calendar = When.Calendar('Vietnamese' + epoch.to_s)
|
94
|
+
date = When.TemporalPosition(1659, 1, :frame=>calendar)
|
95
|
+
25.times do
|
96
|
+
assert_equal(sample.shift, [date.to_s, date.to_date.to_s])
|
97
|
+
date = date.next
|
98
|
+
end
|
99
|
+
end
|
100
|
+
end
|
101
|
+
end
|
102
|
+
end
|