when_exe 0.4.6 → 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.
- checksums.yaml +5 -5
- data/LICENSE.ja.txt +8 -21
- data/LICENSE.txt +5 -27
- data/README.md +8 -63
- data/bin/make_ttl.rb +3 -2
- data/bin/make_ttl.rb.config +3 -3
- data/lib/when_exe.rb +8 -3
- data/lib/when_exe/basictypes.rb +1 -2
- data/lib/when_exe/calendarnote.rb +9 -5
- data/lib/when_exe/calendartypes.rb +4 -4
- data/lib/when_exe/coordinates.rb +14 -18
- data/lib/when_exe/ephemeris.rb +5 -6
- data/lib/when_exe/events.rb +7 -7
- data/lib/when_exe/google_api.rb +26 -31
- data/lib/when_exe/icalendar.rb +8 -8
- data/lib/when_exe/inspect.rb +3 -3
- data/lib/when_exe/linkeddata.rb +10 -2
- data/lib/when_exe/locales/locale.rb +2 -2
- data/lib/when_exe/parts/enumerator.rb +3 -3
- data/lib/when_exe/parts/geometric_complex.rb +2 -2
- data/lib/when_exe/parts/resource.rb +2 -2
- data/lib/when_exe/parts/timezone.rb +17 -29
- data/lib/when_exe/region/balinese.rb +5 -3
- data/lib/when_exe/region/chinese.rb +25 -3
- data/lib/when_exe/region/chinese/twins.rb +128 -5
- data/lib/when_exe/region/dee.rb +4 -4
- data/lib/when_exe/region/geologicalage.rb +137 -126
- data/lib/when_exe/region/hanke_henry.rb +4 -4
- data/lib/when_exe/region/indian.rb +73 -4
- data/lib/when_exe/region/international_fixed.rb +3 -3
- data/lib/when_exe/region/japanese.rb +9 -5
- data/lib/when_exe/region/japanese/epochs.rb +8 -4
- data/lib/when_exe/region/japanese/notes.rb +25 -7
- data/lib/when_exe/region/japanese/residues.rb +32 -10
- data/lib/when_exe/region/japanese/weeks.rb +7 -7
- data/lib/when_exe/region/korean.rb +17 -17
- data/lib/when_exe/region/saudi_arabian.rb +57 -0
- data/lib/when_exe/region/world.rb +3 -3
- data/lib/when_exe/timestandard.rb +7 -5
- data/lib/when_exe/tmobjects.rb +2 -2
- data/lib/when_exe/tmposition.rb +6 -4
- data/lib/when_exe/tmreference.rb +3 -3
- data/lib/when_exe/version.rb +3 -3
- data/test/events/example-datasets +0 -1
- data/test/events/japanese-holiday.csv +23 -6
- data/test/events/japanese-holiday.ttl +321 -151
- data/test/test/basictypes.rb +2 -2
- data/test/test/calendarnote.rb +2 -2
- data/test/test/coordinates.rb +6 -4
- data/test/test/ephemeris.rb +2 -2
- data/test/test/google_api.rb +45 -32
- data/test/test/inspect.rb +2 -2
- data/test/test/parts.rb +5 -5
- data/test/test/region/christian.rb +7 -7
- data/test/test/region/indian.rb +14 -1
- data/test/test/region/islamic.rb +11 -1
- data/test/test/region/japanese.rb +3 -3
- data/test/test/region/m17n.rb +2 -2
- data/test/test/region/reforms.rb +2 -2
- data/test/test/tmposition.rb +7 -7
- metadata +7 -8
data/test/test/basictypes.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
=begin
|
3
|
-
Copyright (C) 2011-
|
3
|
+
Copyright (C) 2011-2020 Takashi SUGA
|
4
4
|
|
5
5
|
You may use and/or modify this file according to the license
|
6
6
|
described in the LICENSE.txt file included in this archive.
|
@@ -395,7 +395,7 @@ LOCALE
|
|
395
395
|
def test__code_space
|
396
396
|
assert_equal('zip', Term1.codeSpace)
|
397
397
|
assert_equal("ISO", Term2.codeSpace)
|
398
|
-
|
398
|
+
assert_nil(Term3.codeSpace)
|
399
399
|
end
|
400
400
|
|
401
401
|
def test__label
|
data/test/test/calendarnote.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
=begin
|
3
|
-
Copyright (C) 2014 Takashi SUGA
|
3
|
+
Copyright (C) 2014-2020 Takashi SUGA
|
4
4
|
|
5
5
|
You may use and/or modify this file according to the license
|
6
6
|
described in the LICENSE.txt file included in this archive.
|
@@ -51,7 +51,7 @@ module MiniTest::CalendarNote
|
|
51
51
|
assert_equal([[{:note=>"干支", :value=>"癸巳(29)", :position=>"共通"}],
|
52
52
|
[{:note=>"干支", :value=>"壬辰(28)", :position=>"共通"}]], notes1.subset(:note=>'干支'))
|
53
53
|
assert_equal([[{:note=>"祝祭日", :value=>"秋分の日", :position=>"祝祭日"}]], notes1.subset(:value=>'秋分の日'))
|
54
|
-
|
54
|
+
assert_nil(notes1.subset(:value=>'春分の日'))
|
55
55
|
assert_equal([[nil], [nil], [nil, nil, nil, nil, nil]], notes1.subset({:value=>'春分の日'}, false))
|
56
56
|
|
57
57
|
assert_equal([2456558, 2456559, 2456560], all.keys)
|
data/test/test/coordinates.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
=begin
|
3
|
-
Copyright (C) 2011-
|
3
|
+
Copyright (C) 2011-2019 Takashi SUGA
|
4
4
|
|
5
5
|
You may use and/or modify this file according to the license
|
6
6
|
described in the LICENSE.txt file included in this archive.
|
@@ -175,10 +175,12 @@ module MiniTest::Coordinates
|
|
175
175
|
["Emperor_Taishō", "https://en.wikipedia.org/wiki/Emperor_Taish%C5%8D"],
|
176
176
|
["昭和天皇", "https://ja.wikipedia.org/wiki/%E6%98%AD%E5%92%8C%E5%A4%A9%E7%9A%87"],
|
177
177
|
["Emperor_Shōwa", "https://en.wikipedia.org/wiki/Emperor_Sh%C5%8Dwa"],
|
178
|
-
["
|
179
|
-
["
|
178
|
+
["上皇明仁", "https://ja.wikipedia.org/wiki/%E4%B8%8A%E7%9A%87%E6%98%8E%E4%BB%81"],
|
179
|
+
["Emperor_Emeritus_of_Japan", "https://en.wikipedia.org/wiki/Akihito"],
|
180
|
+
["今上天皇", "https://ja.wikipedia.org/wiki/%E5%BE%B3%E4%BB%81"],
|
181
|
+
["Emperor_Kinjō", "https://en.wikipedia.org/wiki/Naruhito"]
|
180
182
|
]
|
181
|
-
['明治', '大正', '昭和', '平成'].each do |nengo|
|
183
|
+
['明治', '大正', '昭和', '平成', '令和'].each do |nengo|
|
182
184
|
name = When.when?(nengo + '06.01.01').query['name']
|
183
185
|
['ja', 'en'].each do |lang|
|
184
186
|
assert_equal(sample.shift, [name.translate(lang), name.reference(lang)])
|
data/test/test/ephemeris.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
=begin
|
3
|
-
Copyright (C) 2011-
|
3
|
+
Copyright (C) 2011-2020 Takashi SUGA
|
4
4
|
|
5
5
|
You may use and/or modify this file according to the license
|
6
6
|
described in the LICENSE.txt file included in this archive.
|
@@ -59,7 +59,7 @@ module MiniTest::Ephemeris
|
|
59
59
|
|
60
60
|
assert_raises(NoMethodError) { When.when?('2012-11-15').sunrise }
|
61
61
|
|
62
|
-
|
62
|
+
assert_nil(When.when?('2013-06-21T+09:00', :long=>135, :lat=>70).sunrise)
|
63
63
|
|
64
64
|
if Object.const_defined?(:TZInfo)
|
65
65
|
assert_equal(0, /2012-11-15T06:16/ =~ When.when?('2012-11-15', :tz=>'Asia/Tokyo').sunrise.to_s)
|
data/test/test/google_api.rb
CHANGED
@@ -1,56 +1,69 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
=begin
|
3
|
-
Copyright (C) 2015 Takashi SUGA
|
3
|
+
Copyright (C) 2015-2021 Takashi SUGA
|
4
4
|
|
5
5
|
You may use and/or modify this file according to the license
|
6
6
|
described in the LICENSE.txt file included in this archive.
|
7
|
+
|
8
|
+
Before running this script, please create "credentials.json" and "token.yaml" by
|
9
|
+
running quickstart.rb according to the Quick Start description at the URL below,
|
10
|
+
and place them in the same directory as test.rb.
|
11
|
+
|
12
|
+
https://developers.google.com/calendar/quickstart/ruby
|
13
|
+
|
7
14
|
=end
|
8
15
|
|
9
16
|
require 'fileutils'
|
10
|
-
|
11
|
-
require
|
17
|
+
if FileTest.exist?("token.yaml")
|
18
|
+
require "google/apis/calendar_v3"
|
19
|
+
require "googleauth"
|
20
|
+
require "googleauth/stores/file_token_store"
|
21
|
+
end
|
12
22
|
|
13
23
|
module MiniTest
|
14
24
|
|
15
25
|
class GoogleAPI < MiniTest::TestCase
|
16
26
|
|
17
27
|
HOLIDAYS = [
|
18
|
-
["
|
19
|
-
["
|
20
|
-
["
|
21
|
-
["
|
22
|
-
["
|
23
|
-
["
|
24
|
-
["
|
25
|
-
["
|
26
|
-
["
|
27
|
-
["
|
28
|
-
["
|
29
|
-
["
|
30
|
-
["
|
31
|
-
["
|
32
|
-
["
|
33
|
-
["
|
34
|
-
["
|
28
|
+
["2021-01-01", "New Year's Day"],
|
29
|
+
["2021-01-11", "Coming of Age Day"],
|
30
|
+
["2021-02-11", "National Foundation Day"],
|
31
|
+
["2021-02-23", "Emperor's Birthday"],
|
32
|
+
["2021-03-20", "Spring Equinox"],
|
33
|
+
["2021-04-29", "Shōwa Day"],
|
34
|
+
["2021-05-03", "Constitution Memorial Day"],
|
35
|
+
["2021-05-04", "Greenery Day"],
|
36
|
+
["2021-05-05", "Children's Day"],
|
37
|
+
["2021-07-22", "Sea Day"],
|
38
|
+
["2021-07-23", "Sports Day"],
|
39
|
+
["2021-08-08", "Mountain Day"],
|
40
|
+
["2021-08-09", "Day off for Mountain Day"],
|
41
|
+
["2021-09-20", "Respect for the Aged Day"],
|
42
|
+
["2021-09-23", "Autumn Equinox"],
|
43
|
+
["2021-11-03", "Culture Day"],
|
44
|
+
["2021-11-23", "Labor Thanksgiving Day"]
|
35
45
|
]
|
36
46
|
|
37
|
-
|
47
|
+
def authorize
|
48
|
+
client_id = Google::Auth::ClientId.from_file "credentials.json"
|
49
|
+
scope = Google::Apis::CalendarV3::AUTH_CALENDAR_READONLY
|
50
|
+
token_store = Google::Auth::Stores::FileTokenStore.new file: "token.yaml"
|
51
|
+
authorizer = Google::Auth::UserAuthorizer.new client_id, scope, token_store
|
52
|
+
authorizer.get_credentials "default"
|
53
|
+
end
|
54
|
+
|
55
|
+
if FileTest.exist?("token.yaml")
|
38
56
|
|
39
57
|
def test__enum_for
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
client.authorization.scope = oauth_yaml["scope"]
|
46
|
-
client.authorization.refresh_token = oauth_yaml["refresh_token"]
|
47
|
-
client.authorization.access_token = oauth_yaml["access_token"]
|
48
|
-
service = client.discovered_api('calendar', 'v3')
|
49
|
-
calendar = When::GoogleAPI::Calendar.list(client, service,
|
58
|
+
service = Google::Apis::CalendarV3::CalendarService.new
|
59
|
+
service.client_options.application_name = "Google Calendar API Ruby Test"
|
60
|
+
service.authorization = authorize
|
61
|
+
|
62
|
+
calendar = When::GoogleAPI::Calendar.list(service,
|
50
63
|
'en.japanese#holiday@group.v.calendar.google.com')
|
51
64
|
assert_equal(calendar.calendar_id, 'en.japanese#holiday@group.v.calendar.google.com')
|
52
65
|
holidays = HOLIDAYS.dup
|
53
|
-
calendar.enum_for(When.when?('
|
66
|
+
calendar.enum_for(When.when?('20210101/1231')).each do |date|
|
54
67
|
assert_equal(holidays.shift, [date.to_s, date.events[0].summary])
|
55
68
|
end
|
56
69
|
assert_equal([], holidays)
|
data/test/test/inspect.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
=begin
|
3
|
-
Copyright (C) 2011-
|
3
|
+
Copyright (C) 2011-2020 Takashi SUGA
|
4
4
|
|
5
5
|
You may use and/or modify this file according to the license
|
6
6
|
described in the LICENSE.txt file included in this archive.
|
@@ -37,7 +37,7 @@ module MiniTest
|
|
37
37
|
clock = When.Clock('+09:00')
|
38
38
|
#pp clock.to_s
|
39
39
|
assert_equal("+09:00", clock.label.to_s)
|
40
|
-
|
40
|
+
assert_nil(clock.referenceEvent)
|
41
41
|
assert_equal("T00+09:00", clock.referenceTime.to_s)
|
42
42
|
assert_equal("T*15:00:00Z", clock.utcReference.to_s)
|
43
43
|
end
|
data/test/test/parts.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
=begin
|
3
|
-
Copyright (C) 2011-
|
3
|
+
Copyright (C) 2011-2020 Takashi SUGA
|
4
4
|
|
5
5
|
You may use and/or modify this file according to the license
|
6
6
|
described in the LICENSE.txt file included in this archive.
|
@@ -96,8 +96,8 @@ LOCALE
|
|
96
96
|
end
|
97
97
|
|
98
98
|
def test__reference
|
99
|
-
|
100
|
-
|
99
|
+
assert_nil(Term1.reference('ja_JP'))
|
100
|
+
assert_nil(Term1.reference('en_US'))
|
101
101
|
assert_equal("https://ja.wikipedia.org/wiki/Getsuyou", Term2.reference('ja_JP'))
|
102
102
|
assert_equal("https://en.wikipedia.org/wiki/Monday", Term2.reference('en_US'))
|
103
103
|
assert_equal("https://ja.wikipedia.org/wiki/%E6%9C%88%E6%9B%9C%E6%97%A5", Term3.reference('ja_JP'))
|
@@ -164,14 +164,14 @@ LOCALE
|
|
164
164
|
|
165
165
|
sample = [false, false, false, false, false]
|
166
166
|
complex = When::Parts::GeometricComplex.new(false)
|
167
|
-
|
167
|
+
assert_nil(complex.exclude_end?)
|
168
168
|
(1..5).each do |i|
|
169
169
|
assert_equal(sample.shift, complex.include?(i))
|
170
170
|
end
|
171
171
|
|
172
172
|
sample = [true, true, true, true, true]
|
173
173
|
complex = When::Parts::GeometricComplex.new(true)
|
174
|
-
|
174
|
+
assert_nil(complex.exclude_end?)
|
175
175
|
(1..5).each do |i|
|
176
176
|
assert_equal(sample.shift, complex.include?(i))
|
177
177
|
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
=begin
|
3
|
-
Copyright (C) 2012-
|
3
|
+
Copyright (C) 2012-2021 Takashi SUGA
|
4
4
|
|
5
5
|
You may use and/or modify this file according to the license
|
6
6
|
described in the LICENSE.txt file included in this archive.
|
@@ -212,12 +212,12 @@ module MiniTest
|
|
212
212
|
["*", 17, 18, 19, 20, 21, 22, 23],
|
213
213
|
["*", 24, 25, 26, 27, 28, 29, 30],
|
214
214
|
["*", 31, "*", "*", "*", "*", "*", "*"]]]]],
|
215
|
-
|
216
|
-
|
217
|
-
|
218
|
-
|
219
|
-
|
220
|
-
|
215
|
+
date.year_included('Sunday') {|d,b|
|
216
|
+
case b
|
217
|
+
when When::YEAR ; d[When::YEAR]
|
218
|
+
when When::MONTH ; d[When::MONTH]
|
219
|
+
when When::DAY ; d[When::DAY]
|
220
|
+
else ; '*'
|
221
221
|
end
|
222
222
|
}
|
223
223
|
)
|
data/test/test/region/indian.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
=begin
|
3
|
-
Copyright (C) 2011-
|
3
|
+
Copyright (C) 2011-2018 Takashi SUGA
|
4
4
|
|
5
5
|
You may use and/or modify this file according to the license
|
6
6
|
described in the LICENSE.txt file included in this archive.
|
@@ -86,5 +86,18 @@ module MiniTest
|
|
86
86
|
date = When.when? '1936-11%3C08-%5E%5eHinduLuniSolar?note=HinduNote&location=(_co:Indian::Chennai)&start_month=5&type=SBSA'
|
87
87
|
assert_equal('1936-11<08-', date.to_s)
|
88
88
|
end
|
89
|
+
|
90
|
+
def test_vikram_sambat
|
91
|
+
date = When.when? '1942.4.20'
|
92
|
+
mismatches = []
|
93
|
+
961.times do
|
94
|
+
sambat = (When::VikramSambatSolar ^ date).to_s
|
95
|
+
samvat = (When::VikramSamvatSolar ^ date).to_s
|
96
|
+
mismatches << [date.to_s, sambat, samvat] unless sambat == samvat
|
97
|
+
date += When::P1M
|
98
|
+
end
|
99
|
+
assert_equal([%w(1945-11-20 2002-08-06 2002-08-05)], mismatches)
|
100
|
+
end
|
101
|
+
|
89
102
|
end
|
90
103
|
end
|
data/test/test/region/islamic.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
=begin
|
3
|
-
Copyright (C) 2011-
|
3
|
+
Copyright (C) 2011-2017 Takashi SUGA
|
4
4
|
|
5
5
|
You may use and/or modify this file according to the license
|
6
6
|
described in the LICENSE.txt file included in this archive.
|
@@ -48,6 +48,16 @@ module MiniTest
|
|
48
48
|
end
|
49
49
|
end
|
50
50
|
end
|
51
|
+
|
52
|
+
def test_ummalqura_solar
|
53
|
+
date = When.when? '2017.9.23'
|
54
|
+
assert_equal('1396-01-01', (When::UmmalquraSolar ^ date).to_s)
|
55
|
+
399.times do
|
56
|
+
date += When::P1Y
|
57
|
+
assert_equal([1,1], (When::UmmalquraSolar ^ date).cal_date[-2..-1])
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
51
61
|
end
|
52
62
|
end
|
53
63
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
=begin
|
3
|
-
Copyright (C) 2011-
|
3
|
+
Copyright (C) 2011-2020 Takashi SUGA
|
4
4
|
|
5
5
|
You may use and/or modify this file according to the license
|
6
6
|
described in the LICENSE.txt file included in this archive.
|
@@ -208,11 +208,11 @@ module MiniTest
|
|
208
208
|
def test__eclipse
|
209
209
|
date = When.when?('貞観4.2.1')
|
210
210
|
assert_equal('夜日蝕七分', date.notes({:notes=>'日食'}).value)
|
211
|
-
|
211
|
+
assert_nil(date.notes({:notes=>'日食', :solar_eclipse=>1}).value)
|
212
212
|
|
213
213
|
date = When.when?('貞観4.2.15')
|
214
214
|
assert_equal('(月蝕ニ分)', date.notes({:notes=>'月食'}).value)
|
215
|
-
|
215
|
+
assert_nil(date.notes({:notes=>'月食', :lunar_eclipse=>3}).value)
|
216
216
|
end
|
217
217
|
|
218
218
|
def test_japanese_lunisolar
|
data/test/test/region/m17n.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
=begin
|
3
|
-
Copyright (C) 2011-
|
3
|
+
Copyright (C) 2011-2020 Takashi SUGA
|
4
4
|
|
5
5
|
You may use and/or modify this file according to the license
|
6
6
|
described in the LICENSE.txt file included in this archive.
|
@@ -171,7 +171,7 @@ module MiniTest
|
|
171
171
|
date, verify = sample
|
172
172
|
list = When.when?(date).to_h({:method=>:to_m17n, :locale=>verify[:locale], :prefix=>true})
|
173
173
|
[:calendar, :cal_date, :sdn, :clk_time].each do |key|
|
174
|
-
assert_equal(verify[key], list[key])
|
174
|
+
assert_equal([verify[key]], [list[key]])
|
175
175
|
end
|
176
176
|
verify[:notes].each_index do |i|
|
177
177
|
verify[:notes][i].each_index do |k|
|
data/test/test/region/reforms.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
=begin
|
3
|
-
Copyright (C) 2014 Takashi SUGA
|
3
|
+
Copyright (C) 2014-2017 Takashi SUGA
|
4
4
|
|
5
5
|
You may use and/or modify this file according to the license
|
6
6
|
described in the LICENSE.txt file included in this archive.
|
@@ -103,7 +103,7 @@ module MiniTest
|
|
103
103
|
|
104
104
|
class HankeHenry < MiniTest::TestCase
|
105
105
|
def test_hanke_henry
|
106
|
-
assert_equal(When.when?('
|
106
|
+
assert_equal(When.when?('2018.1.1').to_i, When.when?('2018.1.1^^HankeHenry').to_i)
|
107
107
|
count = 0
|
108
108
|
(2000...2400).each do |year|
|
109
109
|
first = When.tm_pos(year, 1, 1)
|
data/test/test/tmposition.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
=begin
|
3
|
-
Copyright (C) 2011-
|
3
|
+
Copyright (C) 2011-2021 Takashi SUGA
|
4
4
|
|
5
5
|
You may use and/or modify this file according to the license
|
6
6
|
described in the LICENSE.txt file included in this archive.
|
@@ -55,9 +55,9 @@ LIST
|
|
55
55
|
assert_equal("2001-08-02..2001-09-10", When.when?("2001-08-02/09-10").to_s)
|
56
56
|
assert_equal(364, When.when?('20130101/1230').count) if Enumerable.method_defined?(:count)
|
57
57
|
assert_equal("1980-02-01", When.when?("800201", {:abbr=>1970}).to_s)
|
58
|
-
#
|
58
|
+
# assert_nil(When.TemporalPosition(2011,2,29))
|
59
59
|
assert_equal('2011-03-01', When.TemporalPosition(2011,2,29).to_s)
|
60
|
-
|
60
|
+
assert_nil(When.TemporalPosition(2011,2,29, {:invalid=>:check}))
|
61
61
|
assert_raises(ArgumentError) { When.TemporalPosition(2011,2,29, {:invalid=>:raise}) }
|
62
62
|
end
|
63
63
|
|
@@ -65,7 +65,7 @@ LIST
|
|
65
65
|
assert_equal('1950-08', When.strptime('1950 Aug', '%Y %B').to_s)
|
66
66
|
assert_equal('1950-08-31', When.strptime('1950 Aug 31', '%Y %B %d').to_s)
|
67
67
|
assert_equal('2015-01-06T09:18:24+09:00', When.strptime('Tue Jan 6 9:18:24 +09:00 2015', "%A %B %d %H:%M:%S %z %Y").to_s)
|
68
|
-
assert_equal('
|
68
|
+
assert_equal('2021-01-07T09:18:24+09:00', When.strptime("木 1月 6 9:18:24 JST", "%A %B %d %H:%M:%S %z", {:locale=>'ja'}).to_s)
|
69
69
|
assert_raises(ArgumentError) {When.strptime("Thu Jan 6 9:18:24 +09:00 2015", "%A %B %d %H:%M:%S %z %Y", {:invalid=>:raise})}
|
70
70
|
end
|
71
71
|
|
@@ -156,7 +156,7 @@ LIST
|
|
156
156
|
assert_equal('平成26(2014).08.21', When.tm_pos('平成', When.Residue('甲午'), 8, When.Residue('甲子')).to_s)
|
157
157
|
|
158
158
|
assert_equal('2014-09-06', When.tm_pos(2014, 8, When.Residue('SA:6')).to_s)
|
159
|
-
|
159
|
+
assert_nil(When.tm_pos(2014, 8, When.Residue('SA:6'), :invalid=>:check))
|
160
160
|
assert_raises(ArgumentError) {When.tm_pos(2014, 8, When.Residue('SA:6'), :invalid=>:raise)}
|
161
161
|
end
|
162
162
|
|
@@ -173,10 +173,10 @@ LIST
|
|
173
173
|
assert_equal('2015-12-25', When.when?('2015-01-01{Christian#christmas}').to_s)
|
174
174
|
assert_equal('2015-09-22T00:00+09:00', When.when?('2015-09-01{SolarTerms#term180-1&TU}T00:00+09:00').to_s)
|
175
175
|
assert_equal('2015-05-06', When.when?('2015-05-{06&MO,TU,WE}').to_s)
|
176
|
-
|
176
|
+
assert_nil(When.when?('2016-05-{06&MO,TU,WE}'))
|
177
177
|
|
178
178
|
assert_equal('2015-03-01', When.when?('2015-02-01{5SU}').to_s)
|
179
|
-
|
179
|
+
assert_nil(When.when?('2015-02-{5SU}'))
|
180
180
|
assert_equal('2015-02-22', When.when?('2015-02-{-SU}').to_s)
|
181
181
|
|
182
182
|
it = When.when?('R/2015-09-01{SolarTerms#term180-1&TU}T00:00+09:00')
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: when_exe
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Takashi SUGA
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-05-06 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: A multicultural and multilingualized calendar library based on ISO 8601,
|
14
14
|
ISO 19108, RFC 5545(iCalendar) and RFC6350. JSON-LD formats for TemporalPosition
|
@@ -216,6 +216,7 @@ files:
|
|
216
216
|
- lib/when_exe/region/roman.rb
|
217
217
|
- lib/when_exe/region/russian.rb
|
218
218
|
- lib/when_exe/region/ryukyu.rb
|
219
|
+
- lib/when_exe/region/saudi_arabian.rb
|
219
220
|
- lib/when_exe/region/shire.rb
|
220
221
|
- lib/when_exe/region/symmetry.rb
|
221
222
|
- lib/when_exe/region/thai.rb
|
@@ -343,7 +344,7 @@ files:
|
|
343
344
|
homepage: http://www.asahi-net.or.jp/~dd6t-sg/
|
344
345
|
licenses: []
|
345
346
|
metadata: {}
|
346
|
-
post_install_message:
|
347
|
+
post_install_message:
|
347
348
|
rdoc_options: []
|
348
349
|
require_paths:
|
349
350
|
- lib
|
@@ -358,11 +359,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
358
359
|
- !ruby/object:Gem::Version
|
359
360
|
version: '0'
|
360
361
|
requirements: []
|
361
|
-
|
362
|
-
|
363
|
-
signing_key:
|
362
|
+
rubygems_version: 3.2.3
|
363
|
+
signing_key:
|
364
364
|
specification_version: 4
|
365
365
|
summary: A multicultural and multilingualized calendar library based on ISO 8601,
|
366
366
|
ISO 19108, RFC 5545(iCalendar) and RFC6350
|
367
367
|
test_files: []
|
368
|
-
has_rdoc:
|