simple_etl 0.0.2 → 0.0.3

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.
@@ -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