easy_meli 0.6.7 → 0.6.9

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
  SHA256:
3
- metadata.gz: b1338e416eb7581a2e568c8621f77789507d271bd0212936fa6c8d8ee7292025
4
- data.tar.gz: fb5936ef060651fe095269d173dcda3a25ae97ae84d6bfc1386bec73d1d055d0
3
+ metadata.gz: 788f4ee68554d8dbc96fcd54e55f1ed145c0b00a5b37264745820c4776d24fc0
4
+ data.tar.gz: 2a243c647c9269b56be36b101132ccf8daccccc71d16c473b0faa415848f5579
5
5
  SHA512:
6
- metadata.gz: 7bf7cddd43e511f2b55bed1f68c5905e0362821a7c825bb1a8f5ce7d6dd3dc4892e5dc9fb1d8499a42d17cc30a3a117194ace8cc734899a8cbeef7d58ac974ed
7
- data.tar.gz: a56c55e73b131f1f36bef43a3db22f5c68c92cd611cc2f448a7e9486a2d302c5489669e8aa87f19755f7ceb3858c502ea11fca97922444321390606b2d31b55f
6
+ metadata.gz: 377ac8a3f6c7ce90bf81a35efea1ff06f9ac75fee3f18b0a4268dde0a3cce3067383d2dc3e55a02aad45528d2137c8f002e2cdac6be34dc2f99a50b1e8990d51
7
+ data.tar.gz: cfd33164fbf6811629fadf25010ad0d86ca360568a656f509522e2092c529c7f7aa9afbe4192a9822564406f99c39728447ad9d20bfb7fe8600c636046fecc1b
@@ -9,7 +9,7 @@ jobs:
9
9
  runs-on: ubuntu-latest
10
10
  strategy:
11
11
  matrix:
12
- ruby_version: [ '2.6' ]
12
+ ruby_version: [ '2.7' ]
13
13
  steps:
14
14
  - name: Checkout
15
15
  uses: actions/checkout@v2
@@ -24,7 +24,7 @@ jobs:
24
24
  key: ${{ runner.os }}-gem-use-ruby-${{ matrix.ruby_version }}-${{ hashFiles('**/Gemfile.lock') }}
25
25
  - name: Bundle install
26
26
  run: |
27
- gem install bundler:1.17.0
27
+ gem install bundler:2.2.24
28
28
  bundle config path vendor/bundle
29
29
  bundle install --jobs 4 --retry 3
30
30
  - name: Run tests
data/.gitignore CHANGED
@@ -1,3 +1,4 @@
1
+ /.idea/
1
2
  /.bundle/
2
3
  /.yardoc
3
4
  /_yardoc/
@@ -6,6 +7,5 @@
6
7
  /pkg/
7
8
  /spec/reports/
8
9
  /tmp/
9
- Gemfile.lock
10
10
  /vender
11
- .DS_Store
11
+ .DS_Store
data/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # Changelog
2
2
 
3
+ ## V 0.6.9
4
+ - Update httparty dependency from 0.18 to 0.21
5
+
6
+ ## V 0.6.8
7
+ - Fix error when the api response includes error_description instead of message key.
8
+
3
9
  ## V 0.6.7
