ruby-experian 0.0.4 → 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
  SHA256:
3
- metadata.gz: 4dd77d03192044c638a48d9d516e7d61ab54f731378414487a538ef37010b3b6
4
- data.tar.gz: 50d305fef65041c0a01c06da584de9e4f48b77cea65ba4e83aceb8e096c1bbfe
3
+ metadata.gz: 4891efd33a954f14ff0cd9e39e80509c846630be39443da7f95cc3cdb3c1e763
4
+ data.tar.gz: 424af4f3361dc0fd5fe5d5900bad4e9360d3b5a8767f5c9f8788ecc168913414
5
5
  SHA512:
6
- metadata.gz: 864a08d90d6b3f35d5a8229092cee21cced8fd77bc2af0a9d92bf32c9f35e8fb78a9f8e2b924b4215f8456d842c91ce2d4386538d7f51e6b234df0ff01010129
7
- data.tar.gz: f7ff905cc8c52d026822ae9807b4f010f29f5a9b1785a6daaa6c657f4175e1d9c46e42638f0f3b96148f2eb3b377dc4c7cfc65d4b63e56665d953bfea90bb8c3
6
+ metadata.gz: d8303d3e9884844a536c50e9d2e1d78797b20ece94300ff011250365dbd60a57adf5079bc851e180132d79a78134ae79823950c87c21fef07aef7c451d187bd0
7
+ data.tar.gz: c13f8f2befa334101ef230b9473a7a5a2692a82ae697768fd3a141362e2ee86b5748c537f9fb00720a45136073bd146e5d6cca3fe21ece0ede5a0e25fe09003f
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- ruby-experian (0.0.4)
4
+ ruby-experian (0.0.5)
5
5
  faraday (>= 1)
6
6
  faraday_middleware (>= 1)
7
7
  multi_xml (>= 0.6.0)
data/lib/experian/http.rb CHANGED
@@ -1,72 +1,10 @@
1
1
  require "base64"
2
2
  require "sha3"
3
3
 
4
+ Faraday::FlatParamsEncoder.sort_params = false
5
+
4
6
  module Experian
5
7
  module HTTP
6
- module FlatParamsEncoder
7
- class << self
8
- extend Forwardable
9
- def_delegators :'Faraday::Utils', :escape, :unescape
10
- end
11
-
12
- def self.encode(params)
13
- return nil if params == nil
14
-
15
- if !params.is_a?(Array)
16
- if !params.respond_to?(:to_hash)
17
- raise TypeError,
18
- "Can't convert #{params.class} into Hash."
19
- end
20
- params = params.to_hash
21
- params = params.map do |key, value|
22
- key = key.to_s if key.kind_of?(Symbol)
23
- [key, value]
24
- end
25
- end
26
-
27
- # The params have form [['key1', 'value1'], ['key2', 'value2']].
28
- buffer = ''
29
- params.each do |key, value|
30
- encoded_key = escape(key)
31
- value = value.to_s if value == true || value == false
32
- if value == nil
33
- buffer << "#{encoded_key}&"
34
- elsif value.kind_of?(Array)
35
- value.each do |sub_value|
36
- encoded_value = escape(sub_value)
37
- buffer << "#{encoded_key}=#{encoded_value}&"
38
- end
39
- else
40
- encoded_value = escape(value)
41
- buffer << "#{encoded_key}=#{encoded_value}&"
42
- end
43
- end
44
- return buffer.chop
45
- end
46
-
47
- def self.decode(query)
48
- empty_accumulator = {}
49
- return nil if query == nil
50
- split_query = (query.split('&').map do |pair|
51
- pair.split('=', 2) if pair && !pair.empty?
52
- end).compact
53
- return split_query.inject(empty_accumulator.dup) do |accu, pair|
54
- pair[0] = unescape(pair[0])
55
- pair[1] = true if pair[1].nil?
56
- if pair[1].respond_to?(:to_str)
57
- pair[1] = unescape(pair[1].to_str.gsub(/\+/, " "))
58
- end
59
- if accu[pair[0]].kind_of?(Array)
60
- accu[pair[0]] << pair[1]
61
- elsif accu[pair[0]]
62
- accu[pair[0]] = [accu[pair[0]], pair[1]]
63
- else
64
- accu[pair[0]] = pair[1]
65
- end
66
- accu
67
- end
68
- end
69
- end
70
8
 
71
9
  def get(path:, format:, **query)
72
10
  tip_formato = {
@@ -93,8 +31,7 @@ module Experian
93
31
  def conn
94
32
  connection = Faraday.new do |f|
95
33
  f.options[:timeout] = request_timeout
96
- f.options[:params_encoder] = FlatParamsEncoder
97
- f.use MiddlewareErrors
34
+ f.options[:params_encoder] = Faraday::FlatParamsEncoder
98
35
  f.response :raise_error
99
36
  end
100
37
 
@@ -1,3 +1,3 @@
1
1
  module Experian
2
- VERSION = "0.0.4".freeze
2
+ VERSION = "0.0.5".freeze
3
3
  end
data/lib/experian.rb CHANGED
@@ -11,22 +11,6 @@ module Experian
11
11
  class AuthenticationError < Error; end
12
12
  class ConfigurationError < Error; end
13
13
 
14
- class MiddlewareErrors < Faraday::Middleware
15
- def call(env)
16
- @app.call(env)
17
- rescue Faraday::Error => e
18
- raise e unless e.response.is_a?(Hash)
19
-
20
- logger = Logger.new($stdout)
21
- logger.formatter = proc do |_severity, _datetime, _progname, msg|
22
- "\033[31mExperian HTTP Error (spotted in ruby-experian #{VERSION}): #{msg}\n\033[0m"
23
- end
24
- logger.error(e.response[:body])
25
-
26
- raise e
27
- end
28
- end
29
-
30
14
  class Configuration
31
15
  attr_writer :user_code, :password, :version, :request_timeout, :base_uri, :extra_headers
32
16
  attr_reader :base_uri, :request_timeout, :version, :extra_headers
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby-experian
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Martin Mochetti
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-12-26 00:00:00.000000000 Z
11
+ date: 2024-03-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday