simple_etl 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -24,10 +24,10 @@ module SimpleEtl
24
24
  end
25
25
 
26
26
  def parse_integer o
27
- if o.nil? || o =~ /^\s*$/
27
+ if o.nil? || o.to_s =~ /^\s*$/
28
28
  nil
29
29
  else
30
- if o =~ /^\s*\d+\s*$/
30
+ if o.to_s =~ /^\s*\d+\s*$/
31
31
  o.to_i
32
32
  else
33
33
  raise(CastError.new "Cannot cast '#{o}' to 'integer'")
@@ -36,11 +36,11 @@ module SimpleEtl
36
36
  end
37
37
 
38
38
  def parse_float o
39
- if o.nil? || o =~ /^\s*$/
39
+ if o.nil? || o.to_s =~ /^\s*$/
40
40
  nil
41
41
  else
42
- if o =~ /^\s*\d*([\.\,]\d+)?\s*$/
43
- o.gsub(/\,/, '.').to_f
42
+ if o.to_s =~ /^\s*\d*([\.\,]\d+)?\s*$/
43
+ o.to_s.gsub(/\,/, '.').to_f
44
44
  else
45
45
  raise(CastError.new "Cannot cast '#{o}' to 'float'")
46
46
  end
@@ -1,3 +1,3 @@
1
1
  module SimpleEtl
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
@@ -16,6 +16,10 @@ module SimpleEtl
16
16
  subject.parse_integer('00048').should == 48
17
17
  end
18
18
 
19
+ it 'accepts numeric objects' do
20
+ subject.parse_integer(43).should == 43
21
+ end
22
+
19
23
  it 'automatically strips spaces' do
20
24
  subject.parse_integer(' 043 ').should == 43
21
25
  end
@@ -44,6 +48,10 @@ module SimpleEtl
44
48
  subject.parse_float('00048').should == 48.0
45
49
  end
46
50
 
51
+ it 'accepts numeric objects' do
52
+ subject.parse_integer(43).should == 43.0
53
+ end
54
+
47
55
  it 'returns a number if input has also ONE separator' do
48
56
  subject.parse_float('43.1').should == 43.1
49
57
  subject.parse_float('43,1').should == 43.1
metadata CHANGED
@@ -1,79 +1,102 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: simple_etl
3
- version: !ruby/object:Gem::Version
4
- version: 0.0.2
3
+ version: !ruby/object:Gem::Version
4
+ hash: 25
5
5
  prerelease:
6
+ segments:
7
+ - 0
8
+ - 0
9
+ - 3
10
+ version: 0.0.3
6
11
  platform: ruby
7
- authors:
12
+ authors:
8
13
  - Nicola Racco
9
14
  autorequire:
10
15
  bindir: bin
11
16
  cert_chain: []
12
- date: 2012-07-05 00:00:00.000000000Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
17
+
18
+ date: 2012-07-05 00:00:00 Z
19
+ dependencies:
20
+ - !ruby/object:Gem::Dependency
15
21
  name: rake
16
- requirement: &70352004437540 !ruby/object:Gem::Requirement
22
+ prerelease: false
23
+ requirement: &id001 !ruby/object:Gem::Requirement
17
24
  none: false
18
- requirements:
19
- - - ! '>='
20
- - !ruby/object:Gem::Version
21
- version: '0'
25
+ requirements:
26
+ - - ">="
27
+ - !ruby/object:Gem::Version
28
+ hash: 3
29
+ segments:
30
+ - 0
31
+ version: "0"
22
32
  type: :development
23
- prerelease: false
24
- version_requirements: *70352004437540
25
- - !ruby/object:Gem::Dependency
33
+ version_requirements: *id001
34
+ - !ruby/object:Gem::Dependency
26
35
  name: guard
27
- requirement: &70352004437120 !ruby/object:Gem::Requirement
36
+ prerelease: false
37
+ requirement: &id002 !ruby/object:Gem::Requirement
28
38
  none: false
29
- requirements:
30
- - - ! '>='
31
- - !ruby/object:Gem::Version
32
- version: '0'
39
+ requirements:
40
+ - - ">="
41
+ - !ruby/object:Gem::Version
42
+ hash: 3
43
+ segments:
44
+ - 0
45
+ version: "0"
33
46
  type: :development
34
- prerelease: false
35
- version_requirements: *70352004437120
36
- - !ruby/object:Gem::Dependency
47
+ version_requirements: *id002
48
+ - !ruby/object:Gem::Dependency
37
49
  name: growl