4
10
  - Send `access_token` in the Authorization Header instead of the query params [See Official Documentation](https://developers.mercadolibre.com.ar/es_ar/desarrollo-seguro#header)
5
11
 
data/Gemfile.lock ADDED
@@ -0,0 +1,48 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ easy_meli (0.6.9)
5
+ httparty (~> 0.21)
6
+
7
+ GEM
8
+ remote: https://rubygems.org/
9
+ specs:
10
+ addressable (2.8.0)
11
+ public_suffix (>= 2.0.2, < 5.0)
12
+ coderay (1.1.2)
13
+ crack (0.4.3)
14
+ safe_yaml (~> 1.0.0)
15
+ hashdiff (1.0.1)
16
+ httparty (0.21.0)
17
+ mini_mime (>= 1.0.0)
18
+ multi_xml (>= 0.5.2)
19
+ method_source (1.0.0)
20
+ mini_mime (1.1.2)
21
+ minitest (5.14.0)
22
+ mocha (1.11.2)
23
+ multi_xml (0.6.0)
24
+ pry (0.13.1)
25
+ coderay (~> 1.1)
26
+ method_source (~> 1.0)
27
+ public_suffix (4.0.6)
28
+ rake (13.0.1)
29
+ safe_yaml (1.0.5)
30
+ webmock (3.8.3)
31
+ addressable (>= 2.3.6)
32
+ crack (>= 0.3.2)
33
+ hashdiff (>= 0.4.0, < 2.0.0)
34
+
35
+ PLATFORMS
36
+ ruby
37
+
38
+ DEPENDENCIES
39
+ bundler (~> 2.2.24)
40
+ easy_meli!
41
+ minitest (~> 5.0)
42
+ mocha
43
+ pry
44
+ rake (~> 13.0)
45
+ webmock
46
+
47
+ BUNDLED WITH
48
+ 2.2.24
data/easy_meli.gemspec CHANGED
@@ -29,9 +29,9 @@ Gem::Specification.new do |spec|
29
29
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
30
30
  spec.require_paths = ["lib"]
31
31
 
32
- spec.add_dependency "httparty", "~> 0.18"
32
+ spec.add_dependency "httparty", "~> 0.21"
33
33
 
34
- spec.add_development_dependency "bundler", "~> 1.17"
34
+ spec.add_development_dependency "bundler", "~> 2.2.24"
35
35
  spec.add_development_dependency "rake", "~> 13.0"
36
36
  spec.add_development_dependency "minitest", "~> 5.0"
37
37
  spec.add_development_dependency "pry"
@@ -1,4 +1,6 @@
1
1
  class EasyMeli::ErrorParser
2
+ ERROR_FIELDS = %w[message error error_description]
3
+
2
4
  ERROR_LIST = {
3
5
  'Error validating grant' => EasyMeli::InvalidGrantError,
4
6
  'The User ID must match the consultant\'s' => EasyMeli::ForbiddenError,
@@ -18,7 +20,11 @@ class EasyMeli::ErrorParser
18
20
  }
19
21
 
20
22
  def self.error_class(response)
21
- ERROR_LIST.find { |key, _| self.error_message_from_body(response)&.include?(key) }&.last
23
+ ERROR_FIELDS.each do |field|
24
+ error = find_in_error_list(response[field])
25
+ return error if error
26
+ end
27
+ nil
22
28
  end
23
29
 
24
30
  def self.status_error_class(response)
@@ -29,8 +35,10 @@ class EasyMeli::ErrorParser
29
35
 
30
36
  private
31
37
 
32
- def self.error_message_from_body(response)
33
- response['message'].to_s.empty? ? response['error'] : response['message']
38
+ def self.find_in_error_list(response_field)
39
+ return if response_field.to_s.empty?
40
+
41
+ ERROR_LIST.find { |key, _| response_field&.include?(key) }&.last
34
42
  end
35
43
 
36
44
  def self.server_side_error?(response)
@@ -1,3 +1,3 @@
1
1
  module EasyMeli
2
- VERSION = "0.6.7"
2
+ VERSION = "0.6.9"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: easy_meli
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.7
4
+ version: 0.6.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eric Northam
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-03-26 00:00:00.000000000 Z
11
+ date: 2023-07-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: httparty
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.18'
19
+ version: '0.21'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0.18'
26
+ version: '0.21'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '1.17'
33
+ version: 2.2.24
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '1.17'
40
+ version: 2.2.24
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rake
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -119,6 +119,7 @@ files:
119
119
  - ".gitignore"
120
120
  - CHANGELOG.md
121
121
  - Gemfile
122
+ - Gemfile.lock
122
123
  - LICENSE.txt
123
124
  - README.md
124
125
  - Rakefile
@@ -153,7 +154,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
153
154
  - !ruby/object:Gem::Version
154
155
  version: '0'
155
156
  requirements: []
156
- rubygems_version: 3.1.4
157
+ rubygems_version: 3.1.6
157
158
  signing_key:
158
159
  specification_version: 4
159
160
  summary: A simple gem to work with MercadoLibre's API