vanadiel-time 0.1.0 → 0.2.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.
- data/.gitignore +2 -0
- data/.yardopts +8 -1
- data/ChangeLog.md +4 -0
- data/Gemfile +1 -1
- data/LICENSE.txt +1 -1
- data/README.md +1 -1
- data/Rakefile +3 -4
- data/lib/vanadiel/time.rb +4 -7
- data/spec/time_comparable_spec.rb +95 -0
- data/spec/time_spec.rb +0 -10
- metadata +7 -4
data/.gitignore
CHANGED
data/.yardopts
CHANGED
data/ChangeLog.md
CHANGED
data/Gemfile
CHANGED
data/LICENSE.txt
CHANGED
data/README.md
CHANGED
data/Rakefile
CHANGED
@@ -20,15 +20,14 @@ end
|
|
20
20
|
|
21
21
|
require 'rake'
|
22
22
|
|
23
|
-
require 'rubygems/tasks'
|
24
|
-
Gem::Tasks.new
|
25
|
-
|
26
23
|
require 'rspec/core/rake_task'
|
27
24
|
RSpec::Core::RakeTask.new
|
28
25
|
|
29
26
|
task :test => :spec
|
30
27
|
task :default => :spec
|
31
28
|
|
29
|
+
require 'bundler/gem_tasks'
|
30
|
+
|
32
31
|
require 'yard'
|
33
|
-
YARD::Rake::YardocTask.new
|
32
|
+
YARD::Rake::YardocTask.new
|
34
33
|
task :doc => :yard
|
data/lib/vanadiel/time.rb
CHANGED
@@ -44,8 +44,10 @@ module Vanadiel
|
|
44
44
|
# A.D. 2047/10/21(Mon) 15:37:30 UTC
|
45
45
|
# C.E. 2047/10/21(Win) 15:37:30
|
46
46
|
class Time
|
47
|
+
include Comparable
|
48
|
+
|
47
49
|
# vanadiel-time version
|
48
|
-
VERSION = "0.
|
50
|
+
VERSION = "0.2.0"
|
49
51
|
|
50
52
|
ONE_SECOND = 1000000
|
51
53
|
ONE_MINUTE = 60 * ONE_SECOND
|
@@ -170,7 +172,7 @@ module Vanadiel
|
|
170
172
|
# @param [Integer] vana_time microseconds as Vana'diel time
|
171
173
|
# @return [Integer] microseconds as the Earth time
|
172
174
|
def self.vana_to_earth(vana_time)
|
173
|
-
|
175
|
+
(((vana_time + ONE_YEAR) / VANA_TIME_SCALE) - DIFF_TIME)
|
174
176
|
end
|
175
177
|
|
176
178
|
# Converts microseconds as the Earth time to microseconds as Vana'diel time from the Epoch.
|
@@ -422,11 +424,6 @@ module Vanadiel
|
|
422
424
|
# @return [Fixnum] the hash code
|
423
425
|
def hash; @time.hash ^ self.class.hash; end
|
424
426
|
|
425
|
-
# Returns true if time and other time are the same time.
|
426
|
-
#
|
427
|
-
# @return [Boolean] true if same
|
428
|
-
def ==(other); @time == other.time; end
|
429
|
-
|
430
427
|
# Returns true if time and other time are both Vanadiel::Time objects with the same time.
|
431
428
|
#
|
432
429
|
# @return [Boolean] true if same
|
@@ -0,0 +1,95 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
require 'spec_helper'
|
4
|
+
require 'vanadiel/time'
|
5
|
+
|
6
|
+
describe Vanadiel::Time, ' compare methods' do
|
7
|
+
let(:earlier_time) { described_class.new(2047, 10, 20) }
|
8
|
+
let(:base_time) { described_class.new(2047, 10, 21) }
|
9
|
+
let(:later_time) { described_class.new(2047, 10, 22) }
|
10
|
+
|
11
|
+
# ==
|
12
|
+
context '== same value different object' do
|
13
|
+
let(:other) { described_class.new(2047, 10, 21) }
|
14
|
+
subject { described_class.new(2047, 10, 21) }
|
15
|
+
it { subject.==(other).should be_true }
|
16
|
+
end
|
17
|
+
context '== different values' do
|
18
|
+
let(:other) { described_class.new(2047, 10, 21) }
|
19
|
+
subject { described_class.new(2047, 10, 22) }
|
20
|
+
it { subject.==(other).should be_false }
|
21
|
+
end
|
22
|
+
|
23
|
+
# <
|
24
|
+
context '< later(greater) time' do
|
25
|
+
it { base_time.<(later_time).should be_true }
|
26
|
+
end
|
27
|
+
context '< earlier(less) time' do
|
28
|
+
it { base_time.<(earlier_time).should be_false }
|
29
|
+
end
|
30
|
+
context '< same time' do
|
31
|
+
it { base_time.<(base_time).should be_false }
|
32
|
+
end
|
33
|
+
|
34
|
+
# <=
|
35
|
+
context '<= later(greater) time' do
|
36
|
+
it { base_time.<=(later_time).should be_true }
|
37
|
+
end
|
38
|
+
context '<= earlier(less) time' do
|
39
|
+
it { base_time.<=(earlier_time).should be_false }
|
40
|
+
end
|
41
|
+
context '<= same time' do
|
42
|
+
it { base_time.<=(base_time).should be_true }
|
43
|
+
end
|
44
|
+
|
45
|
+
# >
|
46
|
+
context '> later(greater) time' do
|
47
|
+
it { base_time.>(later_time).should be_false }
|
48
|
+
end
|
49
|
+
context '> earlier(less) time' do
|
50
|
+
it { base_time.>(earlier_time).should be_true }
|
51
|
+
end
|
52
|
+
context '> same time' do
|
53
|
+
it { base_time.>(base_time).should be_false }
|
54
|
+
end
|
55
|
+
|
56
|
+
# >=
|
57
|
+
context '>= later(greater) time' do
|
58
|
+
it { base_time.>=(later_time).should be_false }
|
59
|
+
end
|
60
|
+
context '>= earlier(less) time' do
|
61
|
+
it { base_time.>=(earlier_time).should be_true }
|
62
|
+
end
|
63
|
+
context '>= same time' do
|
64
|
+
it { base_time.>=(base_time).should be_true }
|
65
|
+
end
|
66
|
+
|
67
|
+
# between?
|
68
|
+
context 'between? later(greater) time and later(greater) time' do
|
69
|
+
it { base_time.between?(later_time, later_time).should be_false }
|
70
|
+
end
|
71
|
+
context 'between? earlier(less) time and earlier(less) time' do
|
72
|
+
it { base_time.between?(earlier_time, earlier_time).should be_false }
|
73
|
+
end
|
74
|
+
context 'between? earlier(less) time and later(greater) time' do
|
75
|
+
it { base_time.between?(earlier_time, later_time).should be_true }
|
76
|
+
end
|
77
|
+
context 'between? later(greater) time and earlier(less) time' do
|
78
|
+
it { base_time.between?(later_time, earlier_time).should be_false }
|
79
|
+
end
|
80
|
+
context 'between? same time and later(greater) time' do
|
81
|
+
it { base_time.between?(base_time, later_time).should be_true }
|
82
|
+
end
|
83
|
+
context 'between? same time and earlier(less) time' do
|
84
|
+
it { base_time.between?(base_time, earlier_time).should be_false }
|
85
|
+
end
|
86
|
+
context 'between? later(greater) time and same time' do
|
87
|
+
it { base_time.between?(later_time, base_time).should be_false }
|
88
|
+
end
|
89
|
+
context 'between? earlier(less) time and same time' do
|
90
|
+
it { base_time.between?(earlier_time, base_time).should be_true }
|
91
|
+
end
|
92
|
+
context 'between? same time and same time' do
|
93
|
+
it { base_time.between?(base_time, base_time).should be_true }
|
94
|
+
end
|
95
|
+
end
|
data/spec/time_spec.rb
CHANGED
@@ -589,16 +589,6 @@ describe Vanadiel::Time, '#strftime' do
|
|
589
589
|
end
|
590
590
|
end
|
591
591
|
|
592
|
-
describe Vanadiel::Time, '#==' do
|
593
|
-
context 'with same value different object' do
|
594
|
-
let(:other) { described_class.new(2047, 10, 21) }
|
595
|
-
subject { described_class.new(2047, 10, 21) }
|
596
|
-
it 'should be true' do
|
597
|
-
should == other
|
598
|
-
end
|
599
|
-
end
|
600
|
-
end
|
601
|
-
|
602
592
|
describe Vanadiel::Time, '#eql?' do
|
603
593
|
context 'with same value different object' do
|
604
594
|
let(:other) { described_class.new(2047, 10, 21) }
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vanadiel-time
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2013-03-17 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|
@@ -111,6 +111,7 @@ files:
|
|
111
111
|
- lib/vanadiel/moon.rb
|
112
112
|
- lib/vanadiel/time.rb
|
113
113
|
- spec/spec_helper.rb
|
114
|
+
- spec/time_comparable_spec.rb
|
114
115
|
- spec/time_spec.rb
|
115
116
|
- vanadiel-time.gemspec
|
116
117
|
homepage: https://github.com/pasela/vanadiel-time-gem
|
@@ -128,7 +129,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
128
129
|
version: '0'
|
129
130
|
segments:
|
130
131
|
- 0
|
131
|
-
hash: -
|
132
|
+
hash: -943493964579600112
|
132
133
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
133
134
|
none: false
|
134
135
|
requirements:
|
@@ -137,7 +138,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
137
138
|
version: '0'
|
138
139
|
segments:
|
139
140
|
- 0
|
140
|
-
hash: -
|
141
|
+
hash: -943493964579600112
|
141
142
|
requirements: []
|
142
143
|
rubyforge_project:
|
143
144
|
rubygems_version: 1.8.23
|
@@ -146,4 +147,6 @@ specification_version: 3
|
|
146
147
|
summary: A library for dealing with Vana'diel time from Final Fantasy XI
|
147
148
|
test_files:
|
148
149
|
- spec/spec_helper.rb
|
150
|
+
- spec/time_comparable_spec.rb
|
149
151
|
- spec/time_spec.rb
|
152
|
+
has_rdoc:
|