saneitized 1.4.0 → 1.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +2 -1
- data/README.md +9 -0
- data/lib/saneitized/hash.rb +5 -1
- data/lib/saneitized/version.rb +1 -1
- data/spec/saneitized/hash_spec.rb +7 -0
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8f39227b4a2052628cf273f36ebdfeaf1f2b0f68
|
4
|
+
data.tar.gz: ea5a4da25dfcaee502c4edcaafa05cb395313de5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0eb77f525b4221933868f3a3e059ded76cac2440b5e879733fca333fdf4471490de73e77cc210e01ebb2e32953c0a87eaa54112a270d30fa8576a1dde7c51ae8
|
7
|
+
data.tar.gz: b0c1914f4c95f4776c77a05612b38a7bbce74aff73312ac4240e98d220a7639db1253989c3aeee50036d6f3f62334dce6380f74dc3f91976479860746201f852
|
data/.travis.yml
CHANGED
data/README.md
CHANGED
@@ -58,6 +58,15 @@ as regular arrays except that new assigned values will also be saneitized
|
|
58
58
|
hash['fred'] = '234'
|
59
59
|
hash['fred'] #=> 234
|
60
60
|
|
61
|
+
### Saneitized Keys?
|
62
|
+
|
63
|
+
If for some reason you have a hash like `{'123' => 'foo', '124' => 'bar'}` and you want
|
64
|
+
to saneitze the keys of the hash, Sanitized allows you to do that too
|
65
|
+
|
66
|
+
hash = {'123' => 'foo', '124' => 'bar'}
|
67
|
+
sane = Sanitized.convert(hash, saneitize_keys: true)
|
68
|
+
sane #=> {123 => 'foo', 124 => 'bar'}
|
69
|
+
|
61
70
|
### Blacklists
|
62
71
|
|
63
72
|
You can make saneitized ignore certain strings by including a blacklist option
|
data/lib/saneitized/hash.rb
CHANGED
@@ -9,7 +9,7 @@ module Saneitized
|
|
9
9
|
@key_blacklist = Array(options.fetch(:key_blacklist){[]})
|
10
10
|
new_hash = {}
|
11
11
|
hash.each do |key, value|
|
12
|
-
new_hash[key] = convert_key_value(key, value)
|
12
|
+
new_hash[sane_key(key)] = convert_key_value(key, value)
|
13
13
|
end
|
14
14
|
super(new_hash)
|
15
15
|
self
|
@@ -25,6 +25,10 @@ module Saneitized
|
|
25
25
|
|
26
26
|
private
|
27
27
|
|
28
|
+
def sane_key(key)
|
29
|
+
@options[:saneitize_keys] ? Saneitized.convert(key) : key
|
30
|
+
end
|
31
|
+
|
28
32
|
def convert_key_value(key, value)
|
29
33
|
if @key_blacklist.include? key
|
30
34
|
value
|
data/lib/saneitized/version.rb
CHANGED
@@ -49,6 +49,13 @@ describe Saneitized::Hash do
|
|
49
49
|
end
|
50
50
|
end
|
51
51
|
|
52
|
+
context 'with saneitize_keys: true' do
|
53
|
+
it 'should saneitize keys' do
|
54
|
+
sane = Saneitized::Hash.new({'12345' => 'foo', '234' => '123.2'}, saneitize_keys: true)
|
55
|
+
expected = {12345 => 'foo', 234 => 123.2}
|
56
|
+
expect(sane).to eql expected
|
57
|
+
end
|
58
|
+
end
|
52
59
|
end
|
53
60
|
|
54
61
|
describe "#[]=" do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: saneitized
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Benjamin Guest
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2015-04-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: chronic
|
@@ -139,7 +139,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
139
139
|
version: '0'
|
140
140
|
requirements: []
|
141
141
|
rubyforge_project:
|
142
|
-
rubygems_version: 2.
|
142
|
+
rubygems_version: 2.4.6
|
143
143
|
signing_key:
|
144
144
|
specification_version: 4
|
145
145
|
summary: Sanely converts string values to their ruby equivalent
|