unidata 0.0.11 → 0.0.12

Sign up to get free protection for your applications and to get access to all the features.
@@ -10,11 +10,19 @@ module Unidata
10
10
  end
11
11
 
12
12
  def to_unidata(value)
13
- (value - PICK_DAY_ZERO).to_i
13
+ if value == nil
14
+ ''
15
+ else
16
+ (value - PICK_DAY_ZERO).to_i
17
+ end
14
18
  end
15
19
 
16
20
  def from_unidata(value)
17
- PICK_DAY_ZERO + value.to_i
21
+ if value == ''
22
+ nil
23
+ else
24
+ PICK_DAY_ZERO + value.to_i
25
+ end
18
26
  end
19
27
  end
20
28
  end
@@ -1,3 +1,3 @@
1
1
  module Unidata
2
- VERSION = "0.0.11"
2
+ VERSION = "0.0.12"
3
3
  end
@@ -179,10 +179,15 @@ describe Unidata::Field do
179
179
 
180
180
  describe '#to_unidata' do
181
181
  context 'when type is Date' do
182
+ let(:field) { subject.new(1, :created_on, Date) }
183
+
182
184
  it 'converts value to pick time' do
183
- field = subject.new(1, :created_on, Date)
184
185
  field.to_unidata(Date.parse('2012-04-03')).should == 16165
185
186
  end
187
+
188
+ it 'converts nil to ""' do
189
+ field.to_unidata(nil).should == ''
190
+ end
186
191
  end
187
192
 
188
193
  context 'when type is String' do
@@ -216,9 +221,15 @@ describe Unidata::Field do
216
221
 
217
222
  describe '#from_unidata' do
218
223
  context 'when type is Date' do
224
+ let(:field) { subject.new(1, :created_on, Date) }
225
+
219
226
  it 'converts value from pick time' do
220
- field = subject.new(1, :created_on, Date)
221
- field.from_unidata(16165).should == Date.parse('2012-04-03')
227
+ field.from_unidata('16165').should == Date.parse('2012-04-03')
228
+ end
229
+
230
+ it 'converts empty string to nil' do
231
+ field.from_unidata('').should be_nil
232
+
222
233
  end
223
234
  end
224
235
 
@@ -232,14 +243,14 @@ describe Unidata::Field do
232
243
  context 'when type is Float' do
233
244
  it 'converts value to Float and divides by 100' do
234
245
  field = subject.new(1, :price, Float)
235
- field.from_unidata(12332).should == 123.32
246
+ field.from_unidata('12332').should == 123.32
236
247
  end
237
248
  end
238
249
 
239
250
  context 'when type is BigDecimal' do
240
251
  it 'converts value to BigDecimal and divides by 100' do
241
252
  field = subject.new(1, :price, BigDecimal)
242
- field.from_unidata(12332).should == BigDecimal.new('123.32')
253
+ field.from_unidata('12332').should == BigDecimal.new('123.32')
243
254
  end
244
255
  end
245
256
 
metadata CHANGED
@@ -2,79 +2,90 @@
2
2
  name: unidata
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.0.11
5
+ version: 0.0.12
6
6
  platform: ruby
7
7
  authors:
8
8
  - Jeremy Israelsen
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-08-07 00:00:00.000000000Z
12
+ date: 2014-01-28 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: jruby-openssl
16
- version_requirements: &4664 !ruby/object:Gem::Requirement
16
+ version_requirements: &4748 !ruby/object:Gem::Requirement
17
17
  requirements:
18
18
  - - ! '>='
19
19
  - !ruby/object:Gem::Version
20
20
  version: '0'
21
21
  none: false
22
- requirement: *4664
22
+ requirement: *4748
23
23
  prerelease: false
24
24
  type: :development
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: json_pure
27
- version_requirements: &4682 !ruby/object:Gem::Requirement
27
+ version_requirements: &4766 !ruby/object:Gem::Requirement
28
28
  requirements:
29
29
  - - ! '>='
30
30
  - !ruby/object:Gem::Version
31
31
  version: '0'
32
32
  none: false
33
- requirement: *4682
33
+ requirement: *4766
34
34
  prerelease: false
35
35
  type: :development
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rake
38
- version_requirements: &4698 !ruby/object:Gem::Requirement
38
+ version_requirements: &4782 !ruby/object:Gem::Requirement
39
39
  requirements:
40
40
  - - ! '>='
41
41
  - !ruby/object:Gem::Version
42
42
  version: '0'
43
43
  none: false
44
- requirement: *4698
44
+ requirement: *4782
45
45
  prerelease: false
46
46
  type: :development
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rspec
49
- version_requirements: &4714 !ruby/object:Gem::Requirement
49
+ version_requirements: &4798 !ruby/object:Gem::Requirement
50
50
  requirements:
51
51
  - - ~>
52
52
  - !ruby/object:Gem::Version
53
53
  version: '2.10'
54
54
  none: false
55
- requirement: *4714
55
+ requirement: *4798
56
56
  prerelease: false
57
57
  type: :development
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: simplecov
60
- version_requirements: &4730 !ruby/object:Gem::Requirement
60
+ version_requirements: &4814 !ruby/object:Gem::Requirement
61
61
  requirements:
62
62
  - - ~>
63
63
  - !ruby/object:Gem::Version
64
64
  version: '0.7'
65
65
  none: false
66
- requirement: *4730
66
+ requirement: *4814
67
67
  prerelease: false
68
68
  type: :development
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: coveralls
71
- version_requirements: &4746 !ruby/object:Gem::Requirement
71
+ version_requirements: &4830 !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - ~>
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0.6'
76
76
  none: false
77
- requirement: *4746
77
+ requirement: *4830
78
+ prerelease: false
79
+ type: :development
80
+ - !ruby/object:Gem::Dependency
81
+ name: mime-types
82
+ version_requirements: &4846 !ruby/object:Gem::Requirement
83
+ requirements:
84
+ - - ~>
85
+ - !ruby/object:Gem::Version
86
+ version: '1.23'
87
+ none: false
88
+ requirement: *4846
78
89
  prerelease: false
79
90
  type: :development
80
91
  description: A simple ORM for Rocket's UniData database