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.
Files changed (144) hide show
  1. checksums.yaml +5 -5
  2. data/LICENSE.ja.txt +8 -21
  3. data/LICENSE.txt +5 -27
  4. data/README.md +25 -79
  5. data/bin/.pryrc +9 -0
  6. data/bin/make_ttl.rb +3 -2
  7. data/bin/make_ttl.rb.config +3 -3
  8. data/lib/when_exe.rb +101 -5
  9. data/lib/when_exe/basictypes.rb +47 -16
  10. data/lib/when_exe/calendarnote.rb +27 -18
  11. data/lib/when_exe/calendartypes.rb +12 -50
  12. data/lib/when_exe/coordinates.rb +37 -391
  13. data/lib/when_exe/ephemeris.rb +53 -14
  14. data/lib/when_exe/ephemeris/eclipse.rb +8 -8
  15. data/lib/when_exe/ephemeris/moon.rb +333 -333
  16. data/lib/when_exe/ephemeris/notes.rb +29 -17
  17. data/lib/when_exe/ephemeris/phase_table.rb +825 -0
  18. data/lib/when_exe/ephemeris/term_table.rb +603 -0
  19. data/lib/when_exe/events.rb +1888 -0
  20. data/lib/when_exe/google_api.rb +26 -31
  21. data/lib/when_exe/icalendar.rb +129 -12
  22. data/lib/when_exe/inspect.rb +5 -5
  23. data/lib/when_exe/linkeddata.rb +43 -23
  24. data/lib/when_exe/locales/akt.rb +63 -0
  25. data/lib/when_exe/locales/encoding_conversion.rb +134 -134
  26. data/lib/when_exe/locales/iast.rb +90 -90
  27. data/lib/when_exe/locales/locale.rb +88 -18
  28. data/lib/when_exe/locales/transliteration_table.rb +62 -62
  29. data/lib/when_exe/mini_application.rb +14 -8
  30. data/lib/when_exe/namespace.rb +42 -0
  31. data/lib/when_exe/parts/enumerator.rb +16 -5
  32. data/lib/when_exe/parts/geometric_complex.rb +52 -2
  33. data/lib/when_exe/parts/method_cash.rb +229 -224
  34. data/lib/when_exe/parts/resource.rb +65 -35
  35. data/lib/when_exe/parts/timezone.rb +25 -34
  36. data/lib/when_exe/region/balinese.rb +5 -3
  37. data/lib/when_exe/region/chinese.rb +39 -11
  38. data/lib/when_exe/region/chinese/calendars.rb +1016 -1016
  39. data/lib/when_exe/region/chinese/epochs.rb +7 -7
  40. data/lib/when_exe/region/chinese/notes.rb +3 -3
  41. data/lib/when_exe/region/chinese/twins.rb +134 -11
  42. data/lib/when_exe/region/dee.rb +4 -4
  43. data/lib/when_exe/region/discordian.rb +1 -1
  44. data/lib/when_exe/region/geologicalage.rb +139 -128
  45. data/lib/when_exe/region/hanke_henry.rb +4 -4
  46. data/lib/when_exe/region/indian.rb +77 -8
  47. data/lib/when_exe/region/international_fixed.rb +3 -3
  48. data/lib/when_exe/region/islamic.rb +1 -1
  49. data/lib/when_exe/region/japanese.rb +12 -8
  50. data/lib/when_exe/region/japanese/calendars.rb +397 -397
  51. data/lib/when_exe/region/japanese/eclipses.rb +1194 -1194
  52. data/lib/when_exe/region/japanese/epochs.rb +8 -4
  53. data/lib/when_exe/region/japanese/location.rb +93 -0
  54. data/lib/when_exe/region/japanese/nihon_shoki.rb +70 -70
  55. data/lib/when_exe/region/japanese/notes.rb +57 -18
  56. data/lib/when_exe/region/japanese/residues.rb +33 -11
  57. data/lib/when_exe/region/japanese/twins.rb +27 -14
  58. data/lib/when_exe/region/japanese/weeks.rb +7 -7
  59. data/lib/when_exe/region/korean.rb +384 -384
  60. data/lib/when_exe/region/location.rb +40 -0
  61. data/lib/when_exe/region/martian.rb +1 -1
  62. data/lib/when_exe/region/mayan.rb +2 -2
  63. data/lib/when_exe/region/roman.rb +2 -2
  64. data/lib/when_exe/region/ryukyu.rb +101 -101
  65. data/lib/when_exe/region/saudi_arabian.rb +57 -0
  66. data/lib/when_exe/region/shire.rb +1 -1
  67. data/lib/when_exe/region/world.rb +3 -3
  68. data/lib/when_exe/region/zoroastrian.rb +1 -1
  69. data/lib/when_exe/spatial.rb +611 -0
  70. data/lib/when_exe/timestandard.rb +9 -7
  71. data/lib/when_exe/tmobjects.rb +34 -2
  72. data/lib/when_exe/tmposition.rb +225 -1322
  73. data/lib/when_exe/tmptypes.rb +1279 -0
  74. data/lib/when_exe/tmreference.rb +42 -7
  75. data/lib/when_exe/version.rb +3 -3
  76. data/test/events/example-datasets +6 -0
  77. data/test/events/history-dataset.csv +22 -0
  78. data/test/events/japanese-holiday-index.csv +28 -0
  79. data/test/events/japanese-holiday.csv +94 -0
  80. data/test/events/japanese-holiday.ttl +948 -0
  81. data/test/events/make_events_ttl.rb +18 -0
  82. data/test/events/mori_wikichoshi.csv +14 -0
  83. data/test/events/ndl_koyomi.csv +220 -0
  84. data/test/events/ndl_koyomi_index.csv +44 -0
  85. data/test/events/primeminister-dataset.csv +19 -0
  86. data/test/events/shogun-dataset.csv +22 -0
  87. data/test/events/test-history-dataset-edge-sparql.csv +26 -0
  88. data/test/events/test-history-dataset-edge.csv +27 -0
  89. data/test/events/test-history-dataset-sparql.csv +22 -0
  90. data/test/events/test-history-dataset.csv +23 -0
  91. data/test/events/test-history-events-edge.ttl +89 -0
  92. data/test/events/test-history-events.csv +6 -0
  93. data/test/examples/JapanHolidays.ics +2 -2
  94. data/test/examples/JapanHolidaysRFC6350.ics +3 -3
  95. data/test/examples/Residue.m17n +2 -2
  96. data/test/examples/Spatial.m17n +3 -3
  97. data/test/examples/Terms.m17n +3 -3
  98. data/test/scripts/8.ext.rb +6 -6
  99. data/test/scripts/8.rb +6 -6
  100. data/test/scripts/geometric_complex.rb +41 -41
  101. data/test/scripts/korea.rb +59 -59
  102. data/test/scripts/thai.rb +36 -36
  103. data/test/test.rb +6 -0
  104. data/test/test/basictypes.rb +431 -431
  105. data/test/test/calendarnote.rb +86 -86
  106. data/test/test/calendartypes.rb +97 -97
  107. data/test/test/coordinates.rb +399 -397
  108. data/test/test/ephemeris.rb +115 -115
  109. data/test/test/ephemeris/moon.rb +14 -14
  110. data/test/test/ephemeris/planets.rb +14 -14
  111. data/test/test/ephemeris/sun.rb +14 -14
  112. data/test/test/events.rb +32 -0
  113. data/test/test/google_api.rb +45 -32
  114. data/test/test/inspect.rb +153 -153
  115. data/test/test/parts.rb +488 -488
  116. data/test/test/region/armenian.rb +20 -20
  117. data/test/test/region/bahai.rb +58 -58
  118. data/test/test/region/balinese.rb +34 -34
  119. data/test/test/region/chinese.rb +229 -229
  120. data/test/test/region/christian.rb +226 -226
  121. data/test/test/region/coptic.rb +27 -27
  122. data/test/test/region/discordian.rb +20 -20
  123. data/test/test/region/french.rb +33 -33
  124. data/test/test/region/geologicalage.rb +17 -17
  125. data/test/test/region/indian.rb +14 -1
  126. data/test/test/region/iran.rb +54 -54
  127. data/test/test/region/islamic.rb +64 -54
  128. data/test/test/region/japanese.rb +281 -261
  129. data/test/test/region/jewish.rb +63 -63
  130. data/test/test/region/m17n.rb +21 -21
  131. data/test/test/region/mayan.rb +17 -16
  132. data/test/test/region/reforms.rb +2 -2
  133. data/test/test/region/residue.rb +7 -7
  134. data/test/test/region/shire.rb +58 -58
  135. data/test/test/region/swedish.rb +45 -45
  136. data/test/test/region/thai.rb +116 -116
  137. data/test/test/region/tibetan.rb +30 -30
  138. data/test/test/region/vietnamese.rb +102 -102
  139. data/test/test/region/zoroastrian.rb +58 -58
  140. data/test/test/timestandard.rb +81 -81
  141. data/test/test/tmobjects.rb +402 -402
  142. data/test/test/tmposition.rb +66 -4
  143. data/test/test/tmreference.rb +157 -157
  144. metadata +36 -93
@@ -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
@@ -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
+
@@ -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