data_maps 0.3.5 → 0.3.6

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