38
- requirement: &70352004436480 !ruby/object:Gem::Requirement
50
+ prerelease: false
51
+ requirement: &id003 !ruby/object:Gem::Requirement
39
52
  none: false
40
- requirements:
41
- - - ! '>='
42
- - !ruby/object:Gem::Version
43
- version: '0'
53
+ requirements:
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ hash: 3
57
+ segments:
58
+ - 0
59
+ version: "0"
44
60
  type: :development
45
- prerelease: false
46
- version_requirements: *70352004436480
47
- - !ruby/object:Gem::Dependency
61
+ version_requirements: *id003
62
+ - !ruby/object:Gem::Dependency
48
63
  name: guard-rspec
49
- requirement: &70352004435860 !ruby/object:Gem::Requirement
64
+ prerelease: false
65
+ requirement: &id004 !ruby/object:Gem::Requirement
50
66
  none: false
51
- requirements:
52
- - - ! '>='
53
- - !ruby/object:Gem::Version
54
- version: '0'
67
+ requirements:
68
+ - - ">="
69
+ - !ruby/object:Gem::Version
70
+ hash: 3
71
+ segments:
72
+ - 0
73
+ version: "0"
55
74
  type: :development
56
- prerelease: false
57
- version_requirements: *70352004435860
58
- - !ruby/object:Gem::Dependency
75
+ version_requirements: *id004
76
+ - !ruby/object:Gem::Dependency
59
77
  name: rspec
60
- requirement: &70352004432160 !ruby/object:Gem::Requirement
78
+ prerelease: false
79
+ requirement: &id005 !ruby/object:Gem::Requirement
61
80
  none: false
62
- requirements:
63
- - - ! '>='
64
- - !ruby/object:Gem::Version
65
- version: '0'
81
+ requirements:
82
+ - - ">="
83
+ - !ruby/object:Gem::Version
84
+ hash: 3
85
+ segments:
86
+ - 0
87
+ version: "0"
66
88
  type: :development
67
- prerelease: false
68
- version_requirements: *70352004432160
69
- description: An easy-to-use toolkit to help you with ETL (Extract Transform Load)
70
- operations. Simple ETL 'would be' (:D) framework-agnostic and easy to use.
71
- email:
89
+ version_requirements: *id005
90
+ description: An easy-to-use toolkit to help you with ETL (Extract Transform Load) operations. Simple ETL 'would be' (:D) framework-agnostic and easy to use.
91
+ email:
72
92
  - nicola@nicolaracco.com
73
93
  executables: []
94
+
74
95
  extensions: []
96
+
75
97
  extra_rdoc_files: []
76
- files:
98
+
99
+ files:
77
100
  - .gitignore
78
101
  - .rspec
79
102
  - Gemfile
@@ -105,35 +128,38 @@ files:
105
128
  - spec/spec_helper.rb
106
129
  homepage: https://github.com/nicolaracco/simple_etl
107
130
  licenses: []
131
+
108
132
  post_install_message:
109
133
  rdoc_options: []
110
- require_paths:
134
+
135
+ require_paths:
111
136
  - lib
112
- required_ruby_version: !ruby/object:Gem::Requirement
137
+ required_ruby_version: !ruby/object:Gem::Requirement
113
138
  none: false
114
- requirements:
115
- - - ! '>='
116
- - !ruby/object:Gem::Version
117
- version: '0'
118
- segments:
139
+ requirements:
140
+ - - ">="
141
+ - !ruby/object:Gem::Version
142
+ hash: 3
143
+ segments:
119
144
  - 0
120
- hash: 3236384581747162330
121
- required_rubygems_version: !ruby/object:Gem::Requirement
145
+ version: "0"
146
+ required_rubygems_version: !ruby/object:Gem::Requirement
122
147
  none: false
123
- requirements:
124
- - - ! '>='
125
- - !ruby/object:Gem::Version
126
- version: '0'
127
- segments:
148
+ requirements:
149
+ - - ">="
150
+ - !ruby/object:Gem::Version
151
+ hash: 3
152
+ segments:
128
153
  - 0
129
- hash: 3236384581747162330
154
+ version: "0"
130
155
  requirements: []
156
+
131
157
  rubyforge_project: simple_etl
132
- rubygems_version: 1.8.10
158
+ rubygems_version: 1.8.23
133
159
  signing_key:
134
160
  specification_version: 3
135
161
  summary: An easy-to-use toolkit to help you with ETL (Extract Transform Load) operations
136
- test_files:
162
+ test_files:
137
163
  - spec/fixtures/sample.stl
138
164
  - spec/lib/simple_etl/source/base_context_spec.rb
139
165
  - spec/lib/simple_etl/source/base_spec.rb