fluent-plugin-viaq_data_model 0.0.3 → 0.0.5

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: 24033376b78bd0a72e22b6ff93d00d634e8dcb30
4
- data.tar.gz: cb280696d25324e6ddc66d4091d85951f99abde6
3
+ metadata.gz: 72e1031bd59c7056bff5416a8877658c4850d7fb
4
+ data.tar.gz: e9e76b523fca3e2c3eb00800a7e00256adc90db3
5
5
  SHA512:
6
- metadata.gz: 061b1c5be09ee0e8d1b480ea845368c4e7ce0d87b3455e0a5c486b911352a3dcdc7890b56fe5d433cdb74597b9567dd9270ab59f33c58ef7b0c4f619165f6f02
7
- data.tar.gz: 5c7702852bbd5d08813175367d4343f1acc86d4695102b0b48f85a0d7f4ddbf06a8458c4b8cbc3de16452ae8d55065db06d6e5efd6b90258ad1f2995469e8f9a
6
+ metadata.gz: 9cc93bc210c483b56dd05ce87efd6b9f54dc067c619dbe90d087002f10b01729b3ca21ac7c80024ec07b88aa852609590b1f5b83479287fb0228d2bcc0438801
7
+ data.tar.gz: 6a398beddcc833b48ba06bec215b70cd415a5b8d661df7d0fa4b7d832e9ecc23f2d558623b9817055956a90874d896e55ed966f3b8a6f1040b47f7e8540084af
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
 
5
5
  Gem::Specification.new do |gem|
6
6
  gem.name = "fluent-plugin-viaq_data_model"
7
- gem.version = "0.0.3"
7
+ gem.version = "0.0.5"
8
8
  gem.authors = ["Rich Megginson"]
9
9
  gem.email = ["rmeggins@redhat.com"]
10
10
  gem.description = %q{Filter plugin to ensure data is in the ViaQ common data model}
@@ -95,7 +95,11 @@ module Fluent
95
95
  # recursively delete empty fields and empty lists/hashes from thing
96
96
  def delempty(thing)
97
97
  if thing.respond_to?(:delete_if)
98
- thing.delete_if{|k,v| v.nil? || isempty(delempty(v)) || isempty(v)}
98
+ if thing.kind_of? Hash
99
+ thing.delete_if{|k,v| v.nil? || isempty(delempty(v)) || isempty(v)}
100
+ else # assume single element iterable
101
+ thing.delete_if{|elem| elem.nil? || isempty(delempty(elem)) || isempty(elem)}
102
+ end
99
103
  end
100
104
  thing
101
105
  end
@@ -192,6 +192,26 @@ class ViaqDataModelFilterTest < Test::Unit::TestCase
192
192
  assert_equal(99, rec['h']['i']['m'])
193
193
  assert_true(rec['h']['i']['n'])
194
194
  end
195
+ test 'see if fields with a value of numeric 0 are removed or preserved' do
196
+ msg = {'a'=>{'b'=>{'c'=>{'d'=>{'e'=>'','f'=>{},'g'=>0}}}},'h'=>{'i'=>{'j'=>'','k'=>'l','m'=>0,'n'=>true}}}
197
+ rec = emit_with_tag('tag', msg)
198
+ assert_nil(rec['a']['b']['c']['d']['e'])
199
+ assert_nil(rec['a']['b']['c']['d']['f'])
200
+ assert_equal(0, rec['a']['b']['c']['d']['g'])
201
+ assert_equal('l', rec['h']['i']['k'])
202
+ assert_equal(0, rec['h']['i']['m'])
203
+ assert_true(rec['h']['i']['n'])
204
+ end
205
+ test 'see if fields with array values of numeric values are preserved' do
206
+ msg = {'a'=>{'b'=>{'c'=>{'d'=>{'e'=>'','f'=>{},'g'=>[99.999]}}}},'h'=>{'i'=>{'j'=>'','k'=>'l','m'=>[88],'n'=>true}}}
207
+ rec = emit_with_tag('tag', msg)
208
+ assert_equal([99.999], rec['a']['b']['c']['d']['g'])
209
+ assert_nil(rec['a']['b']['c']['d']['e'])
210
+ assert_nil(rec['a']['b']['c']['d']['f'])
211
+ assert_equal('l', rec['h']['i']['k'])
212
+ assert_equal([88], rec['h']['i']['m'])
213
+ assert_true(rec['h']['i']['n'])
214
+ end
195
215
 
196
216
  end
197
217
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fluent-plugin-viaq_data_model
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rich Megginson
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-02-14 00:00:00.000000000 Z
11
+ date: 2017-06-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: fluentd