conekta-tiempometa 2.4.2
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 +7 -0
- data/.gitignore +24 -0
- data/.rspec +1 -0
- data/CHANGELOG.md +124 -0
- data/Dockerfile +44 -0
- data/Gemfile +13 -0
- data/LICENSE.txt +22 -0
- data/README.md +182 -0
- data/Rakefile +1 -0
- data/conekta.gemspec +29 -0
- data/lib/conekta/address.rb +5 -0
- data/lib/conekta/card.rb +21 -0
- data/lib/conekta/charge.rb +25 -0
- data/lib/conekta/conekta_object.rb +109 -0
- data/lib/conekta/customer.rb +82 -0
- data/lib/conekta/customer_info.rb +5 -0
- data/lib/conekta/destination.rb +17 -0
- data/lib/conekta/details.rb +5 -0
- data/lib/conekta/discount_line.rb +19 -0
- data/lib/conekta/error.rb +99 -0
- data/lib/conekta/error_details.rb +14 -0
- data/lib/conekta/event.rb +9 -0
- data/lib/conekta/line_item.rb +21 -0
- data/lib/conekta/list.rb +59 -0
- data/lib/conekta/log.rb +10 -0
- data/lib/conekta/method.rb +4 -0
- data/lib/conekta/operations/create.rb +19 -0
- data/lib/conekta/operations/create_member.rb +40 -0
- data/lib/conekta/operations/custom_action.rb +13 -0
- data/lib/conekta/operations/delete.rb +45 -0
- data/lib/conekta/operations/find.rb +21 -0
- data/lib/conekta/operations/update.rb +11 -0
- data/lib/conekta/operations/where.rb +30 -0
- data/lib/conekta/order.rb +87 -0
- data/lib/conekta/payee.rb +66 -0
- data/lib/conekta/payment_method.rb +4 -0
- data/lib/conekta/payment_source.rb +17 -0
- data/lib/conekta/payout.rb +7 -0
- data/lib/conekta/payout_method.rb +17 -0
- data/lib/conekta/plan.rb +16 -0
- data/lib/conekta/refund.rb +6 -0
- data/lib/conekta/requestor.rb +80 -0
- data/lib/conekta/resource.rb +54 -0
- data/lib/conekta/return.rb +12 -0
- data/lib/conekta/shipping_contact.rb +19 -0
- data/lib/conekta/shipping_line.rb +20 -0
- data/lib/conekta/subscription.rb +25 -0
- data/lib/conekta/tax_line.rb +19 -0
- data/lib/conekta/token.rb +8 -0
- data/lib/conekta/transfer.rb +7 -0
- data/lib/conekta/util.rb +136 -0
- data/lib/conekta/version.rb +3 -0
- data/lib/conekta/webhook.rb +12 -0
- data/lib/conekta/webhook_log.rb +4 -0
- data/lib/conekta.rb +101 -0
- data/lib/ssl_data/ca_bundle.crt +3955 -0
- data/locales/en.yml +9 -0
- data/locales/es.yml +10 -0
- data/readme_files/banner.png +0 -0
- data/readme_files/conekta-badge.png +0 -0
- data/readme_files/ruby-badge.png +0 -0
- data/spec/conekta/1.0.0/.DS_Store +0 -0
- data/spec/conekta/1.0.0/card_spec.rb +40 -0
- data/spec/conekta/1.0.0/charge_spec.rb +152 -0
- data/spec/conekta/1.0.0/customer_spec.rb +147 -0
- data/spec/conekta/1.0.0/error_spec.rb +69 -0
- data/spec/conekta/1.0.0/event_spec.rb +26 -0
- data/spec/conekta/1.0.0/log_spec.rb +20 -0
- data/spec/conekta/1.0.0/payout_spec.rb +60 -0
- data/spec/conekta/1.0.0/plan_spec.rb +53 -0
- data/spec/conekta/1.0.0/token_spec.rb +5 -0
- data/spec/conekta/1.0.0/webhook_spec.rb +36 -0
- data/spec/conekta/2.0.0/customer_spec.rb +77 -0
- data/spec/conekta/2.0.0/discount_line_spec.rb +49 -0
- data/spec/conekta/2.0.0/error_spec.rb +61 -0
- data/spec/conekta/2.0.0/line_item_spec.rb +53 -0
- data/spec/conekta/2.0.0/list_spec.rb +29 -0
- data/spec/conekta/2.0.0/order_spec.rb +291 -0
- data/spec/conekta/2.0.0/payee_spec.rb +55 -0
- data/spec/conekta/2.0.0/shipping_contact_spec.rb +60 -0
- data/spec/conekta/2.0.0/shipping_line_spec.rb +53 -0
- data/spec/conekta/2.0.0/source_spec.rb +31 -0
- data/spec/conekta/2.0.0/tax_line_spec.rb +44 -0
- data/spec/conekta/2.0.0/transfer_spec.rb +59 -0
- data/spec/conekta_spec.rb +29 -0
- data/spec/spec_helper.rb +14 -0
- data/spec/support/fixtures/orders.json +1127 -0
- data/spec/support/shared_context.rb +49 -0
- metadata +229 -0
@@ -0,0 +1,53 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Conekta::ShippingLine do
|
4
|
+
include_context "API 2.0.0"
|
5
|
+
include_context "order"
|
6
|
+
|
7
|
+
let(:shipping_lines) do
|
8
|
+
[
|
9
|
+
{
|
10
|
+
description: "Free Shipping",
|
11
|
+
amount: 0,
|
12
|
+
tracking_number: "TRACK123",
|
13
|
+
carrier: "USPS",
|
14
|
+
method: "Train",
|
15
|
+
},
|
16
|
+
{
|
17
|
+
description: "Otro Shipping",
|
18
|
+
amount: 40,
|
19
|
+
tracking_number: "TRACK124",
|
20
|
+
carrier: "USPS",
|
21
|
+
method: "Train",
|
22
|
+
}
|
23
|
+
]
|
24
|
+
end
|
25
|
+
|
26
|
+
let(:order) do
|
27
|
+
Conekta::Order.create(order_data.merge(shipping_lines: shipping_lines))
|
28
|
+
end
|
29
|
+
|
30
|
+
let(:shipping_line) { order.shipping_lines.first }
|
31
|
+
|
32
|
+
context "deleting shipping lines" do
|
33
|
+
it "successful shipping line delete" do
|
34
|
+
shipping_line.delete
|
35
|
+
|
36
|
+
expect(shipping_line.deleted).to eq(true)
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
context "updating shipping lines" do
|
41
|
+
it "successful shipping line update" do
|
42
|
+
shipping_line.update(method: "Air")
|
43
|
+
|
44
|
+
expect(shipping_line._method).to eq("Air")
|
45
|
+
end
|
46
|
+
|
47
|
+
it "unsuccessful shipping line update" do
|
48
|
+
expect {
|
49
|
+
shipping_line.update(amount: -1)
|
50
|
+
}.to raise_error(Conekta::ParameterValidationError)
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Conekta::PaymentSource do
|
4
|
+
include_context "API 2.0.0"
|
5
|
+
include_context "customer"
|
6
|
+
|
7
|
+
let(:customer) { Conekta::Customer.create(customer_data) }
|
8
|
+
let(:payment_source) { customer.payment_sources.first }
|
9
|
+
|
10
|
+
context "deleting payment_sources" do
|
11
|
+
it "successful source delete" do
|
12
|
+
payment_source.delete
|
13
|
+
|
14
|
+
expect(payment_source.deleted).to eq(true)
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
context "updating payment_sources" do
|
19
|
+
it "successful payment_source update" do
|
20
|
+
payment_source.update(exp_month: 12)
|
21
|
+
|
22
|
+
expect(payment_source.exp_month).to eq("12")
|
23
|
+
end
|
24
|
+
|
25
|
+
it "unsuccessful payment_source update" do
|
26
|
+
expect {
|
27
|
+
payment_source.update(token_id: "tok_test_visa_4241")
|
28
|
+
}.to raise_error(Conekta::ParameterValidationError)
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Conekta::TaxLine do
|
4
|
+
include_context "API 2.0.0"
|
5
|
+
include_context "order"
|
6
|
+
|
7
|
+
let(:tax_lines) do
|
8
|
+
[
|
9
|
+
{
|
10
|
+
description: "IVA",
|
11
|
+
amount: 600
|
12
|
+
},
|
13
|
+
{
|
14
|
+
description: "ISR",
|
15
|
+
amount: 100
|
16
|
+
}
|
17
|
+
]
|
18
|
+
end
|
19
|
+
|
20
|
+
let(:order) { Conekta::Order.create(order_data.merge(tax_lines: tax_lines)) }
|
21
|
+
let(:tax_line) { order.tax_lines.first }
|
22
|
+
|
23
|
+
context "deleting tax lines" do
|
24
|
+
it "successful tax line delete" do
|
25
|
+
tax_line.delete
|
26
|
+
|
27
|
+
expect(tax_line.deleted).to eq(true)
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
context "updating tax lines" do
|
32
|
+
it "successful tax line update" do
|
33
|
+
tax_line.update(amount: 50)
|
34
|
+
|
35
|
+
expect(tax_line.amount).to eq(50)
|
36
|
+
end
|
37
|
+
|
38
|
+
it "unsuccessful tax line update" do
|
39
|
+
expect {
|
40
|
+
tax_line.update(amount: -1)
|
41
|
+
}.to raise_error(Conekta::Error)
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
@@ -0,0 +1,59 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Conekta::Payout do
|
4
|
+
include_context "API 2.0.0"
|
5
|
+
|
6
|
+
let(:payee_attributes) do
|
7
|
+
{
|
8
|
+
name: "John Doe", email: "j_d@radcorp.com", phone: "555555555",
|
9
|
+
billing_address:{
|
10
|
+
company_name: 'Rad Corp',
|
11
|
+
tax_id: 'tax121212abc',
|
12
|
+
street1: 'Guadalupe 73',
|
13
|
+
street2: 'Despacho 32',
|
14
|
+
street3: 'Condesa',
|
15
|
+
city: 'Cuauhtemoc',
|
16
|
+
state: 'DF',
|
17
|
+
country: 'MX',
|
18
|
+
zip: '06100'
|
19
|
+
}
|
20
|
+
}
|
21
|
+
end
|
22
|
+
|
23
|
+
let(:bank_attributes) do
|
24
|
+
{
|
25
|
+
type: "bank_account",
|
26
|
+
account_number: '072225008217746674',
|
27
|
+
account_holder_name: 'J D - Radcorp'
|
28
|
+
}
|
29
|
+
end
|
30
|
+
|
31
|
+
describe 'an instance' do
|
32
|
+
before do
|
33
|
+
payee = Conekta::Payee.create(payee_attributes)
|
34
|
+
payout_method = payee.create_destination(bank_attributes)
|
35
|
+
|
36
|
+
@payee = Conekta::Payee.find(payee.id)
|
37
|
+
end
|
38
|
+
|
39
|
+
it 'is created successfully' do
|
40
|
+
payout = Conekta::Transfer.create(
|
41
|
+
amount: 5000, currency: "MXN", payee: @payee.id
|
42
|
+
)
|
43
|
+
expect(payout).to be_a(Conekta::Transfer)
|
44
|
+
end
|
45
|
+
|
46
|
+
it 'can be retrieved by :id' do
|
47
|
+
transaction = Conekta::Transfer.create(
|
48
|
+
amount: 5000, currency: "MXN", payee: @payee.id
|
49
|
+
)
|
50
|
+
# refetch payout
|
51
|
+
payout = Conekta::Transfer.find(transaction.id)
|
52
|
+
expect(payout).to be_a(Conekta::Transfer)
|
53
|
+
end
|
54
|
+
|
55
|
+
it 'has a :method attribute' do
|
56
|
+
expect(@payee.destinations.first).to be_a(Conekta::Destination)
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Conekta do
|
4
|
+
describe ".config" do
|
5
|
+
it "sets the api key initializer style" do
|
6
|
+
Conekta.config { |c| c.api_key = "abc" }
|
7
|
+
|
8
|
+
expect(Conekta.api_key).to eq("abc")
|
9
|
+
end
|
10
|
+
|
11
|
+
it "sets the api version initializer style" do
|
12
|
+
Conekta.config { |c| c.api_version = "1.0" }
|
13
|
+
|
14
|
+
expect(Conekta.api_version).to eq("1.0")
|
15
|
+
end
|
16
|
+
|
17
|
+
it "sets the api locale initializer style" do
|
18
|
+
Conekta.config { |c| c.locale = "es" }
|
19
|
+
|
20
|
+
expect(Conekta.locale).to eq("es")
|
21
|
+
end
|
22
|
+
|
23
|
+
it "sets the plugin initializer style" do
|
24
|
+
Conekta.config { |c| c.plugin = "spree" }
|
25
|
+
|
26
|
+
expect(Conekta.plugin).to eq("spree")
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
|
2
|
+
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
3
|
+
require 'rspec'
|
4
|
+
require 'pry'
|
5
|
+
require 'conekta'
|
6
|
+
require 'byebug'
|
7
|
+
|
8
|
+
# Requires supporting files with custom matchers and macros, etc,
|
9
|
+
# in ./support/ and its subdirectories.
|
10
|
+
Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f}
|
11
|
+
|
12
|
+
RSpec.configure do |config|
|
13
|
+
config.before(:all) { Conekta.api_key = 'key_ZLy4aP2szht1HqzkCezDEA' }
|
14
|
+
end
|