finapps 0.21.4.pre → 0.21.5.pre

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: f72d59941b3f324b751f393548af22a421d546c1
4
- data.tar.gz: 2980215ae44453154d5c360bd781e672999bc8a8
3
+ metadata.gz: e0b9ce07fca3ac0bc03a102c38f367b75bb311bf
4
+ data.tar.gz: a95cc221e07224f71a78b9c2651d7f87f613cea2
5
5
  SHA512:
6
- metadata.gz: b6818c7caf9cd4b0018919523139fad1c6c82719c5e3c6ba5650cbc3fc36ce5ed1447112f4db8278c49263dcf5fd82132d64d8972d266c7d723517fa58381fe4
7
- data.tar.gz: 7d611924d13c99794ab34113af68a56f55fed2dab9d54c56869bbe955bd772b298dd3454693ec0b4e712a6a6f11fcd35bf2632975f56b94e8e939cd1da31a455
6
+ metadata.gz: 04b7aaa69a8684e3be3c2606e9a0067b11fe0a566d26bad9eafecf6c9cd127556b98ade4c38af344b2fb49572a2c94442d366680e7bfab3c03017f47856932c8
7
+ data.tar.gz: e85ec56cc4b776e9e138a2b8f6b55a5f1969974e3366dcb18c6f50729a18c3ff4e8a2c7a7c99dada8e180cb466a771853efd46c5a6d3616bba5edc9c2e3d9776
data/.rspec CHANGED
@@ -1,3 +1,4 @@
1
1
  --color
2
+ --format documentation
2
3
  --warnings
3
4
  --require spec_helper
@@ -55,7 +55,17 @@ module FinApps
55
55
  def skip_sensitive_data(hash)
56
56
  if hash.is_a? Hash
57
57
  filtered_hash = hash.clone
58
- filtered_hash.update(filtered_hash) { |key, v1| filter_sensitive_values(key, v1) }
58
+ filtered_hash.each do |key, value|
59
+ if PROTECTED_KEYS.include? key.to_s.downcase
60
+ filtered_hash[key] = '[REDACTED]'
61
+ elsif value.is_a?(Hash)
62
+ filtered_hash[key] = self.skip_sensitive_data(value)
63
+ elsif value.is_a?(Array)
64
+ filtered_hash[key] = value.map { |v| v.is_a?(Hash) ? self.skip_sensitive_data(v) : v }
65
+ end
66
+ end
67
+
68
+ filtered_hash
59
69
  else
60
70
  hash
61
71
  end
@@ -66,10 +76,6 @@ module FinApps
66
76
  time.strftime('%Y-%m-%dT%H:%M:%S.') << '%06d ' % time.usec
67
77
  end
68
78
 
69
- def filter_sensitive_values(key, v1)
70
- (PROTECTED_KEYS.include? key.to_s.downcase) ? '[REDACTED]' : v1
71
- end
72
-
73
79
  def msg2str(msg)
74
80
  case msg
75
81
  when ::String
@@ -86,4 +92,4 @@ module FinApps
86
92
  end
87
93
 
88
94
  end
89
- end
95
+ end
@@ -1,3 +1,3 @@
1
1
  module FinApps
2
- VERSION = '0.21.4.pre'
2
+ VERSION = '0.21.5.pre'
3
3
  end
data/spec/spec_helper.rb CHANGED
@@ -1,5 +1,7 @@
1
- require 'finapps'
1
+ require 'bundler/setup'
2
+ Bundler.setup
2
3
 
4
+ require 'finapps'
3
5
  # This file was generated by the `rspec --init` command. Conventionally, all
4
6
  # specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
5
7
  # The generated `.rspec` file contains `--require spec_helper` which will cause this
@@ -0,0 +1,32 @@
1
+ require 'spec_helper'
2
+
3
+ RSpec.describe FinApps::Logging do
4
+
5
+ let(:dummy_class) { Class.new { extend FinApps::Logging } }
6
+ let(:simple_hash) { {:login => 'login', :password => 'secret'} }
7
+ let(:deep_hash) { {:parameters => {:login => 'login', :password => 'secret'}} }
8
+ let(:array_of_hashes) { {:parameters => [{:login => 'login', :password => 'secret'},
9
+ {:login => 'login', :password => 'secret'}]} }
10
+
11
+ it 'should redact protected keys on a simple Hash' do
12
+ redacted = dummy_class.skip_sensitive_data simple_hash
13
+ expect(redacted[:password]).to eq('[REDACTED]')
14
+ end
15
+
16
+ it 'should redact protected keys on a deep Hash' do
17
+ redacted = dummy_class.skip_sensitive_data deep_hash
18
+ expect(redacted[:parameters][:password]).to eq('[REDACTED]')
19
+ end
20
+
21
+ it 'should redact protected keys on an array of Hashes' do
22
+ redacted = dummy_class.skip_sensitive_data array_of_hashes
23
+ expect(redacted[:parameters][0][:password]).to eq('[REDACTED]')
24
+ expect(redacted[:parameters][1][:password]).to eq('[REDACTED]')
25
+ end
26
+ end
27
+
28
+
29
+ =begin
30
+ params : {:parameters => {"LOGIN1" => "MoneyMatch.site16441.1", "PASSWORD1" => "site16441.1"}}
31
+ params : {:email => "erich@example.com", :password => "[REDACTED]"}
32
+ =end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: finapps
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.21.4.pre
4
+ version: 0.21.5.pre
5
5
  platform: ruby
6
6
  authors:
7
7
  - Erich Quintero
@@ -225,6 +225,7 @@ files:
225
225
  - lib/finapps/version.rb
226
226
  - spec/rest/client_spec.rb
227
227
  - spec/spec_helper.rb
228
+ - spec/utils/logging_spec.rb
228
229
  homepage: http://github.com/finapps/finapps-ruby
229
230
  licenses:
230
231
  - MIT
@@ -258,3 +259,4 @@ summary: FinApps REST API ruby client.
258
259
  test_files:
259
260
  - spec/rest/client_spec.rb
260
261
  - spec/spec_helper.rb
262
+ - spec/utils/logging_spec.rb