data_maps 0.3.5 → 0.3.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5a16f9e0450a56553c020366bffdbed04c85531c
4
- data.tar.gz: 15288d671c8908e573f9af7cefecc887c14c22b1
3
+ metadata.gz: 86b0fe46ad688e1d70cf1310443d4333121d8934
4
+ data.tar.gz: 03c003baf58f0ba4aa61f6bfadcaa218cbaf51f0
5
5
  SHA512:
6
- metadata.gz: 32246884e5a56a4b30299ce6caf435598ba48d6b5a48778b2c2411307cef50cf590177ea98279706e880b8332f8c5138a25f6fca420f2ccd2ac1bbaa872cff2a
7
- data.tar.gz: 6611c2fdfe9e0ec8740f24cf8b28657eed598ee27011c637129e187843ace3cbe18d04742b9cacc2f34bf56f4633fcf411816eda9771992a383615aca533dfbd
6
+ metadata.gz: 2cecbe052c124ac45f482c51cdc2a5ca9927e788a1f1539ff0fa74b872c89905c2de61e5101db5ec77f8c8db58b686218710282cfa51d599f549dbc049d812db
7
+ data.tar.gz: ef171b5c1fb4933c98fb0f9d50278cf13be4401f4080828e5b4d06e9688a5b83bd438f3c2a2b5c3c3a5091ab1e8d2bdcf1e87ee438d7cce5627b6ec9e54eac34
data/data_maps.gemspec CHANGED
@@ -23,8 +23,8 @@ Gem::Specification.new do |spec|
23
23
  spec.add_runtime_dependency 'activesupport', '>= 3.2.21'
24
24
 
25
25
  spec.add_development_dependency 'bundler', '~> 1.8'
26
- spec.add_development_dependency 'rake', '~> 10.0'
27
- spec.add_development_dependency 'rspec', '~> 3.2'
28
- spec.add_development_dependency 'simplecov', '~> 0.9.2'
29
- spec.add_development_dependency 'codeclimate-test-reporter', '~> 0.4.7'
26
+ spec.add_development_dependency 'rake', '~> 10.4'
27
+ spec.add_development_dependency 'rspec', '~> 3.3'
28
+ spec.add_development_dependency 'simplecov', '~> 0.10.0'
29
+ spec.add_development_dependency 'codeclimate-test-reporter', '~> 0.4.8'
30
30
  end
@@ -95,7 +95,7 @@ module DataMaps
95
95
  # @param [mixed] data
96
96
  # @return [mixed] estimated value
97
97
  def _fetch_value_from_nested(data)
98
- from.reduce(data) { |val, f| val.fetch(f) if val.is_a?(Hash) }
98
+ from.reduce(data) { |val, f| val.fetch(f, nil) if val.is_a?(Hash) }
99
99
  end
100
100
 
101
101
  # Helper method to fetch values from a hash
@@ -1,3 +1,3 @@
1
1
  module DataMaps
2
- VERSION = '0.3.5'
2
+ VERSION = '0.3.6'
3
3
  end
@@ -51,6 +51,13 @@ describe DataMaps::Statement do
51
51
  expect(statement.execute(data)).to eq ['to', 'my value']
52
52
  end
53
53
 
54
+ it 'slices a nil value from a field chain (array of fields) where some fields missing' do
55
+ statement = DataMaps::Statement.new(%w[ from from2 ], 'to', [], [])
56
+ data = { 'from1' => { 'from2' => 'my value', 'from3' => 'my second value' }, 'from4' => 'another value' }
57
+
58
+ expect(statement.execute(data)).to eq ['to', nil]
59
+ end
60
+
54
61
  it 'slices source data from a collection of fields (hash of fields)' do
55
62
  statement = DataMaps::Statement.new({ from1: true, from2: true }, 'to', [], [])
56
63
  data = { 'from1' => 'first value', 'from2' => 'second value', 'from3' => 'third value' }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: data_maps
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.5
4
+ version: 0.3.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Axel Wahlen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-04-01 00:00:00.000000000 Z
11
+ date: 2015-11-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -44,56 +44,56 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '10.0'
47
+ version: '10.4'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '10.0'
54
+ version: '10.4'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rspec
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '3.2'
61
+ version: '3.3'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '3.2'
68
+ version: '3.3'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: simplecov
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: 0.9.2
75
+ version: 0.10.0
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: 0.9.2
82
+ version: 0.10.0
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: codeclimate-test-reporter
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: 0.4.7
89
+ version: 0.4.8
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: 0.4.7
96
+ version: 0.4.8
97
97
  description: " Maps data to another structure through a mapping "
98
98
  email:
99
99
  - axel.wahlen@mixxt.de
@@ -190,7 +190,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
190
190
  version: '0'
191
191
  requirements: []
192
192
  rubyforge_project:
193
- rubygems_version: 2.4.6
193
+ rubygems_version: 2.4.8
194
194
  signing_key:
195
195
  specification_version: 4
196
196
  summary: Maps data to another structure through a mapping