when_exe 0.4.2 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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