when_exe 0.3.4 → 0.3.5
Sign up to get free protection for your applications and to get access to all the features.
- data/bin/locales.rb +2 -2
- data/bin/when.rb +2 -2
- data/lib/when_exe.rb +161 -55
- data/lib/when_exe/basictypes.rb +34 -26
- data/lib/when_exe/calendarnote.rb +654 -0
- data/lib/when_exe/calendartypes.rb +49 -474
- data/lib/when_exe/coordinates.rb +141 -34
- data/lib/when_exe/core/compatibility.rb +22 -2
- data/lib/when_exe/core/extension.rb +47 -3
- data/lib/when_exe/ephemeris.rb +82 -109
- data/lib/when_exe/googlecalendar.rb +1 -1
- data/lib/when_exe/icalendar.rb +26 -14
- data/lib/when_exe/inspect.rb +82 -68
- data/lib/when_exe/locales/af.rb +1 -1
- data/lib/when_exe/locales/ar.rb +1 -1
- data/lib/when_exe/locales/az.rb +1 -1
- data/lib/when_exe/locales/bg.rb +1 -1
- data/lib/when_exe/locales/bn.rb +1 -1
- data/lib/when_exe/locales/bs.rb +1 -1
- data/lib/when_exe/locales/ca.rb +1 -1
- data/lib/when_exe/locales/cs.rb +1 -1
- data/lib/when_exe/locales/cy.rb +1 -1
- data/lib/when_exe/locales/da.rb +1 -1
- data/lib/when_exe/locales/de.rb +1 -1
- data/lib/when_exe/locales/de_AT.rb +1 -1
- data/lib/when_exe/locales/de_CH.rb +1 -1
- data/lib/when_exe/locales/el.rb +1 -1
- data/lib/when_exe/locales/en.rb +1 -1
- data/lib/when_exe/locales/en_AU.rb +1 -1
- data/lib/when_exe/locales/en_CA.rb +1 -1
- data/lib/when_exe/locales/en_GB.rb +1 -1
- data/lib/when_exe/locales/en_IE.rb +1 -1
- data/lib/when_exe/locales/en_IN.rb +1 -1
- data/lib/when_exe/locales/en_NZ.rb +1 -1
- data/lib/when_exe/locales/en_US.rb +1 -1
- data/lib/when_exe/locales/eo.rb +1 -1
- data/lib/when_exe/locales/es.rb +1 -1
- data/lib/when_exe/locales/es_419.rb +1 -1
- data/lib/when_exe/locales/es_AR.rb +1 -1
- data/lib/when_exe/locales/es_CL.rb +1 -1
- data/lib/when_exe/locales/es_CO.rb +1 -1
- data/lib/when_exe/locales/es_CR.rb +1 -1
- data/lib/when_exe/locales/es_EC.rb +1 -1
- data/lib/when_exe/locales/es_MX.rb +1 -1
- data/lib/when_exe/locales/es_PA.rb +1 -1
- data/lib/when_exe/locales/es_PE.rb +1 -1
- data/lib/when_exe/locales/es_VE.rb +1 -1
- data/lib/when_exe/locales/et.rb +1 -1
- data/lib/when_exe/locales/eu.rb +1 -1
- data/lib/when_exe/locales/fa.rb +1 -1
- data/lib/when_exe/locales/fi.rb +1 -1
- data/lib/when_exe/locales/fr.rb +1 -1
- data/lib/when_exe/locales/fr_CA.rb +1 -1
- data/lib/when_exe/locales/fr_CH.rb +1 -1
- data/lib/when_exe/locales/gl.rb +1 -1
- data/lib/when_exe/locales/he.rb +1 -1
- data/lib/when_exe/locales/hi.rb +1 -1
- data/lib/when_exe/locales/hi_IN.rb +1 -1
- data/lib/when_exe/locales/hr.rb +1 -1
- data/lib/when_exe/locales/hu.rb +1 -1
- data/lib/when_exe/locales/id.rb +1 -1
- data/lib/when_exe/locales/is.rb +1 -1
- data/lib/when_exe/locales/it.rb +1 -1
- data/lib/when_exe/locales/it_CH.rb +1 -1
- data/lib/when_exe/locales/ja.rb +1 -1
- data/lib/when_exe/locales/kn.rb +1 -1
- data/lib/when_exe/locales/ko.rb +1 -1
- data/lib/when_exe/locales/lo.rb +1 -1
- data/lib/when_exe/locales/locales.rb +1 -1
- data/lib/when_exe/locales/lt.rb +1 -1
- data/lib/when_exe/locales/lv.rb +1 -1
- data/lib/when_exe/locales/mk.rb +1 -1
- data/lib/when_exe/locales/mn.rb +1 -1
- data/lib/when_exe/locales/ms.rb +1 -1
- data/lib/when_exe/locales/nb.rb +1 -1
- data/lib/when_exe/locales/ne.rb +1 -1
- data/lib/when_exe/locales/nl.rb +1 -1
- data/lib/when_exe/locales/nn.rb +1 -1
- data/lib/when_exe/locales/or.rb +1 -1
- data/lib/when_exe/locales/pl.rb +1 -1
- data/lib/when_exe/locales/pt.rb +1 -1
- data/lib/when_exe/locales/pt_BR.rb +1 -1
- data/lib/when_exe/locales/rm.rb +1 -1
- data/lib/when_exe/locales/ro.rb +1 -1
- data/lib/when_exe/locales/ru.rb +1 -1
- data/lib/when_exe/locales/sk.rb +1 -1
- data/lib/when_exe/locales/sl.rb +1 -1
- data/lib/when_exe/locales/sr.rb +1 -1
- data/lib/when_exe/locales/sv.rb +1 -1
- data/lib/when_exe/locales/sw.rb +1 -1
- data/lib/when_exe/locales/th.rb +1 -1
- data/lib/when_exe/locales/tl.rb +1 -1
- data/lib/when_exe/locales/tr.rb +1 -1
- data/lib/when_exe/locales/uk.rb +1 -1
- data/lib/when_exe/locales/ur.rb +1 -1
- data/lib/when_exe/locales/uz.rb +1 -1
- data/lib/when_exe/locales/vi.rb +1 -1
- data/lib/when_exe/locales/wo.rb +1 -1
- data/lib/when_exe/locales/zh_CN.rb +1 -1
- data/lib/when_exe/locales/zh_HK.rb +1 -1
- data/lib/when_exe/locales/zh_TW.rb +1 -1
- data/lib/when_exe/mini_application.rb +6 -2
- data/lib/when_exe/parts/enumerator.rb +13 -8
- data/lib/when_exe/parts/geometric_complex.rb +3 -5
- data/lib/when_exe/parts/locale.rb +185 -28
- data/lib/when_exe/parts/method_cash.rb +20 -10
- data/lib/when_exe/parts/resource.rb +154 -76
- data/lib/when_exe/parts/timezone.rb +11 -6
- data/lib/when_exe/region/bahai.rb +2 -2
- data/lib/when_exe/region/balinese.rb +296 -296
- data/lib/when_exe/region/chinese.rb +564 -564
- data/lib/when_exe/region/chinese_calendar.rb +5 -1
- data/lib/when_exe/region/chinese_epoch.rb +47 -102
- data/lib/when_exe/region/chinese_twin.rb +798 -0
- data/lib/when_exe/region/christian.rb +314 -338
- data/lib/when_exe/region/coptic.rb +88 -0
- data/lib/when_exe/region/ephemeric_notes.rb +322 -307
- data/lib/when_exe/region/french.rb +2 -2
- data/lib/when_exe/region/indian.rb +361 -272
- data/lib/when_exe/region/iranian.rb +2 -2
- data/lib/when_exe/region/islamic.rb +3 -3
- data/lib/when_exe/region/japanese.rb +1 -1
- data/lib/when_exe/region/japanese_notes.rb +165 -103
- data/lib/when_exe/region/japanese_residues.rb +56 -55
- data/lib/when_exe/region/japanese_twin.rb +228 -0
- data/lib/when_exe/region/javanese.rb +2 -2
- data/lib/when_exe/region/jewish.rb +2 -2
- data/lib/when_exe/region/korean.rb +4 -4
- data/lib/when_exe/region/m17n.rb +19 -19
- data/lib/when_exe/region/martian.rb +21 -9
- data/lib/when_exe/region/mayan.rb +19 -11
- data/lib/when_exe/region/moon.rb +7 -7
- data/lib/when_exe/region/nihon_shoki.rb +7 -7
- data/lib/when_exe/region/roman.rb +100 -100
- data/lib/when_exe/region/shire.rb +130 -147
- data/lib/when_exe/region/thai.rb +2 -2
- data/lib/when_exe/region/tibetan.rb +2 -2
- data/lib/when_exe/region/vietnamese.rb +383 -114
- data/lib/when_exe/region/world.rb +112 -129
- data/lib/when_exe/timestandard.rb +12 -1
- data/lib/when_exe/tmposition.rb +28 -14
- data/lib/when_exe/tmreference.rb +96 -93
- data/lib/when_exe/version.rb +1 -1
- data/test/examples/Terms.m17n +2 -2
- data/test/examples/sample.json +16 -0
- data/test/examples/sample.xml +1 -1
- data/test/test.rb +4 -0
- data/test/test/basictypes.rb +2 -2
- data/test/test/calendarnote.rb +69 -0
- data/test/test/calendartypes.rb +41 -1
- data/test/test/coordinates.rb +12 -1
- data/test/test/ephemeris.rb +13 -66
- data/test/test/icalendar.rb +3 -3
- data/test/test/inspect.rb +1 -1
- data/test/test/parts.rb +7 -4
- data/test/test/region/chinese.rb +45 -0
- data/test/test/region/coptic.rb +27 -0
- data/test/test/region/indian.rb +1 -1
- data/test/test/region/japanese.rb +4 -4
- data/test/test/region/jewish.rb +1 -1
- data/test/test/region/m17n.rb +7 -5
- data/test/test/region/residue.rb +2 -2
- data/test/test/region/vietnamese.rb +102 -0
- data/test/test/timestandard.rb +81 -0
- data/test/test/tmposition.rb +1 -1
- data/test/test/tmreference.rb +1 -1
- data/when_exe.gemspec +2 -2
- metadata +16 -7
@@ -0,0 +1,27 @@
|
|
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 Test
|
10
|
+
|
11
|
+
class Coptic < Test::Unit::TestCase
|
12
|
+
def test__coptic
|
13
|
+
julian = When.Calendar('Julian')
|
14
|
+
gregorian = When.Calendar('Gregorian')
|
15
|
+
ethiopian = When.Calendar('Coptic?Epoch=8Y')
|
16
|
+
egyptian = When.Calendar('Coptic?Epoch=284Y')
|
17
|
+
|
18
|
+
[['2010-8-29', %w(2010-08-29 2010-09-11 2003-01-01 1727-01-01)],
|
19
|
+
['2011-8-30', %w(2011-08-30 2011-09-12 2004-01-01 1728-01-01)],
|
20
|
+
['2012-8-29', %w(2012-08-29 2012-09-11 2005-01-01 1729-01-01)],
|
21
|
+
['2013-8-29', %w(2013-08-29 2013-09-11 2006-01-01 1730-01-01)]].each do |sample|
|
22
|
+
date = When.when?(sample[0], :frame=>julian)
|
23
|
+
assert_equal(sample[1], [date.to_s, (gregorian ^ date).to_s, (ethiopian ^ date).to_s, (egyptian ^ date).to_s])
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
data/test/test/region/indian.rb
CHANGED
@@ -50,7 +50,7 @@ module Test
|
|
50
50
|
cc = When.Calendar('HinduSolar?type=SBS')
|
51
51
|
date = When.when?('1913-01-01', {:frame=>cc})
|
52
52
|
assert_equal([2448361, "1913-01-01", "1991-04-14"], [date.to_i, date.to_s, date.to_date.to_s])
|
53
|
-
date = When::
|
53
|
+
date = When::CalendarNote::HinduNote::Dates.new(date)
|
54
54
|
assert_equal(2448361, date.to_i)
|
55
55
|
end
|
56
56
|
end
|
@@ -155,15 +155,15 @@ module Test
|
|
155
155
|
long = dates.cal4note.s_terms.position(date)
|
156
156
|
notes = date.notes(:indices => When::DAY,
|
157
157
|
:notes => (13<<9|1<<48|1<<71),
|
158
|
-
:locale => 'ja').
|
158
|
+
:locale => 'ja').simplify[:value].compact
|
159
159
|
result << [date.to_m17n/'ja', notes]
|
160
160
|
end
|
161
161
|
end
|
162
162
|
end
|
163
163
|
assert_equal(sample.shift, result)
|
164
|
-
When::
|
164
|
+
When::CalendarNote::JapaneseNote::SolarTerms.send(:patch=, {})
|
165
165
|
end
|
166
|
-
When::
|
166
|
+
When::CalendarNote::JapaneseNote::SolarTerms.send(:patch=, nil)
|
167
167
|
end
|
168
168
|
|
169
169
|
def test__lunar_phases
|
@@ -194,7 +194,7 @@ module Test
|
|
194
194
|
%w(平成26.11.22 平成26.11.29 平成26.12.06 平成26.12.14),
|
195
195
|
%w(平成26.12.22 平成26.12.29)
|
196
196
|
].each do |month|
|
197
|
-
assert_equal([true], month.map {|date| When.when?(date).
|
197
|
+
assert_equal([true], month.map {|date| When.when?(date).is?('月相')}.uniq)
|
198
198
|
end
|
199
199
|
end
|
200
200
|
=begin
|
data/test/test/region/jewish.rb
CHANGED
data/test/test/region/m17n.rb
CHANGED
@@ -11,7 +11,7 @@ module Test
|
|
11
11
|
class M17n < Test::Unit::TestCase
|
12
12
|
|
13
13
|
First = [
|
14
|
-
["CalendarTerms", "CalendarTerms", "
|
14
|
+
["CalendarTerms", "CalendarTerms", ""],
|
15
15
|
["Month", "月", "http://ja.wikipedia.org/wiki/%E6%9C%88_(%E6%9A%A6)"],
|
16
16
|
["Month", "月", "http://ja.wikipedia.org/wiki/%E6%9C%88_(%E6%9A%A6)"],
|
17
17
|
["January", "1月", "http://ja.wikipedia.org/wiki/1%E6%9C%88"]
|
@@ -132,20 +132,22 @@ module Test
|
|
132
132
|
|
133
133
|
['1985-1-1',
|
134
134
|
{:calendar=>["_c:Gregorian"], :sdn=>2446067, :cal_date=>[1985, 1, 1],
|
135
|
-
:notes=>[[{:note=>"Month", :value=>"January"}],[]]}],
|
135
|
+
:notes=>[[{:note=>"Month", :value=>"January"}],[{:note=>"Week", :value=>"Tuesday(1)"}]]}],
|
136
136
|
|
137
137
|
['明治7.5.7',
|
138
138
|
{:calendar=>["_e:Japanese::明治",1867], :sdn=>2405651, :cal_date=>[7, 5, 7],
|
139
139
|
:notes=>[[{:note=>"干支", :value=>"甲戌(10)", :position=>"共通"}],
|
140
140
|
[{:note=>"月名", :value=>"May", :position=>"月建"}],
|
141
|
-
[{:note=>"
|
141
|
+
[{:note=>"七曜", :value=>"Thursday(3)", :position=>"共通"},
|
142
|
+
{:note=>"干支", :value=>"甲子(00)", :position=>"共通"},
|
142
143
|
{:note=>"六曜", :value=>"赤口", :position=>"民間"}]]}],
|
143
144
|
|
144
145
|
['明治17.5.7',
|
145
146
|
{:calendar=>["_e:Japanese::明治",1867], :sdn=>2409304, :cal_date=>[17, 5, 7],
|
146
147
|
:notes=>[[{:note=>"干支", :value=>"甲申(20)", :position=>"共通"}],
|
147
148
|
[{:note=>"月名", :value=>"May", :position=>"月建"}],
|
148
|
-
[{:note=>"
|
149
|
+
[{:note=>"七曜", :value=>"Wednesday(2)", :position=>"共通"},
|
150
|
+
{:note=>"干支", :value=>"丁巳(53)", :position=>"共通"},
|
149
151
|
{:note=>"六曜", :value=>"先負", :position=>"民間"}]]}],
|
150
152
|
|
151
153
|
['CE-2010.06.08T12:00:00+09:00',
|
@@ -166,7 +168,7 @@ module Test
|
|
166
168
|
|
167
169
|
].each do |sample|
|
168
170
|
date, verify = sample
|
169
|
-
list = When.when?(date).to_h({:
|
171
|
+
list = When.when?(date).to_h({:method=>:to_m17n, :prefix=>true})
|
170
172
|
[:calendar, :cal_date, :sdn, :clk_time].each do |key|
|
171
173
|
assert_equal(verify[key], list[key])
|
172
174
|
end
|
data/test/test/region/residue.rb
CHANGED
@@ -0,0 +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 Test
|
10
|
+
|
11
|
+
class Vietnamese < Test::Unit::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
|
@@ -0,0 +1,81 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
=begin
|
3
|
+
Copyright (C) 2011-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 Test::TimeStandard
|
10
|
+
|
11
|
+
class UniversalTime < Test::Unit::TestCase
|
12
|
+
def view(time)
|
13
|
+
return time unless time.instance_of?(When::Coordinates::LeapSeconds)
|
14
|
+
return [time.trunk, time.branch, time.second]
|
15
|
+
end
|
16
|
+
|
17
|
+
def test__delta_t
|
18
|
+
date = When.when?('2009-01-01T00:00:00Z')
|
19
|
+
assert_equal("2008-12-31T23:59:01Z", (date - When::TM::IntervalLength.new(60, 'second')).to_s)
|
20
|
+
assert_equal("2008-12-31T23:59:00Z", (date - When::Duration('PT60S')).to_s)
|
21
|
+
|
22
|
+
date = When::TM::JulianDate.dynamical_time((2500000-(When::TM::JulianDate::JD19700101-0.5))*675)
|
23
|
+
assert_equal(2500000.0, +date)
|
24
|
+
assert_equal(true, +date > date.to_f)
|
25
|
+
|
26
|
+
date = When::TM::JulianDate.universal_time((2500000-(When::TM::JulianDate::JD19700101-0.5))*675)
|
27
|
+
assert_equal(2500000.0, date.to_f)
|
28
|
+
assert_equal(true, +date > date.to_f)
|
29
|
+
|
30
|
+
assert_equal((40 + 377.0/2048), When::TimeStandard.delta_t(When.when?('1970-01-01T').to_f))
|
31
|
+
|
32
|
+
date = When.when?('2008-10-31T23:59:60Z')
|
33
|
+
assert_equal([[2008, 11, 1], [0, 0, 0, 0]], [date.cal_date, date.clk_time.clk_time])
|
34
|
+
|
35
|
+
pair = When::Coordinates::Pair.new(1,1)
|
36
|
+
assert_equal([-1, -1, 1], [0.9, 1, 1.1].map {|v| v<=>pair})
|
37
|
+
|
38
|
+
time = When.Resource('_t:UniversalTime')
|
39
|
+
date0 = When.when?('2008-12-31T23:59:58Z') ^ When.Duration('1s') # Duration('PT1S')
|
40
|
+
[
|
41
|
+
"2008-12-31T23:59:58Z",
|
42
|
+
"2008-12-31T23:59:59Z",
|
43
|
+
"2008-12-31T23:59:60Z",
|
44
|
+
"2009-01-01T00:00:00Z",
|
45
|
+
"2009-01-01T00:00:01Z"
|
46
|
+
].each do |sample|
|
47
|
+
date = date0.next
|
48
|
+
assert_equal([sample, true], [date.to_s, date.universal_time == time.from_dynamical_time(date.dynamical_time)])
|
49
|
+
end
|
50
|
+
|
51
|
+
it = When::V::Event.new({
|
52
|
+
'rrule' => 'FREQ=MINUTELY;BYSECOND=59,60',
|
53
|
+
'dtstart' => '2008-12-31T23:58:59Z'
|
54
|
+
}).each
|
55
|
+
|
56
|
+
[
|
57
|
+
"2008-12-31T23:58:59Z",
|
58
|
+
"2008-12-31T23:59:59Z",
|
59
|
+
"2009-01-01T00:00:59Z",
|
60
|
+
"2009-01-01T00:01:59Z"
|
61
|
+
].each do |sample|
|
62
|
+
assert_equal(sample, it.next.to_s)
|
63
|
+
end
|
64
|
+
|
65
|
+
it = When::V::Event.new({
|
66
|
+
'rrule' => 'FREQ=1s', #;BYSECOND=59,60',
|
67
|
+
'dtstart' => '2008-12-31T23:59:58Z'
|
68
|
+
}).each
|
69
|
+
|
70
|
+
[
|
71
|
+
"2008-12-31T23:59:58Z",
|
72
|
+
"2008-12-31T23:59:59Z",
|
73
|
+
"2008-12-31T23:59:60Z",
|
74
|
+
"2009-01-01T00:00:00Z",
|
75
|
+
"2009-01-01T00:00:01Z"
|
76
|
+
].each do |sample|
|
77
|
+
assert_equal(sample, it.next.to_s)
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
81
|
+
end
|
data/test/test/tmposition.rb
CHANGED
data/test/test/tmreference.rb
CHANGED
data/when_exe.gemspec
CHANGED
@@ -8,8 +8,8 @@ Gem::Specification.new do |s|
|
|
8
8
|
s.authors = ["Takashi SUGA"]
|
9
9
|
s.email = ["suchowan@box.email.ne.jp"]
|
10
10
|
s.homepage = "http://www.asahi-net.or.jp/~dd6t-sg/"
|
11
|
-
s.summary = %q{A multicultural and multilingualized calendar library based on ISO 8601, ISO 19108
|
12
|
-
s.description = %q{
|
11
|
+
s.summary = %q{A multicultural and multilingualized calendar library based on ISO 8601, ISO 19108, RFC 5545 and RFC6350}
|
12
|
+
s.description = %q{A multicultural and multilingualized calendar library based on ISO 8601, ISO 19108, RFC 5545 and RFC6350. This version is a beta version and in the evaluation stage. So, its APIs may be changed in future. Please refer to http://suchowan.at.webry.info/theme/a543700674.html for the recent history (Sorry only in Japanese).}
|
13
13
|
|
14
14
|
s.rubyforge_project = "when_exe"
|
15
15
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: when_exe
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.5
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,12 +9,12 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2014-
|
12
|
+
date: 2014-04-23 00:00:00.000000000Z
|
13
13
|
dependencies: []
|
14
|
-
description:
|
15
|
-
version is a beta version and in the evaluation
|
16
|
-
in future. Please refer to http://suchowan.at.webry.info/theme/a543700674.html
|
17
|
-
the recent history (Sorry only in Japanese).
|
14
|
+
description: A multicultural and multilingualized calendar library based on ISO 8601,
|
15
|
+
ISO 19108, RFC 5545 and RFC6350. This version is a beta version and in the evaluation
|
16
|
+
stage. So, its APIs may be changed in future. Please refer to http://suchowan.at.webry.info/theme/a543700674.html
|
17
|
+
for the recent history (Sorry only in Japanese).
|
18
18
|
email:
|
19
19
|
- suchowan@box.email.ne.jp
|
20
20
|
executables:
|
@@ -36,6 +36,7 @@ files:
|
|
36
36
|
- bin/when.rb.config
|
37
37
|
- lib/when_exe.rb
|
38
38
|
- lib/when_exe/basictypes.rb
|
39
|
+
- lib/when_exe/calendarnote.rb
|
39
40
|
- lib/when_exe/calendartypes.rb
|
40
41
|
- lib/when_exe/coordinates.rb
|
41
42
|
- lib/when_exe/core/compatibility.rb
|
@@ -146,7 +147,9 @@ files:
|
|
146
147
|
- lib/when_exe/region/chinese.rb
|
147
148
|
- lib/when_exe/region/chinese_calendar.rb
|
148
149
|
- lib/when_exe/region/chinese_epoch.rb
|
150
|
+
- lib/when_exe/region/chinese_twin.rb
|
149
151
|
- lib/when_exe/region/christian.rb
|
152
|
+
- lib/when_exe/region/coptic.rb
|
150
153
|
- lib/when_exe/region/ephemeric_notes.rb
|
151
154
|
- lib/when_exe/region/far_east.rb
|
152
155
|
- lib/when_exe/region/french.rb
|
@@ -157,6 +160,7 @@ files:
|
|
157
160
|
- lib/when_exe/region/japanese.rb
|
158
161
|
- lib/when_exe/region/japanese_notes.rb
|
159
162
|
- lib/when_exe/region/japanese_residues.rb
|
163
|
+
- lib/when_exe/region/japanese_twin.rb
|
160
164
|
- lib/when_exe/region/javanese.rb
|
161
165
|
- lib/when_exe/region/jewish.rb
|
162
166
|
- lib/when_exe/region/korean.rb
|
@@ -194,11 +198,13 @@ files:
|
|
194
198
|
- test/examples/Test.ics
|
195
199
|
- test/examples/USA-DST.ics
|
196
200
|
- test/examples/geometric_complex.rb
|
201
|
+
- test/examples/sample.json
|
197
202
|
- test/examples/sample.xml
|
198
203
|
- test/examples/today.rb
|
199
204
|
- test/test.rb
|
200
205
|
- test/test.rb.config
|
201
206
|
- test/test/basictypes.rb
|
207
|
+
- test/test/calendarnote.rb
|
202
208
|
- test/test/calendartypes.rb
|
203
209
|
- test/test/coordinates.rb
|
204
210
|
- test/test/ephemeris.rb
|
@@ -208,6 +214,7 @@ files:
|
|
208
214
|
- test/test/parts.rb
|
209
215
|
- test/test/region/chinese.rb
|
210
216
|
- test/test/region/civil.rb
|
217
|
+
- test/test/region/coptic.rb
|
211
218
|
- test/test/region/french.rb
|
212
219
|
- test/test/region/geologicalage.rb
|
213
220
|
- test/test/region/indian.rb
|
@@ -223,6 +230,8 @@ files:
|
|
223
230
|
- test/test/region/sun.rb
|
224
231
|
- test/test/region/thai.rb
|
225
232
|
- test/test/region/tibetan.rb
|
233
|
+
- test/test/region/vietnamese.rb
|
234
|
+
- test/test/timestandard.rb
|
226
235
|
- test/test/tmobjects.rb
|
227
236
|
- test/test/tmposition.rb
|
228
237
|
- test/test/tmreference.rb
|
@@ -251,6 +260,6 @@ rubygems_version: 1.7.2
|
|
251
260
|
signing_key:
|
252
261
|
specification_version: 3
|
253
262
|
summary: A multicultural and multilingualized calendar library based on ISO 8601,
|
254
|
-
ISO 19108
|
263
|
+
ISO 19108, RFC 5545 and RFC6350
|
255
264
|
test_files: []
|
256
265
|
has_rdoc:
|