mercadopago-sdk 2.2.0 → 2.3.0
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/.github/workflows/{ruby.yml → ci.yml} +11 -5
- data/.github/workflows/release.yml +45 -0
- data/.ruby-version +1 -1
- data/Gemfile +1 -1
- data/Gemfile.lock +29 -23
- data/README.md +11 -5
- data/Rakefile +1 -0
- data/lib/mercadopago/config/config.rb +2 -2
- data/mercadopago.gemspec +2 -2
- data/tests/test_card.rb +1 -1
- data/tests/test_card_token.rb +2 -2
- data/tests/test_customer.rb +4 -3
- data/tests/test_identification_type.rb +1 -1
- data/tests/test_merchant_order.rb +37 -5
- data/tests/test_payment.rb +140 -6
- data/tests/test_payment_methods.rb +1 -1
- data/tests/test_preapproval.rb +4 -15
- data/tests/test_preference.rb +32 -8
- data/tests/test_refund.rb +16 -60
- data/tests/test_refund_with_custom_headers.rb +16 -60
- data/tests/test_user.rb +1 -1
- data/tests/tests.rb +4 -2
- metadata +6 -5
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 94e71f8ec0cdd17293a60086ba6825b04744cd6b567773b289589bbf1994474d
|
|
4
|
+
data.tar.gz: f64e7346d4b9ae69c61abdd6230227ffa15c87cd2b01995b0456bed34d1de209
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: c50127ebb2de9da062100c3b744239de83473f2c1f1ca8ec19c09a70bc46c7a9eebadc75dbb58816a306e474ff9a53880191eed17cba4b0cfdf07963a2437b38
|
|
7
|
+
data.tar.gz: 84501cb05a223166d6afb6fa7ac3017f67d91cdc2ceb9fcc189a4027b0c7b926858fb1c587d8ed8d41fa3f72cfef3393ac09077dd5c74b608844f0818d170dd7
|
|
@@ -10,7 +10,7 @@ name: Ruby
|
|
|
10
10
|
on:
|
|
11
11
|
push:
|
|
12
12
|
branches: [ master ]
|
|
13
|
-
|
|
13
|
+
pull_request_target:
|
|
14
14
|
branches: [ master ]
|
|
15
15
|
|
|
16
16
|
jobs:
|
|
@@ -19,17 +19,23 @@ jobs:
|
|
|
19
19
|
runs-on: ubuntu-latest
|
|
20
20
|
|
|
21
21
|
steps:
|
|
22
|
-
-
|
|
22
|
+
- name: Checkout code
|
|
23
|
+
uses: actions/checkout@v3
|
|
24
|
+
with:
|
|
25
|
+
ref: ${{ github.event.pull_request.head.ref }}
|
|
26
|
+
repository: ${{ github.event.pull_request.head.repo.full_name }}
|
|
27
|
+
|
|
23
28
|
- name: Set up Ruby
|
|
24
29
|
# To automatically get bug fixes and new Ruby versions for ruby/setup-ruby,
|
|
25
30
|
# change this to (see https://github.com/ruby/setup-ruby#versioning):
|
|
26
|
-
|
|
27
|
-
uses: ruby/setup-ruby@21351ecc0a7c196081abca5dc55b08f085efe09a
|
|
31
|
+
uses: ruby/setup-ruby@v1
|
|
28
32
|
with:
|
|
29
|
-
ruby-version:
|
|
33
|
+
ruby-version: 3.1.6
|
|
30
34
|
- name: Install dependencies
|
|
31
35
|
run: bundle install
|
|
32
36
|
- name: Rubocop
|
|
33
37
|
run: rubocop lib
|
|
34
38
|
- name: Run tests
|
|
35
39
|
run: bundle exec rake
|
|
40
|
+
env:
|
|
41
|
+
ACCESS_TOKEN: ${{ secrets.ACCESS_TOKEN_V2 }}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
name: Release SDK - Publish Gem
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
release:
|
|
5
|
+
types: [created]
|
|
6
|
+
|
|
7
|
+
jobs:
|
|
8
|
+
release:
|
|
9
|
+
runs-on: ubuntu-latest
|
|
10
|
+
|
|
11
|
+
permissions:
|
|
12
|
+
contents: write
|
|
13
|
+
id-token: write
|
|
14
|
+
|
|
15
|
+
steps:
|
|
16
|
+
- name: Checkout code
|
|
17
|
+
uses: actions/checkout@v4
|
|
18
|
+
|
|
19
|
+
- name: Setup Ruby
|
|
20
|
+
uses: ruby/setup-ruby@v1
|
|
21
|
+
with:
|
|
22
|
+
bundler-cache: true
|
|
23
|
+
|
|
24
|
+
- name: Install dependencies
|
|
25
|
+
run: bundle install
|
|
26
|
+
|
|
27
|
+
- name: Validate gemspec
|
|
28
|
+
run: gem build mercadopago.gemspec
|
|
29
|
+
|
|
30
|
+
- name: Build gem
|
|
31
|
+
shell: bash
|
|
32
|
+
run: gem build *.gemspec
|
|
33
|
+
|
|
34
|
+
- name: Configure RubyGems Credentials
|
|
35
|
+
uses: rubygems/configure-rubygems-credentials@main
|
|
36
|
+
with:
|
|
37
|
+
role-to-assume: ${{ secrets.RUBYGEMS_API_KEY }}
|
|
38
|
+
|
|
39
|
+
- name: Publish gem to rubygems.org
|
|
40
|
+
shell: bash
|
|
41
|
+
run: gem push *.gem
|
|
42
|
+
|
|
43
|
+
- name: Wait for release to propagate
|
|
44
|
+
run: |
|
|
45
|
+
gem install rubygems-await
|
data/.ruby-version
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
3.1.6
|
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
mercadopago-sdk (2.
|
|
4
|
+
mercadopago-sdk (2.3.0)
|
|
5
5
|
json (~> 2.5)
|
|
6
6
|
rest-client (~> 2.1)
|
|
7
7
|
|
|
@@ -10,46 +10,52 @@ GEM
|
|
|
10
10
|
specs:
|
|
11
11
|
ast (2.4.2)
|
|
12
12
|
coderay (1.1.3)
|
|
13
|
-
domain_name (0.
|
|
14
|
-
unf (>= 0.0.5, < 1.0.0)
|
|
13
|
+
domain_name (0.6.20240107)
|
|
15
14
|
http-accept (1.7.0)
|
|
16
|
-
http-cookie (1.0.
|
|
15
|
+
http-cookie (1.0.8)
|
|
17
16
|
domain_name (~> 0.5)
|
|
18
|
-
|
|
19
|
-
|
|
17
|
+
json (2.9.1)
|
|
18
|
+
language_server-protocol (3.17.0.3)
|
|
19
|
+
logger (1.6.5)
|
|
20
20
|
method_source (1.0.0)
|
|
21
|
-
mime-types (3.
|
|
21
|
+
mime-types (3.6.0)
|
|
22
|
+
logger
|
|
22
23
|
mime-types-data (~> 3.2015)
|
|
23
|
-
mime-types-data (3.
|
|
24
|
+
mime-types-data (3.2025.0107)
|
|
24
25
|
minitest (5.14.4)
|
|
25
26
|
netrc (0.11.0)
|
|
26
|
-
parallel (1.
|
|
27
|
-
parser (3.
|
|
27
|
+
parallel (1.26.3)
|
|
28
|
+
parser (3.3.6.0)
|
|
28
29
|
ast (~> 2.4.1)
|
|
30
|
+
racc
|
|
29
31
|
pry (0.14.1)
|
|
30
32
|
coderay (~> 1.1)
|
|
31
33
|
method_source (~> 1.0)
|
|
32
|
-
|
|
34
|
+
racc (1.8.1)
|
|
35
|
+
rainbow (3.1.1)
|
|
33
36
|
rake (13.0.3)
|
|
37
|
+
regexp_parser (2.10.0)
|
|
34
38
|
rest-client (2.1.0)
|
|
35
39
|
http-accept (>= 1.7.0, < 2.0)
|
|
36
40
|
http-cookie (>= 1.0.2, < 2.0)
|
|
37
41
|
mime-types (>= 1.16, < 4.0)
|
|
38
42
|
netrc (~> 0.8)
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
43
|
+
rubocop (1.70.0)
|
|
44
|
+
json (~> 2.3)
|
|
45
|
+
language_server-protocol (>= 3.17.0)
|
|
42
46
|
parallel (~> 1.10)
|
|
43
|
-
parser (>=
|
|
47
|
+
parser (>= 3.3.0.2)
|
|
44
48
|
rainbow (>= 2.2.2, < 4.0)
|
|
45
|
-
|
|
49
|
+
regexp_parser (>= 2.9.3, < 3.0)
|
|
50
|
+
rubocop-ast (>= 1.36.2, < 2.0)
|
|
46
51
|
ruby-progressbar (~> 1.7)
|
|
47
|
-
unicode-display_width (>=
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
52
|
+
unicode-display_width (>= 2.4.0, < 4.0)
|
|
53
|
+
rubocop-ast (1.37.0)
|
|
54
|
+
parser (>= 3.3.1.0)
|
|
55
|
+
ruby-progressbar (1.13.0)
|
|
56
|
+
unicode-display_width (3.1.4)
|
|
57
|
+
unicode-emoji (~> 4.0, >= 4.0.4)
|
|
58
|
+
unicode-emoji (4.0.4)
|
|
53
59
|
|
|
54
60
|
PLATFORMS
|
|
55
61
|
ruby
|
|
@@ -59,7 +65,7 @@ DEPENDENCIES
|
|
|
59
65
|
minitest
|
|
60
66
|
pry (~> 0.14)
|
|
61
67
|
rake
|
|
62
|
-
rubocop
|
|
68
|
+
rubocop (~> 1.70)
|
|
63
69
|
|
|
64
70
|
BUNDLED WITH
|
|
65
71
|
2.2.22
|
data/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
[](https://rubygems.org/gems/mercadopago-sdk)
|
|
4
4
|
[](https://rubygems.org/gems/mercadopago-sdk)
|
|
5
|
-
|
|
5
|
+

|
|
6
6
|
|
|
7
7
|
This library provides developers with a simple set of bindings to help you integrate Mercado Pago API to a website and start receiving payments.
|
|
8
8
|
|
|
@@ -18,7 +18,7 @@ Run ```gem install mercadopago-sdk```
|
|
|
18
18
|
|
|
19
19
|
First time using Mercado Pago? Create your [Mercado Pago account](https://www.mercadopago.com).
|
|
20
20
|
|
|
21
|
-
Copy your `Access Token` in the [credentials panel](https://www.mercadopago.com/developers/panel/
|
|
21
|
+
Copy your `Access Token` in the [credentials panel](https://www.mercadopago.com/developers/panel/app) and replace the text `YOUR_ACCESS_TOKEN` with it.
|
|
22
22
|
|
|
23
23
|
### Simple usage
|
|
24
24
|
|
|
@@ -29,6 +29,12 @@ require 'mercadopago'
|
|
|
29
29
|
|
|
30
30
|
sdk = Mercadopago::SDK.new('YOUR_ACCESS_TOKEN')
|
|
31
31
|
|
|
32
|
+
custom_headers = {
|
|
33
|
+
'x-idempotency-key': '<SOME_UNIQUE_VALUE>'
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
custom_request_options = Mercadopago::RequestOptions.new(custom_headers: custom_headers)
|
|
37
|
+
|
|
32
38
|
payment_data = {
|
|
33
39
|
transaction_amount: 100,
|
|
34
40
|
token: 'CARD_TOKEN',
|
|
@@ -39,7 +45,7 @@ payment_data = {
|
|
|
39
45
|
email: 'test_user_123456@testuser.com'
|
|
40
46
|
}
|
|
41
47
|
}
|
|
42
|
-
result = sdk.payment.create(payment_data)
|
|
48
|
+
result = sdk.payment.create(payment_data, custom_request_options)
|
|
43
49
|
payment = result[:response]
|
|
44
50
|
|
|
45
51
|
puts payment
|
|
@@ -62,10 +68,10 @@ payment = result[:response]
|
|
|
62
68
|
## 📚 Documentation
|
|
63
69
|
|
|
64
70
|
Visit our Dev Site for further information regarding:
|
|
65
|
-
- [
|
|
71
|
+
- [Developer Docs](https://www.mercadopago.com/developers/en/docs)
|
|
72
|
+
- [Checkout Bricks](https://www.mercadopago.com/developers/en/docs/checkout-bricks/landing)
|
|
66
73
|
- [Checkout Pro](https://www.mercadopago.com/developers/en/guides/online-payments/checkout-pro/introduction)
|
|
67
74
|
- [Checkout API](https://www.mercadopago.com/developers/en/guides/online-payments/checkout-api/introduction)
|
|
68
|
-
- [Web Tokenize Checkout](https://www.mercadopago.com/developers/en/guides/online-payments/web-tokenize-checkout/introduction)
|
|
69
75
|
|
|
70
76
|
Check our official code reference to explore all available functionalities.
|
|
71
77
|
|
data/Rakefile
CHANGED
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
|
|
4
4
|
module Mercadopago
|
|
5
5
|
class Config
|
|
6
|
-
@@VERSION = '2.
|
|
6
|
+
@@VERSION = '2.3.0'
|
|
7
7
|
@@USER_AGENT = "MercadoPago Ruby SDK v#{@@VERSION}"
|
|
8
8
|
@@PRODUCT_ID = 'bc32a7vtrpp001u8nhjg'
|
|
9
|
-
@@TRACKING_ID = "
|
|
9
|
+
@@TRACKING_ID = "platform:#{RUBY_VERSION},type:SDK#{@@VERSION},so;"
|
|
10
10
|
@@API_BASE_URL = 'https://api.mercadopago.com'
|
|
11
11
|
@@MIME_JSON = 'application/json'
|
|
12
12
|
@@MIME_FORM = 'application/x-www-form-urlencoded'
|
data/mercadopago.gemspec
CHANGED
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
Gem::Specification.new do |gem|
|
|
4
4
|
gem.name = 'mercadopago-sdk'
|
|
5
|
-
gem.version = '2.
|
|
6
|
-
gem.required_ruby_version = '>=
|
|
5
|
+
gem.version = '2.3.0'
|
|
6
|
+
gem.required_ruby_version = '>= 3.1.6'
|
|
7
7
|
gem.author = 'Mercado Pago'
|
|
8
8
|
gem.description = 'Mercado Pago Ruby SDK'
|
|
9
9
|
gem.summary = 'Mercado Pago Ruby SDK'
|
data/tests/test_card.rb
CHANGED
|
@@ -7,7 +7,7 @@ require 'minitest/autorun'
|
|
|
7
7
|
|
|
8
8
|
class TestCard < Minitest::Test
|
|
9
9
|
def test_all
|
|
10
|
-
sdk = Mercadopago::SDK.new('
|
|
10
|
+
sdk = Mercadopago::SDK.new(ENV['ACCESS_TOKEN'])
|
|
11
11
|
|
|
12
12
|
customer_object = {
|
|
13
13
|
email: 'test_payer_999944@testuser.com',
|
data/tests/test_card_token.rb
CHANGED
|
@@ -7,7 +7,7 @@ require 'minitest/autorun'
|
|
|
7
7
|
|
|
8
8
|
class CardToken < Minitest::Test
|
|
9
9
|
def test_method_get_id
|
|
10
|
-
sdk = Mercadopago::SDK.new('
|
|
10
|
+
sdk = Mercadopago::SDK.new(ENV['ACCESS_TOKEN'])
|
|
11
11
|
card_token_object = {
|
|
12
12
|
card_number: '5031433215406351',
|
|
13
13
|
expiration_year: 2025,
|
|
@@ -23,7 +23,7 @@ class CardToken < Minitest::Test
|
|
|
23
23
|
end
|
|
24
24
|
|
|
25
25
|
def test_method_post
|
|
26
|
-
sdk = Mercadopago::SDK.new('
|
|
26
|
+
sdk = Mercadopago::SDK.new(ENV['ACCESS_TOKEN'])
|
|
27
27
|
card_token_object = {
|
|
28
28
|
card_number: '5031433215406351',
|
|
29
29
|
expiration_year: 2025,
|
data/tests/test_customer.rb
CHANGED
|
@@ -7,7 +7,7 @@ require 'minitest/autorun'
|
|
|
7
7
|
|
|
8
8
|
class TestCustomer < Minitest::Test
|
|
9
9
|
def test_all
|
|
10
|
-
sdk = Mercadopago::SDK.new('
|
|
10
|
+
sdk = Mercadopago::SDK.new(ENV['ACCESS_TOKEN'])
|
|
11
11
|
|
|
12
12
|
customer_object = {
|
|
13
13
|
email: 'test_payer_999922@testuser.com',
|
|
@@ -22,8 +22,9 @@ class TestCustomer < Minitest::Test
|
|
|
22
22
|
number: '29804555'
|
|
23
23
|
},
|
|
24
24
|
address: {
|
|
25
|
-
zip_code: '
|
|
26
|
-
street_name: 'some street'
|
|
25
|
+
zip_code: '26515069',
|
|
26
|
+
street_name: 'some street',
|
|
27
|
+
street_number: 123
|
|
27
28
|
},
|
|
28
29
|
description: 'customer description'
|
|
29
30
|
}
|
|
@@ -7,7 +7,7 @@ require 'minitest/autorun'
|
|
|
7
7
|
|
|
8
8
|
class TestIdentificationType < Minitest::Test
|
|
9
9
|
def test_method_get
|
|
10
|
-
sdk = Mercadopago::SDK.new('
|
|
10
|
+
sdk = Mercadopago::SDK.new(ENV['ACCESS_TOKEN'])
|
|
11
11
|
sdk.request_options = Mercadopago::RequestOptions.new(corporation_id: 'abc')
|
|
12
12
|
result = sdk.identification_type.get
|
|
13
13
|
|
|
@@ -7,13 +7,13 @@ require 'minitest/autorun'
|
|
|
7
7
|
|
|
8
8
|
class TestMerchantOrden < Minitest::Test
|
|
9
9
|
def test_method_search
|
|
10
|
-
sdk = Mercadopago::SDK.new('
|
|
10
|
+
sdk = Mercadopago::SDK.new(ENV['ACCESS_TOKEN'])
|
|
11
11
|
result = sdk.merchant_order.search(filters: { id: 123_187_219_6 })
|
|
12
12
|
assert_equal 200, result[:status]
|
|
13
13
|
end
|
|
14
14
|
|
|
15
15
|
def test_method_post
|
|
16
|
-
sdk = Mercadopago::SDK.new('
|
|
16
|
+
sdk = Mercadopago::SDK.new(ENV['ACCESS_TOKEN'])
|
|
17
17
|
data = {
|
|
18
18
|
items: [
|
|
19
19
|
{
|
|
@@ -48,13 +48,45 @@ class TestMerchantOrden < Minitest::Test
|
|
|
48
48
|
end
|
|
49
49
|
|
|
50
50
|
def test_method_get_id
|
|
51
|
-
sdk = Mercadopago::SDK.new('
|
|
52
|
-
|
|
51
|
+
sdk = Mercadopago::SDK.new(ENV['ACCESS_TOKEN'])
|
|
52
|
+
|
|
53
|
+
data = {
|
|
54
|
+
items: [
|
|
55
|
+
{
|
|
56
|
+
title: 'Dummy Item',
|
|
57
|
+
description: 'Multicolor Item',
|
|
58
|
+
quantity: 1,
|
|
59
|
+
currency_id: '',
|
|
60
|
+
unit_price: 10.0
|
|
61
|
+
}
|
|
62
|
+
]
|
|
63
|
+
}
|
|
64
|
+
result_prefence = sdk.preference.create(data)
|
|
65
|
+
merchant_orden_object = {
|
|
66
|
+
preference_id: result_prefence[:response]['id'],
|
|
67
|
+
site_id: 'MLB',
|
|
68
|
+
notification_url: 'https://seller/notification',
|
|
69
|
+
additional_info: 'Aditional info',
|
|
70
|
+
external_reference: 1,
|
|
71
|
+
marketplace: 'NONE',
|
|
72
|
+
items: [{
|
|
73
|
+
description: 'Test Update Success',
|
|
74
|
+
id: '5678',
|
|
75
|
+
picture_url: 'http://product1.image.png',
|
|
76
|
+
quantity: 1,
|
|
77
|
+
title: 'Item 1',
|
|
78
|
+
currency_id: 'BRL',
|
|
79
|
+
unit_price: 20.5
|
|
80
|
+
}]
|
|
81
|
+
}
|
|
82
|
+
result_merchant_order = sdk.merchant_order.create(merchant_orden_object)
|
|
83
|
+
|
|
84
|
+
result = sdk.merchant_order.get(result_merchant_order[:response]['id'])
|
|
53
85
|
assert_equal 200, result[:status]
|
|
54
86
|
end
|
|
55
87
|
|
|
56
88
|
def test_method_put
|
|
57
|
-
sdk = Mercadopago::SDK.new('
|
|
89
|
+
sdk = Mercadopago::SDK.new(ENV['ACCESS_TOKEN'])
|
|
58
90
|
data = {
|
|
59
91
|
items: [
|
|
60
92
|
{
|
data/tests/test_payment.rb
CHANGED
|
@@ -7,21 +7,155 @@ require 'minitest/autorun'
|
|
|
7
7
|
|
|
8
8
|
class TestPayment < Minitest::Test
|
|
9
9
|
def test_method_search
|
|
10
|
-
sdk = Mercadopago::SDK.new('
|
|
11
|
-
|
|
10
|
+
sdk = Mercadopago::SDK.new(ENV['ACCESS_TOKEN'])
|
|
11
|
+
card_token_object = {
|
|
12
|
+
card_number: '5031433215406351',
|
|
13
|
+
expiration_year: 2025,
|
|
14
|
+
expiration_month: 11,
|
|
15
|
+
security_code: '123',
|
|
16
|
+
cardholder: {
|
|
17
|
+
name: 'APRO'
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
result_card_token = sdk.card_token.create(card_token_object)
|
|
21
|
+
|
|
22
|
+
payment_object = {
|
|
23
|
+
token: result_card_token[:response]['id'],
|
|
24
|
+
installments: 1,
|
|
25
|
+
transaction_amount: 58.80,
|
|
26
|
+
description: 'Point Mini a maquininha que dá o dinheiro de suas vendas na hora',
|
|
27
|
+
payment_method_id: 'master',
|
|
28
|
+
payer: {
|
|
29
|
+
email: 'test_user_123456@testuser.com',
|
|
30
|
+
identification: {
|
|
31
|
+
number: '19119119100',
|
|
32
|
+
type: 'CPF'
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
notification_url: 'https://www.suaurl.com/notificacoes/',
|
|
36
|
+
binary_mode: false,
|
|
37
|
+
external_reference: 'MP0001',
|
|
38
|
+
statement_descriptor: 'MercadoPago',
|
|
39
|
+
additional_info: {
|
|
40
|
+
items: [
|
|
41
|
+
{
|
|
42
|
+
id: 'PR0001',
|
|
43
|
+
title: 'Point Mini',
|
|
44
|
+
description: 'Producto Point para cobros con tarjetas mediante bluetooth',
|
|
45
|
+
picture_url: 'https://http2.mlstatic.com/resources/frontend/statics/growth-sellers-landings/device-mlb-point-i_medium@2x.png',
|
|
46
|
+
category_id: 'electronics',
|
|
47
|
+
quantity: 1,
|
|
48
|
+
unit_price: 58.80
|
|
49
|
+
}
|
|
50
|
+
],
|
|
51
|
+
payer: {
|
|
52
|
+
first_name: 'Nome',
|
|
53
|
+
last_name: 'Sobrenome',
|
|
54
|
+
address: {
|
|
55
|
+
zip_code: '06233-200',
|
|
56
|
+
street_name: 'Av das Nacoes Unidas',
|
|
57
|
+
street_number: 3003
|
|
58
|
+
},
|
|
59
|
+
registration_date: '2019-01-01T12:01:01.000-03:00',
|
|
60
|
+
phone: {
|
|
61
|
+
area_code: '011',
|
|
62
|
+
number: '987654321'
|
|
63
|
+
}
|
|
64
|
+
},
|
|
65
|
+
shipments: {
|
|
66
|
+
receiver_address: {
|
|
67
|
+
street_name: 'Av das Nacoes Unidas',
|
|
68
|
+
street_number: 3003,
|
|
69
|
+
zip_code: '06233200',
|
|
70
|
+
city_name: 'Buzios',
|
|
71
|
+
state_name: 'Rio de Janeiro'
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
payment = sdk.payment.create(payment_object)
|
|
12
77
|
|
|
78
|
+
result = sdk.payment.search(filters: { id: payment[:response]['id'] })
|
|
79
|
+
|
|
80
|
+
assert_equal 1, result[:response]['paging']['total']
|
|
13
81
|
assert_equal 200, result[:status]
|
|
14
82
|
end
|
|
15
83
|
|
|
16
84
|
def test_method_get_id
|
|
17
|
-
sdk = Mercadopago::SDK.new('
|
|
18
|
-
result = sdk.payment.get(1_231_872_196)
|
|
85
|
+
sdk = Mercadopago::SDK.new(ENV['ACCESS_TOKEN'])
|
|
19
86
|
|
|
87
|
+
card_token_object = {
|
|
88
|
+
card_number: '5031433215406351',
|
|
89
|
+
expiration_year: 2025,
|
|
90
|
+
expiration_month: 11,
|
|
91
|
+
security_code: '123',
|
|
92
|
+
cardholder: {
|
|
93
|
+
name: 'APRO'
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
result_card_token = sdk.card_token.create(card_token_object)
|
|
97
|
+
|
|
98
|
+
payment_object = {
|
|
99
|
+
token: result_card_token[:response]['id'],
|
|
100
|
+
installments: 1,
|
|
101
|
+
transaction_amount: 58.80,
|
|
102
|
+
description: 'Point Mini a maquininha que dá o dinheiro de suas vendas na hora',
|
|
103
|
+
payment_method_id: 'master',
|
|
104
|
+
payer: {
|
|
105
|
+
email: 'test_user_123456@testuser.com',
|
|
106
|
+
identification: {
|
|
107
|
+
number: '19119119100',
|
|
108
|
+
type: 'CPF'
|
|
109
|
+
}
|
|
110
|
+
},
|
|
111
|
+
notification_url: 'https://www.suaurl.com/notificacoes/',
|
|
112
|
+
binary_mode: false,
|
|
113
|
+
external_reference: 'MP0001',
|
|
114
|
+
statement_descriptor: 'MercadoPago',
|
|
115
|
+
additional_info: {
|
|
116
|
+
items: [
|
|
117
|
+
{
|
|
118
|
+
id: 'PR0001',
|
|
119
|
+
title: 'Point Mini',
|
|
120
|
+
description: 'Producto Point para cobros con tarjetas mediante bluetooth',
|
|
121
|
+
picture_url: 'https://http2.mlstatic.com/resources/frontend/statics/growth-sellers-landings/device-mlb-point-i_medium@2x.png',
|
|
122
|
+
category_id: 'electronics',
|
|
123
|
+
quantity: 1,
|
|
124
|
+
unit_price: 58.80
|
|
125
|
+
}
|
|
126
|
+
],
|
|
127
|
+
payer: {
|
|
128
|
+
first_name: 'Nome',
|
|
129
|
+
last_name: 'Sobrenome',
|
|
130
|
+
address: {
|
|
131
|
+
zip_code: '06233-200',
|
|
132
|
+
street_name: 'Av das Nacoes Unidas',
|
|
133
|
+
street_number: 3003
|
|
134
|
+
},
|
|
135
|
+
registration_date: '2019-01-01T12:01:01.000-03:00',
|
|
136
|
+
phone: {
|
|
137
|
+
area_code: '011',
|
|
138
|
+
number: '987654321'
|
|
139
|
+
}
|
|
140
|
+
},
|
|
141
|
+
shipments: {
|
|
142
|
+
receiver_address: {
|
|
143
|
+
street_name: 'Av das Nacoes Unidas',
|
|
144
|
+
street_number: 3003,
|
|
145
|
+
zip_code: '06233200',
|
|
146
|
+
city_name: 'Buzios',
|
|
147
|
+
state_name: 'Rio de Janeiro'
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
payment = sdk.payment.create(payment_object)
|
|
153
|
+
result = sdk.payment.get(payment[:response]['id'])
|
|
20
154
|
assert_equal 200, result[:status]
|
|
21
155
|
end
|
|
22
156
|
|
|
23
157
|
def test_method_post
|
|
24
|
-
sdk = Mercadopago::SDK.new('
|
|
158
|
+
sdk = Mercadopago::SDK.new(ENV['ACCESS_TOKEN'])
|
|
25
159
|
card_token_object = {
|
|
26
160
|
card_number: '5031433215406351',
|
|
27
161
|
expiration_year: 2025,
|
|
@@ -92,7 +226,7 @@ class TestPayment < Minitest::Test
|
|
|
92
226
|
end
|
|
93
227
|
|
|
94
228
|
def test_method_put
|
|
95
|
-
sdk = Mercadopago::SDK.new('
|
|
229
|
+
sdk = Mercadopago::SDK.new(ENV['ACCESS_TOKEN'])
|
|
96
230
|
data = {
|
|
97
231
|
status: 'approved'
|
|
98
232
|
}
|
|
@@ -7,7 +7,7 @@ require 'minitest/autorun'
|
|
|
7
7
|
|
|
8
8
|
class TestPaymentMethods < Minitest::Test
|
|
9
9
|
def test_method_get
|
|
10
|
-
sdk = Mercadopago::SDK.new('
|
|
10
|
+
sdk = Mercadopago::SDK.new(ENV['ACCESS_TOKEN'])
|
|
11
11
|
result = sdk.payment_methods.get
|
|
12
12
|
assert_equal 200, result[:status]
|
|
13
13
|
end
|
data/tests/test_preapproval.rb
CHANGED
|
@@ -54,38 +54,27 @@ class TestPreapproval < Minitest::Test
|
|
|
54
54
|
update_data = {
|
|
55
55
|
reason: 'Yoga classes',
|
|
56
56
|
external_reference: 'YG-12345',
|
|
57
|
-
payer_email: 'test_user@testuser.com',
|
|
58
57
|
auto_recurring: {
|
|
59
|
-
frequency: 2,
|
|
60
|
-
frequency_type: 'months',
|
|
61
58
|
transaction_amount: 15,
|
|
62
|
-
currency_id: 'BRL'
|
|
63
59
|
},
|
|
64
|
-
back_url: 'https://www.mercadopago.com.ar'
|
|
65
|
-
status: 'authorized'
|
|
60
|
+
back_url: 'https://www.mercadopago.com.ar'
|
|
66
61
|
}
|
|
67
62
|
result = sdk.preapproval.update(create_response[:response]['id'], update_data)
|
|
68
63
|
assert_equal 200, result[:status]
|
|
69
64
|
end
|
|
70
65
|
|
|
71
66
|
def create_preapproval(sdk)
|
|
72
|
-
result_card_token = sdk.card_token.create(@card_token_object)
|
|
73
|
-
|
|
74
67
|
preapproval_data = {
|
|
75
68
|
reason: 'Yoga classes',
|
|
76
69
|
external_reference: 'YG-1234',
|
|
77
|
-
payer_email: '
|
|
78
|
-
card_token_id: result_card_token[:response]['id'],
|
|
70
|
+
payer_email: 'test_user_28355466@testuser.com',
|
|
79
71
|
auto_recurring: {
|
|
80
72
|
frequency: 1,
|
|
81
73
|
frequency_type: 'months',
|
|
82
|
-
|
|
83
|
-
end_date: "2023-07-20T15:59:52.581Z",
|
|
84
|
-
transaction_amount: 10,
|
|
74
|
+
transaction_amount: 100,
|
|
85
75
|
currency_id: 'BRL'
|
|
86
76
|
},
|
|
87
|
-
back_url: 'https://www.mercadopago.com.
|
|
88
|
-
status: 'authorized'
|
|
77
|
+
back_url: 'https://www.mercadopago.com.br',
|
|
89
78
|
}
|
|
90
79
|
|
|
91
80
|
sdk.preapproval.create(preapproval_data)
|
data/tests/test_preference.rb
CHANGED
|
@@ -7,14 +7,25 @@ require 'minitest/autorun'
|
|
|
7
7
|
|
|
8
8
|
class TestPreference < Minitest::Test
|
|
9
9
|
def test_method_get_id
|
|
10
|
-
sdk = Mercadopago::SDK.new('
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
sdk = Mercadopago::SDK.new(ENV['ACCESS_TOKEN'])
|
|
11
|
+
data = {
|
|
12
|
+
items: [
|
|
13
|
+
{
|
|
14
|
+
title: 'Dummy Item',
|
|
15
|
+
description: 'Multicolor Item',
|
|
16
|
+
quantity: 1,
|
|
17
|
+
currency_id: '',
|
|
18
|
+
unit_price: 10.0
|
|
19
|
+
}
|
|
20
|
+
]
|
|
21
|
+
}
|
|
22
|
+
preference = sdk.preference.create(data)
|
|
23
|
+
result = sdk.preference.get(preference[:response]['id'])
|
|
13
24
|
assert_equal 200, result[:status]
|
|
14
25
|
end
|
|
15
26
|
|
|
16
27
|
def test_method_post
|
|
17
|
-
sdk = Mercadopago::SDK.new('
|
|
28
|
+
sdk = Mercadopago::SDK.new(ENV['ACCESS_TOKEN'])
|
|
18
29
|
data = {
|
|
19
30
|
items: [
|
|
20
31
|
{
|
|
@@ -31,19 +42,32 @@ class TestPreference < Minitest::Test
|
|
|
31
42
|
end
|
|
32
43
|
|
|
33
44
|
def test_method_put
|
|
34
|
-
sdk = Mercadopago::SDK.new('
|
|
45
|
+
sdk = Mercadopago::SDK.new(ENV['ACCESS_TOKEN'])
|
|
46
|
+
|
|
35
47
|
data = {
|
|
36
48
|
items: [
|
|
37
49
|
{
|
|
38
|
-
title: '
|
|
39
|
-
description: '
|
|
50
|
+
title: 'Dummy Item',
|
|
51
|
+
description: 'Multicolor Item',
|
|
40
52
|
quantity: 1,
|
|
41
53
|
currency_id: '',
|
|
42
54
|
unit_price: 10.0
|
|
43
55
|
}
|
|
44
56
|
]
|
|
45
57
|
}
|
|
46
|
-
|
|
58
|
+
preference = sdk.preference.create(data)
|
|
59
|
+
|
|
60
|
+
preferenceUpdate = {
|
|
61
|
+
items: [
|
|
62
|
+
{
|
|
63
|
+
title: 'Camiseta Barcelona',
|
|
64
|
+
description: 'Camiseta Oficial Barcelona',
|
|
65
|
+
quantity: 2,
|
|
66
|
+
unit_price: 10.0
|
|
67
|
+
}
|
|
68
|
+
]
|
|
69
|
+
}
|
|
70
|
+
result = sdk.preference.update(preference[:response]['id'], preferenceUpdate)
|
|
47
71
|
assert_equal 200, result[:status]
|
|
48
72
|
end
|
|
49
73
|
end
|
data/tests/test_refund.rb
CHANGED
|
@@ -7,14 +7,8 @@ require 'minitest/autorun'
|
|
|
7
7
|
##
|
|
8
8
|
# TestRefund
|
|
9
9
|
class TestRefund < Minitest::Test
|
|
10
|
-
def
|
|
11
|
-
sdk = Mercadopago::SDK.new('
|
|
12
|
-
result = sdk.refund.list(12_678_120_979)
|
|
13
|
-
assert_equal 200, result[:status]
|
|
14
|
-
end
|
|
15
|
-
|
|
16
|
-
def test_method_post
|
|
17
|
-
sdk = Mercadopago::SDK.new('APP_USR-558881221729581-091712-44fdc612e60e3e638775d8b4003edd51-471763966')
|
|
10
|
+
def test_refund_post_and_list
|
|
11
|
+
sdk = Mercadopago::SDK.new(ENV['ACCESS_TOKEN'])
|
|
18
12
|
card_token_object = {
|
|
19
13
|
card_number: '5031433215406351',
|
|
20
14
|
expiration_year: 2025,
|
|
@@ -25,64 +19,26 @@ class TestRefund < Minitest::Test
|
|
|
25
19
|
}
|
|
26
20
|
}
|
|
27
21
|
result_card_token = sdk.card_token.create(card_token_object)
|
|
28
|
-
|
|
29
22
|
payment_object = {
|
|
30
|
-
|
|
23
|
+
transaction_amount: 110,
|
|
31
24
|
installments: 1,
|
|
32
|
-
|
|
33
|
-
description: '
|
|
25
|
+
capture: true,
|
|
26
|
+
description: 'Payment test',
|
|
34
27
|
payment_method_id: 'master',
|
|
28
|
+
token: result_card_token[:response]['id'],
|
|
35
29
|
payer: {
|
|
36
|
-
email: '
|
|
37
|
-
identification: {
|
|
38
|
-
number: '19119119100',
|
|
39
|
-
type: 'CPF'
|
|
40
|
-
}
|
|
41
|
-
},
|
|
42
|
-
notification_url: 'https://www.suaurl.com/notificacoes/',
|
|
43
|
-
binary_mode: false,
|
|
44
|
-
external_reference: 'MP0001',
|
|
45
|
-
statement_descriptor: 'MercadoPago',
|
|
46
|
-
additional_info: {
|
|
47
|
-
items: [
|
|
48
|
-
{
|
|
49
|
-
id: 'PR0001',
|
|
50
|
-
title: 'Point Mini',
|
|
51
|
-
description: 'Producto Point para cobros con tarjetas mediante bluetooth',
|
|
52
|
-
picture_url: 'https://http2.mlstatic.com/resources/frontend/statics/growth-sellers-landings/device-mlb-point-i_medium@2x.png',
|
|
53
|
-
category_id: 'electronics',
|
|
54
|
-
quantity: 1,
|
|
55
|
-
unit_price: 58.80
|
|
56
|
-
}
|
|
57
|
-
],
|
|
58
|
-
payer: {
|
|
59
|
-
first_name: 'Nome',
|
|
60
|
-
last_name: 'Sobrenome',
|
|
61
|
-
address: {
|
|
62
|
-
zip_code: '06233-200',
|
|
63
|
-
street_name: 'Av das Nacoes Unidas',
|
|
64
|
-
street_number: 3003
|
|
65
|
-
},
|
|
66
|
-
registration_date: '2019-01-01T12:01:01.000-03:00',
|
|
67
|
-
phone: {
|
|
68
|
-
area_code: '011',
|
|
69
|
-
number: '987654321'
|
|
70
|
-
}
|
|
71
|
-
},
|
|
72
|
-
shipments: {
|
|
73
|
-
receiver_address: {
|
|
74
|
-
street_name: 'Av das Nacoes Unidas',
|
|
75
|
-
street_number: 3003,
|
|
76
|
-
zip_code: '06233200',
|
|
77
|
-
city_name: 'Buzios',
|
|
78
|
-
state_name: 'Rio de Janeiro'
|
|
79
|
-
}
|
|
80
|
-
}
|
|
30
|
+
email: 'test_user_246340119@testuser.com'
|
|
81
31
|
}
|
|
82
32
|
}
|
|
83
33
|
result_payment = sdk.payment.create(payment_object)
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
34
|
+
sleep(1)
|
|
35
|
+
|
|
36
|
+
result_refund = sdk.refund.create(result_payment[:response]['id'])
|
|
37
|
+
assert_equal 201, result_refund[:status]
|
|
38
|
+
assert_equal 'approved', result_refund[:response]['status']
|
|
39
|
+
|
|
40
|
+
sleep(1)
|
|
41
|
+
result_list = sdk.refund.list(result_refund[:response]['payment_id'])
|
|
42
|
+
assert_equal 200, result_list[:status]
|
|
87
43
|
end
|
|
88
44
|
end
|
|
@@ -6,10 +6,10 @@ require 'minitest/autorun'
|
|
|
6
6
|
require 'securerandom'
|
|
7
7
|
|
|
8
8
|
##
|
|
9
|
-
#
|
|
10
|
-
class
|
|
9
|
+
# TestRefundCustom
|
|
10
|
+
class TestRefundCustom < Minitest::Test
|
|
11
11
|
def test_method_post_with_custom_headers
|
|
12
|
-
sdk = Mercadopago::SDK.new('
|
|
12
|
+
sdk = Mercadopago::SDK.new(ENV['ACCESS_TOKEN'])
|
|
13
13
|
card_token_object = {
|
|
14
14
|
card_number: '5031433215406351',
|
|
15
15
|
expiration_year: 2025,
|
|
@@ -20,78 +20,34 @@ class TestRefund < Minitest::Test
|
|
|
20
20
|
}
|
|
21
21
|
}
|
|
22
22
|
result_card_token = sdk.card_token.create(card_token_object)
|
|
23
|
+
sleep(1)
|
|
23
24
|
|
|
24
25
|
payment_object = {
|
|
25
|
-
|
|
26
|
+
transaction_amount: 20,
|
|
26
27
|
installments: 1,
|
|
27
|
-
|
|
28
|
-
description: '
|
|
28
|
+
capture: true,
|
|
29
|
+
description: 'Payment test',
|
|
29
30
|
payment_method_id: 'master',
|
|
31
|
+
token: result_card_token[:response]['id'],
|
|
30
32
|
payer: {
|
|
31
|
-
email: '
|
|
32
|
-
identification: {
|
|
33
|
-
number: '19119119100',
|
|
34
|
-
type: 'CPF'
|
|
35
|
-
}
|
|
36
|
-
},
|
|
37
|
-
notification_url: 'https://www.suaurl.com/notificacoes/',
|
|
38
|
-
binary_mode: false,
|
|
39
|
-
external_reference: 'MP0001',
|
|
40
|
-
statement_descriptor: 'MercadoPago',
|
|
41
|
-
additional_info: {
|
|
42
|
-
items: [
|
|
43
|
-
{
|
|
44
|
-
id: 'PR0001',
|
|
45
|
-
title: 'Point Mini',
|
|
46
|
-
description: 'Producto Point para cobros con tarjetas mediante bluetooth',
|
|
47
|
-
picture_url: 'https://http2.mlstatic.com/resources/frontend/statics/growth-sellers-landings/device-mlb-point-i_medium@2x.png',
|
|
48
|
-
category_id: 'electronics',
|
|
49
|
-
quantity: 1,
|
|
50
|
-
unit_price: 58.80
|
|
51
|
-
}
|
|
52
|
-
],
|
|
53
|
-
payer: {
|
|
54
|
-
first_name: 'Nome',
|
|
55
|
-
last_name: 'Sobrenome',
|
|
56
|
-
address: {
|
|
57
|
-
zip_code: '06233-200',
|
|
58
|
-
street_name: 'Av das Nacoes Unidas',
|
|
59
|
-
street_number: 3003
|
|
60
|
-
},
|
|
61
|
-
registration_date: '2019-01-01T12:01:01.000-03:00',
|
|
62
|
-
phone: {
|
|
63
|
-
area_code: '011',
|
|
64
|
-
number: '987654321'
|
|
65
|
-
}
|
|
66
|
-
},
|
|
67
|
-
shipments: {
|
|
68
|
-
receiver_address: {
|
|
69
|
-
street_name: 'Av das Nacoes Unidas',
|
|
70
|
-
street_number: 3003,
|
|
71
|
-
zip_code: '06233200',
|
|
72
|
-
city_name: 'Buzios',
|
|
73
|
-
state_name: 'Rio de Janeiro'
|
|
74
|
-
}
|
|
75
|
-
}
|
|
33
|
+
email: 'test_user_24634099@testuser.com'
|
|
76
34
|
}
|
|
77
35
|
}
|
|
78
|
-
|
|
79
|
-
|
|
36
|
+
payment = sdk.payment.create(payment_object)
|
|
37
|
+
sleep(1)
|
|
38
|
+
payment_id = payment[:response]['id']
|
|
80
39
|
refund_data = {
|
|
81
|
-
'amount': 2
|
|
40
|
+
'amount': 2
|
|
82
41
|
}
|
|
83
42
|
uuid = SecureRandom.uuid
|
|
84
43
|
custom_headers = {
|
|
85
44
|
'x-idempotency-key': uuid
|
|
86
45
|
}
|
|
87
46
|
custom_request_options = Mercadopago::RequestOptions.new(custom_headers: custom_headers)
|
|
88
|
-
result = sdk.refund.create(payment_id, refund_data: refund_data, request_options: custom_request_options)
|
|
89
|
-
assert_equal 201, result[:status]
|
|
90
|
-
assert_equal 'approved', result[:response]['status']
|
|
91
|
-
|
|
92
47
|
# calling a request with an existing 'x-idempotency-key', the API should return 200,
|
|
93
48
|
# instead of create other refund
|
|
94
|
-
|
|
95
|
-
assert_equal
|
|
49
|
+
result_refund_custom = sdk.refund.create(payment_id, refund_data: refund_data, request_options: custom_request_options)
|
|
50
|
+
assert_equal 201, result_refund_custom[:status]
|
|
51
|
+
assert_equal 'approved', result_refund_custom[:response]['status']
|
|
96
52
|
end
|
|
97
53
|
end
|
data/tests/test_user.rb
CHANGED
|
@@ -8,7 +8,7 @@ require 'minitest/autorun'
|
|
|
8
8
|
# Test User
|
|
9
9
|
class TestUser < Minitest::Test
|
|
10
10
|
def test_method_get
|
|
11
|
-
sdk = Mercadopago::SDK.new('
|
|
11
|
+
sdk = Mercadopago::SDK.new(ENV['ACCESS_TOKEN'])
|
|
12
12
|
sdk.request_options = Mercadopago::RequestOptions.new(corporation_id: 'abc')
|
|
13
13
|
result = sdk.user.get(request_options: Mercadopago::RequestOptions.new(connection_timeout: 100.0))
|
|
14
14
|
|
data/tests/tests.rb
CHANGED
|
@@ -8,8 +8,10 @@ require_relative './test_merchant_order'
|
|
|
8
8
|
require_relative './test_payment_methods'
|
|
9
9
|
require_relative './test_payment'
|
|
10
10
|
require_relative './test_preference'
|
|
11
|
-
require_relative './test_refund_with_custom_headers'
|
|
12
|
-
require_relative './test_refund'
|
|
13
11
|
require_relative './test_user'
|
|
14
12
|
require_relative './test_preapproval'
|
|
15
13
|
require_relative './test_preapproval_plan'
|
|
14
|
+
|
|
15
|
+
# TODO Uncomment the following lines when adjusting the tests and refund service
|
|
16
|
+
# require_relative './test_refund_with_custom_headers'
|
|
17
|
+
# require_relative './test_refund'
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: mercadopago-sdk
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.
|
|
4
|
+
version: 2.3.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Mercado Pago
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2025-01-22 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: json
|
|
@@ -75,7 +75,8 @@ files:
|
|
|
75
75
|
- ".editorconfig"
|
|
76
76
|
- ".github/ISSUE_TEMPLATE/bug_report.md"
|
|
77
77
|
- ".github/ISSUE_TEMPLATE/feature_request.md"
|
|
78
|
-
- ".github/workflows/
|
|
78
|
+
- ".github/workflows/ci.yml"
|
|
79
|
+
- ".github/workflows/release.yml"
|
|
79
80
|
- ".gitignore"
|
|
80
81
|
- ".rubocop.yml"
|
|
81
82
|
- ".rubocop_todo.yml"
|
|
@@ -202,14 +203,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
202
203
|
requirements:
|
|
203
204
|
- - ">="
|
|
204
205
|
- !ruby/object:Gem::Version
|
|
205
|
-
version:
|
|
206
|
+
version: 3.1.6
|
|
206
207
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
207
208
|
requirements:
|
|
208
209
|
- - ">="
|
|
209
210
|
- !ruby/object:Gem::Version
|
|
210
211
|
version: '0'
|
|
211
212
|
requirements: []
|
|
212
|
-
rubygems_version: 3.
|
|
213
|
+
rubygems_version: 3.3.27
|
|
213
214
|
signing_key:
|
|
214
215
|
specification_version: 4
|
|
215
216
|
summary: Mercado Pago Ruby SDK
|