finapps 0.21.4.pre → 0.21.5.pre
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 +4 -4
- data/.rspec +1 -0
- data/lib/finapps/utils/logging.rb +12 -6
- data/lib/finapps/version.rb +1 -1
- data/spec/spec_helper.rb +3 -1
- data/spec/utils/logging_spec.rb +32 -0
- metadata +3 -1
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: e0b9ce07fca3ac0bc03a102c38f367b75bb311bf
         | 
| 4 | 
            +
              data.tar.gz: a95cc221e07224f71a78b9c2651d7f87f613cea2
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 04b7aaa69a8684e3be3c2606e9a0067b11fe0a566d26bad9eafecf6c9cd127556b98ade4c38af344b2fb49572a2c94442d366680e7bfab3c03017f47856932c8
         | 
| 7 | 
            +
              data.tar.gz: e85ec56cc4b776e9e138a2b8f6b55a5f1969974e3366dcb18c6f50729a18c3ff4e8a2c7a7c99dada8e180cb466a771853efd46c5a6d3616bba5edc9c2e3d9776
         | 
    
        data/.rspec
    CHANGED
    
    
| @@ -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. | 
| 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
         | 
    
        data/lib/finapps/version.rb
    CHANGED
    
    
    
        data/spec/spec_helper.rb
    CHANGED
    
    | @@ -1,5 +1,7 @@ | |
| 1 | 
            -
            require ' | 
| 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 | 
            +
              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
         |