braintree 2.104.0 → 3.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/LICENSE +1 -1
- data/braintree.gemspec +6 -3
- data/lib/braintree.rb +5 -17
- data/lib/braintree/address.rb +0 -22
- data/lib/braintree/base_module.rb +6 -0
- data/lib/braintree/bin_data.rb +9 -2
- data/lib/braintree/configuration.rb +1 -1
- data/lib/braintree/credit_card.rb +0 -75
- data/lib/braintree/credit_card_gateway.rb +4 -33
- data/lib/braintree/credit_card_verification.rb +13 -0
- data/lib/braintree/customer.rb +3 -74
- data/lib/braintree/customer_gateway.rb +0 -23
- data/lib/braintree/dispute.rb +1 -7
- data/lib/braintree/dispute/{history_event.rb → status_history.rb} +3 -1
- data/lib/braintree/dispute_gateway.rb +2 -7
- data/lib/braintree/error_codes.rb +144 -170
- data/lib/braintree/exceptions.rb +5 -3
- data/lib/braintree/gateway.rb +0 -14
- data/lib/braintree/{android_pay_card.rb → google_pay_card.rb} +1 -2
- data/lib/braintree/local_payment_completed.rb +1 -1
- data/lib/braintree/merchant_account_gateway.rb +2 -0
- data/lib/braintree/payment_instrument_type.rb +1 -5
- data/lib/braintree/payment_method_gateway.rb +5 -10
- data/lib/braintree/payment_method_parser.rb +1 -8
- data/lib/braintree/resource_collection.rb +8 -3
- data/lib/braintree/risk_data.rb +3 -1
- data/lib/braintree/subscription.rb +5 -5
- data/lib/braintree/successful_result.rb +0 -1
- data/lib/braintree/test/credit_card.rb +1 -0
- data/lib/braintree/test/nonce.rb +4 -23
- data/lib/braintree/three_d_secure_info.rb +22 -12
- data/lib/braintree/transaction.rb +12 -80
- data/lib/braintree/transaction/disbursement_details.rb +1 -0
- data/lib/braintree/transaction/{android_pay_details.rb → google_pay_details.rb} +1 -1
- data/lib/braintree/transaction/installment.rb +28 -0
- data/lib/braintree/transaction/installment/adjustment.rb +33 -0
- data/lib/braintree/transaction/paypal_details.rb +1 -0
- data/lib/braintree/transaction/subscription_details.rb +2 -0
- data/lib/braintree/transaction_gateway.rb +14 -21
- data/lib/braintree/transaction_search.rb +0 -1
- data/lib/braintree/util.rb +17 -2
- data/lib/braintree/version.rb +2 -2
- data/lib/braintree/webhook_notification.rb +0 -10
- data/lib/braintree/webhook_testing_gateway.rb +0 -43
- data/lib/braintree/xml/libxml.rb +1 -0
- data/lib/braintree/xml/parser.rb +11 -34
- data/spec/integration/braintree/address_spec.rb +2 -89
- data/spec/integration/braintree/client_api/spec_helper.rb +0 -26
- data/spec/integration/braintree/credit_card_spec.rb +13 -476
- data/spec/integration/braintree/customer_spec.rb +189 -362
- data/spec/integration/braintree/dispute_search_spec.rb +3 -3
- data/spec/integration/braintree/dispute_spec.rb +1 -2
- data/spec/integration/braintree/merchant_spec.rb +2 -2
- data/spec/integration/braintree/payment_method_spec.rb +254 -120
- data/spec/integration/braintree/payment_method_us_bank_account_spec.rb +8 -4
- data/spec/integration/braintree/subscription_spec.rb +11 -16
- data/spec/integration/braintree/transaction_search_spec.rb +3 -3
- data/spec/integration/braintree/transaction_spec.rb +324 -550
- data/spec/integration/braintree/transaction_us_bank_account_spec.rb +12 -6
- data/spec/integration/spec_helper.rb +8 -5
- data/spec/spec_helper.rb +2 -11
- data/spec/unit/braintree/address_spec.rb +0 -8
- data/spec/unit/braintree/credit_card_spec.rb +3 -22
- data/spec/unit/braintree/credit_card_verification_spec.rb +6 -2
- data/spec/unit/braintree/customer_spec.rb +2 -13
- data/spec/unit/braintree/dispute_spec.rb +1 -12
- data/spec/unit/braintree/http_spec.rb +3 -3
- data/spec/unit/braintree/local_payment_completed_spec.rb +14 -0
- data/spec/unit/braintree/resource_collection_spec.rb +29 -0
- data/spec/unit/braintree/risk_data_spec.rb +9 -5
- data/spec/unit/braintree/three_d_secure_info_spec.rb +32 -14
- data/spec/unit/braintree/transaction/installment_spec.rb +25 -0
- data/spec/unit/braintree/transaction/paypal_details_spec.rb +2 -0
- data/spec/unit/braintree/transaction_spec.rb +1 -35
- data/spec/unit/braintree/util_spec.rb +37 -3
- data/spec/unit/braintree/webhook_notification_spec.rb +1 -1
- data/spec/unit/braintree/xml/parser_spec.rb +21 -16
- metadata +29 -30
- data/lib/braintree/amex_express_checkout_card.rb +0 -40
- data/lib/braintree/coinbase_account.rb +0 -34
- data/lib/braintree/europe_bank_account.rb +0 -36
- data/lib/braintree/europe_bank_account_gateway.rb +0 -17
- data/lib/braintree/ideal_payment.rb +0 -61
- data/lib/braintree/ideal_payment_gateway.rb +0 -19
- data/lib/braintree/masterpass_card.rb +0 -83
- data/lib/braintree/transaction/amex_express_checkout_details.rb +0 -21
- data/lib/braintree/transaction/coinbase_details.rb +0 -16
- data/lib/braintree/transaction/ideal_payment_details.rb +0 -19
- data/lib/braintree/transaction/masterpass_card_details.rb +0 -49
- data/lib/braintree/transparent_redirect.rb +0 -40
- data/lib/braintree/transparent_redirect_gateway.rb +0 -105
- data/lib/braintree/xml/rexml.rb +0 -71
- data/spec/hacks/tcp_socket.rb +0 -18
- data/spec/integration/braintree/coinbase_spec.rb +0 -34
- data/spec/integration/braintree/masterpass_card_spec.rb +0 -97
- data/spec/integration/braintree/transparent_redirect_spec.rb +0 -268
- data/spec/unit/braintree/transparent_redirect_spec.rb +0 -223
- data/spec/unit/braintree/xml/rexml_spec.rb +0 -51
|
@@ -3,37 +3,55 @@ require File.expand_path(File.dirname(__FILE__) + "/../../spec_helper")
|
|
|
3
3
|
describe Braintree::ThreeDSecureInfo do
|
|
4
4
|
let(:three_d_secure_info) {
|
|
5
5
|
Braintree::ThreeDSecureInfo.new(
|
|
6
|
+
:acs_transaction_id => "acs_id",
|
|
7
|
+
:cavv => "cavvvalue",
|
|
8
|
+
:ds_transaction_id => "dstrxid",
|
|
9
|
+
:eci_flag => "06",
|
|
6
10
|
:enrolled => "Y",
|
|
7
|
-
:liability_shifted => true,
|
|
8
11
|
:liability_shift_possible => true,
|
|
9
|
-
:
|
|
10
|
-
:
|
|
12
|
+
:liability_shifted => true,
|
|
13
|
+
:pares_status => "Y",
|
|
11
14
|
:status => "authenticate_successful",
|
|
12
|
-
:eci_flag => "06",
|
|
13
|
-
:three_d_secure_version => "1.0.2",
|
|
14
|
-
:ds_transaction_id => "dstrxid",
|
|
15
15
|
:three_d_secure_authentication_id => "auth_id",
|
|
16
|
+
:three_d_secure_transaction_id => "trans_id",
|
|
17
|
+
:three_d_secure_version => "1.0.2",
|
|
18
|
+
:xid => "xidvalue",
|
|
19
|
+
:authentication => {
|
|
20
|
+
:trans_status => "authstatus",
|
|
21
|
+
:trans_status_reason => "authstatusreason"
|
|
22
|
+
},
|
|
23
|
+
:lookup => {
|
|
24
|
+
:trans_status => "lookupstatus",
|
|
25
|
+
:trans_status_reason => "lookupstatusreason"
|
|
26
|
+
}
|
|
16
27
|
)
|
|
17
28
|
}
|
|
18
29
|
|
|
19
30
|
describe "#initialize" do
|
|
20
31
|
it "sets attributes" do
|
|
21
|
-
three_d_secure_info.
|
|
22
|
-
three_d_secure_info.status.should == "authenticate_successful"
|
|
23
|
-
three_d_secure_info.liability_shifted.should == true
|
|
24
|
-
three_d_secure_info.liability_shift_possible.should == true
|
|
32
|
+
three_d_secure_info.acs_transaction_id.should == "acs_id"
|
|
25
33
|
three_d_secure_info.cavv.should == "cavvvalue"
|
|
26
|
-
three_d_secure_info.xid.should == "xidvalue"
|
|
27
|
-
three_d_secure_info.eci_flag.should == "06"
|
|
28
|
-
three_d_secure_info.three_d_secure_version.should == "1.0.2"
|
|
29
34
|
three_d_secure_info.ds_transaction_id.should == "dstrxid"
|
|
35
|
+
three_d_secure_info.eci_flag.should == "06"
|
|
36
|
+
three_d_secure_info.enrolled.should == "Y"
|
|
37
|
+
three_d_secure_info.liability_shift_possible.should == true
|
|
38
|
+
three_d_secure_info.liability_shifted.should == true
|
|
39
|
+
three_d_secure_info.pares_status.should == "Y"
|
|
40
|
+
three_d_secure_info.status.should == "authenticate_successful"
|
|
30
41
|
three_d_secure_info.three_d_secure_authentication_id.should == "auth_id"
|
|
42
|
+
three_d_secure_info.three_d_secure_transaction_id.should == "trans_id"
|
|
43
|
+
three_d_secure_info.three_d_secure_version.should == "1.0.2"
|
|
44
|
+
three_d_secure_info.xid.should == "xidvalue"
|
|
45
|
+
three_d_secure_info.lookup[:trans_status].should == "lookupstatus"
|
|
46
|
+
three_d_secure_info.lookup[:trans_status_reason].should == "lookupstatusreason"
|
|
47
|
+
three_d_secure_info.authentication[:trans_status].should == "authstatus"
|
|
48
|
+
three_d_secure_info.authentication[:trans_status_reason].should == "authstatusreason"
|
|
31
49
|
end
|
|
32
50
|
end
|
|
33
51
|
|
|
34
52
|
describe "inspect" do
|
|
35
53
|
it "prints the attributes" do
|
|
36
|
-
three_d_secure_info.inspect.should == %(#<ThreeDSecureInfo enrolled: "Y",
|
|
54
|
+
three_d_secure_info.inspect.should == %(#<ThreeDSecureInfo acs_transaction_id: "acs_id", authentication: {:trans_status=>"authstatus", :trans_status_reason=>"authstatusreason"}, cavv: "cavvvalue", ds_transaction_id: "dstrxid", eci_flag: "06", enrolled: "Y", liability_shift_possible: true, liability_shifted: true, lookup: {:trans_status=>"lookupstatus", :trans_status_reason=>"lookupstatusreason"}, pares_status: "Y", status: "authenticate_successful", three_d_secure_authentication_id: "auth_id", three_d_secure_transaction_id: "trans_id", three_d_secure_version: "1.0.2", xid: "xidvalue">)
|
|
37
55
|
end
|
|
38
56
|
end
|
|
39
57
|
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + "/../../spec_helper")
|
|
2
|
+
|
|
3
|
+
describe Braintree::Transaction::Installment do
|
|
4
|
+
describe "inspect" do
|
|
5
|
+
it "assigns all fields" do
|
|
6
|
+
adjustment_attributes = {
|
|
7
|
+
:amount => "0.98",
|
|
8
|
+
:kind => "REFUND",
|
|
9
|
+
:projected_disbursement_date => "2020-01-03 01:02:03Z",
|
|
10
|
+
:actual_disbursement_date => "2020-01-04 01:02:03Z",
|
|
11
|
+
}
|
|
12
|
+
installment_attributes = {
|
|
13
|
+
:id => "abc123",
|
|
14
|
+
:amount => "1.23",
|
|
15
|
+
:projected_disbursement_date => "2020-01-01 01:02:03Z",
|
|
16
|
+
:actual_disbursement_date => "2020-01-02 01:02:03Z",
|
|
17
|
+
:adjustments => [adjustment_attributes],
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
installment = Braintree::Transaction::Installment.new(installment_attributes)
|
|
21
|
+
|
|
22
|
+
expect(installment.inspect).to eq('#<id: "abc123", amount: 0.123e1, projected_disbursement_date: "2020-01-01 01:02:03Z", actual_disbursement_date: "2020-01-02 01:02:03Z", adjustments: [#<amount: 0.98e0, kind: "REFUND", projected_disbursement_date: "2020-01-03 01:02:03Z", actual_disbursement_date: "2020-01-04 01:02:03Z">]>')
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
end
|
|
@@ -5,6 +5,7 @@ describe Braintree::Transaction::PayPalDetails do
|
|
|
5
5
|
it "sets all fields" do
|
|
6
6
|
details = Braintree::Transaction::PayPalDetails.new(
|
|
7
7
|
:authorization_id => "id",
|
|
8
|
+
:billing_agreement_id => "billing-agreement-id",
|
|
8
9
|
:capture_id => "capture-id",
|
|
9
10
|
:custom_field => "custom-field",
|
|
10
11
|
:debug_id => "debug-id",
|
|
@@ -30,6 +31,7 @@ describe Braintree::Transaction::PayPalDetails do
|
|
|
30
31
|
)
|
|
31
32
|
|
|
32
33
|
expect(details.authorization_id).to eq("id")
|
|
34
|
+
expect(details.billing_agreement_id).to eq("billing-agreement-id")
|
|
33
35
|
expect(details.capture_id).to eq("capture-id")
|
|
34
36
|
expect(details.custom_field).to eq("custom-field")
|
|
35
37
|
expect(details.debug_id).to eq("debug-id")
|
|
@@ -17,14 +17,6 @@ describe Braintree::Transaction do
|
|
|
17
17
|
end
|
|
18
18
|
end
|
|
19
19
|
|
|
20
|
-
describe "self.create_from_transparent_redirect" do
|
|
21
|
-
it "raises an exception if the query string is forged" do
|
|
22
|
-
expect do
|
|
23
|
-
Braintree::Transaction.create_from_transparent_redirect("http_status=200&forged=query_string")
|
|
24
|
-
end.to raise_error(Braintree::ForgedQueryString)
|
|
25
|
-
end
|
|
26
|
-
end
|
|
27
|
-
|
|
28
20
|
describe "self.find" do
|
|
29
21
|
it "raises error if passed empty string" do
|
|
30
22
|
expect do
|
|
@@ -45,13 +37,6 @@ describe Braintree::Transaction do
|
|
|
45
37
|
end
|
|
46
38
|
end
|
|
47
39
|
|
|
48
|
-
describe "self.create_transaction_url" do
|
|
49
|
-
it "returns the url" do
|
|
50
|
-
config = Braintree::Configuration.instantiate
|
|
51
|
-
Braintree::Transaction.create_transaction_url.should == "http#{config.ssl? ? 's' : ''}://#{config.server}:#{config.port}/merchants/integration_merchant_id/transactions/all/create_via_transparent_redirect_request"
|
|
52
|
-
end
|
|
53
|
-
end
|
|
54
|
-
|
|
55
40
|
describe "self.submit_for_settlement" do
|
|
56
41
|
it "raises an ArgumentError if transaction_id is an invalid format" do
|
|
57
42
|
expect do
|
|
@@ -106,7 +91,7 @@ describe Braintree::Transaction do
|
|
|
106
91
|
}
|
|
107
92
|
)
|
|
108
93
|
disbursement = transaction.disbursement_details
|
|
109
|
-
disbursement.disbursement_date.should == "2013-04-03"
|
|
94
|
+
disbursement.disbursement_date.should == Date.parse("2013-04-03")
|
|
110
95
|
disbursement.settlement_amount.should == "120.00"
|
|
111
96
|
disbursement.settlement_currency_iso_code.should == "USD"
|
|
112
97
|
disbursement.settlement_currency_exchange_rate.should == "1"
|
|
@@ -171,25 +156,6 @@ describe Braintree::Transaction do
|
|
|
171
156
|
transaction.three_d_secure_info.liability_shift_possible.should == true
|
|
172
157
|
end
|
|
173
158
|
|
|
174
|
-
it "sets up ideal_payment_details" do
|
|
175
|
-
transaction = Braintree::Transaction._new(
|
|
176
|
-
:gateway,
|
|
177
|
-
:ideal_payment => {
|
|
178
|
-
:ideal_payment_id => "idealpayment_abc_123",
|
|
179
|
-
:ideal_transaction_id => "1150000008857321",
|
|
180
|
-
:masked_iban => "12************7890",
|
|
181
|
-
:bic => "RABONL2U",
|
|
182
|
-
:image_url => "http://www.example.com/ideal.png"
|
|
183
|
-
}
|
|
184
|
-
)
|
|
185
|
-
|
|
186
|
-
transaction.ideal_payment_details.ideal_payment_id.should == "idealpayment_abc_123"
|
|
187
|
-
transaction.ideal_payment_details.ideal_transaction_id.should == "1150000008857321"
|
|
188
|
-
transaction.ideal_payment_details.masked_iban.should == "12************7890"
|
|
189
|
-
transaction.ideal_payment_details.bic.should == "RABONL2U"
|
|
190
|
-
transaction.ideal_payment_details.image_url.should == "http://www.example.com/ideal.png"
|
|
191
|
-
end
|
|
192
|
-
|
|
193
159
|
it "sets up history attributes in status_history" do
|
|
194
160
|
time = Time.utc(2010,1,14)
|
|
195
161
|
transaction = Braintree::Transaction._new(
|
|
@@ -171,6 +171,22 @@ describe Braintree::Util do
|
|
|
171
171
|
end
|
|
172
172
|
end
|
|
173
173
|
|
|
174
|
+
describe "self.replace_key" do
|
|
175
|
+
it "replaces the target key with the replacement key" do
|
|
176
|
+
Braintree::Util.replace_key(
|
|
177
|
+
{:a => {:b => "some value"}},
|
|
178
|
+
:b,
|
|
179
|
+
:c).should == {:a => {:c => "some value"}}
|
|
180
|
+
end
|
|
181
|
+
|
|
182
|
+
it "returns hash with all of the original keys if the target key does not exist" do
|
|
183
|
+
Braintree::Util.replace_key(
|
|
184
|
+
{:some_key => "some value"},
|
|
185
|
+
:not_found,
|
|
186
|
+
:new_key).should == {:some_key => "some value"}
|
|
187
|
+
end
|
|
188
|
+
end
|
|
189
|
+
|
|
174
190
|
describe "self._flatten_hash_keys" do
|
|
175
191
|
it "flattens hash keys" do
|
|
176
192
|
Braintree::Util._flatten_hash_keys(:nested => {
|
|
@@ -259,7 +275,7 @@ describe Braintree::Util do
|
|
|
259
275
|
"UNSUPPORTED_CLIENT" => Braintree::UpgradeRequiredError,
|
|
260
276
|
"RESOURCE_LIMIT" => Braintree::TooManyRequestsError,
|
|
261
277
|
"INTERNAL" => Braintree::ServerError,
|
|
262
|
-
"SERVICE_AVAILABILITY" => Braintree::
|
|
278
|
+
"SERVICE_AVAILABILITY" => Braintree::ServiceUnavailableError,
|
|
263
279
|
}
|
|
264
280
|
|
|
265
281
|
errors.each do |graphQLError, exception|
|
|
@@ -321,6 +337,18 @@ describe Braintree::Util do
|
|
|
321
337
|
end.to raise_error(Braintree::AuthorizationError)
|
|
322
338
|
end
|
|
323
339
|
|
|
340
|
+
it "raises a NotFoundError if resource is not found" do
|
|
341
|
+
expect do
|
|
342
|
+
Braintree::Util.raise_exception_for_status_code(404)
|
|
343
|
+
end.to raise_error(Braintree::NotFoundError)
|
|
344
|
+
end
|
|
345
|
+
|
|
346
|
+
it "raises a RequestTimeoutError if the request times out" do
|
|
347
|
+
expect do
|
|
348
|
+
Braintree::Util.raise_exception_for_status_code(408)
|
|
349
|
+
end.to raise_error(Braintree::RequestTimeoutError)
|
|
350
|
+
end
|
|
351
|
+
|
|
324
352
|
it "raises an UpgradeRequired if the client library is EOL'd" do
|
|
325
353
|
expect do
|
|
326
354
|
Braintree::Util.raise_exception_for_status_code(426)
|
|
@@ -339,10 +367,16 @@ describe Braintree::Util do
|
|
|
339
367
|
end.to raise_error(Braintree::ServerError)
|
|
340
368
|
end
|
|
341
369
|
|
|
342
|
-
it "raises a
|
|
370
|
+
it "raises a ServiceUnavailableError if the server is unavailable" do
|
|
343
371
|
expect do
|
|
344
372
|
Braintree::Util.raise_exception_for_status_code(503)
|
|
345
|
-
end.to raise_error(Braintree::
|
|
373
|
+
end.to raise_error(Braintree::ServiceUnavailableError)
|
|
374
|
+
end
|
|
375
|
+
|
|
376
|
+
it "raises a GatewayTimeoutError if the gateway times out" do
|
|
377
|
+
expect do
|
|
378
|
+
Braintree::Util.raise_exception_for_status_code(504)
|
|
379
|
+
end.to raise_error(Braintree::GatewayTimeoutError)
|
|
346
380
|
end
|
|
347
381
|
|
|
348
382
|
it "raises an UnexpectedError if some other code is returned" do
|
|
@@ -275,7 +275,7 @@ describe Braintree::WebhookNotification do
|
|
|
275
275
|
notification.kind.should == Braintree::WebhookNotification::Kind::TransactionDisbursed
|
|
276
276
|
notification.transaction.id.should == "my_id"
|
|
277
277
|
notification.transaction.amount.should == 1_00
|
|
278
|
-
notification.transaction.disbursement_details.disbursement_date.should == "2013-07-09"
|
|
278
|
+
notification.transaction.disbursement_details.disbursement_date.should == Date.parse("2013-07-09")
|
|
279
279
|
end
|
|
280
280
|
|
|
281
281
|
it "builds a sample notification for a disbursement_exception webhook" do
|
|
@@ -57,24 +57,29 @@ describe Braintree::Xml::Parser do
|
|
|
57
57
|
xml.should parse_to(:root => {:customers => [{:name => "Adam"}, {:name => "Ben"}]})
|
|
58
58
|
end
|
|
59
59
|
|
|
60
|
-
it "parses
|
|
61
|
-
xml =
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
60
|
+
it "parses an array" do
|
|
61
|
+
xml = <<-END
|
|
62
|
+
<root>
|
|
63
|
+
<customers type="array">
|
|
64
|
+
<customer><name>Adam</name><customer-id>1</customer-id></customer>
|
|
65
|
+
<customer><name>Ben</name><customer-id>2</customer-id></customer>
|
|
66
|
+
</customers>
|
|
67
|
+
</root>
|
|
68
|
+
END
|
|
69
|
+
xml.should parse_to(:root => {:customers => [{:name => "Adam", :customer_id => "1"}, {:name => "Ben", :customer_id => "2"}]})
|
|
66
70
|
end
|
|
67
71
|
|
|
68
|
-
it "parses
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
72
|
+
it "parses nested objects" do
|
|
73
|
+
xml = <<-END
|
|
74
|
+
<root>
|
|
75
|
+
<paypal-details>
|
|
76
|
+
<deets type="array"><super-secrets><secret-code>1234</secret-code></super-secrets></deets>
|
|
77
|
+
<payer-email>abc@test.com</payer-email>
|
|
78
|
+
<payment-id>1234567890</payment-id>
|
|
79
|
+
</paypal-details>
|
|
80
|
+
</root>
|
|
81
|
+
END
|
|
82
|
+
xml.should parse_to(:root => {:paypal_details => {:deets => [{:secret_code => "1234"}], :payer_email => "abc@test.com", :payment_id => "1234567890"}})
|
|
78
83
|
end
|
|
79
84
|
end
|
|
80
85
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: braintree
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 3.3.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Braintree
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2021-03-15 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: builder
|
|
@@ -16,15 +16,30 @@ dependencies:
|
|
|
16
16
|
requirements:
|
|
17
17
|
- - ">="
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: 2.
|
|
19
|
+
version: 3.2.4
|
|
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: 2.
|
|
27
|
-
|
|
26
|
+
version: 3.2.4
|
|
27
|
+
- !ruby/object:Gem::Dependency
|
|
28
|
+
name: libxml-ruby
|
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
|
30
|
+
requirements:
|
|
31
|
+
- - ">="
|
|
32
|
+
- !ruby/object:Gem::Version
|
|
33
|
+
version: 3.2.0
|
|
34
|
+
type: :runtime
|
|
35
|
+
prerelease: false
|
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
37
|
+
requirements:
|
|
38
|
+
- - ">="
|
|
39
|
+
- !ruby/object:Gem::Version
|
|
40
|
+
version: 3.2.0
|
|
41
|
+
description: Resources and tools for developers to integrate Braintree's global payments
|
|
42
|
+
platform.
|
|
28
43
|
email: code@getbraintree.com
|
|
29
44
|
executables: []
|
|
30
45
|
extensions: []
|
|
@@ -41,8 +56,6 @@ files:
|
|
|
41
56
|
- lib/braintree/address/country_names.rb
|
|
42
57
|
- lib/braintree/address_gateway.rb
|
|
43
58
|
- lib/braintree/advanced_search.rb
|
|
44
|
-
- lib/braintree/amex_express_checkout_card.rb
|
|
45
|
-
- lib/braintree/android_pay_card.rb
|
|
46
59
|
- lib/braintree/apple_pay.rb
|
|
47
60
|
- lib/braintree/apple_pay_card.rb
|
|
48
61
|
- lib/braintree/apple_pay_gateway.rb
|
|
@@ -52,7 +65,6 @@ files:
|
|
|
52
65
|
- lib/braintree/bin_data.rb
|
|
53
66
|
- lib/braintree/client_token.rb
|
|
54
67
|
- lib/braintree/client_token_gateway.rb
|
|
55
|
-
- lib/braintree/coinbase_account.rb
|
|
56
68
|
- lib/braintree/configuration.rb
|
|
57
69
|
- lib/braintree/connected_merchant_paypal_status_changed.rb
|
|
58
70
|
- lib/braintree/connected_merchant_status_transitioned.rb
|
|
@@ -72,7 +84,7 @@ files:
|
|
|
72
84
|
- lib/braintree/discount_gateway.rb
|
|
73
85
|
- lib/braintree/dispute.rb
|
|
74
86
|
- lib/braintree/dispute/evidence.rb
|
|
75
|
-
- lib/braintree/dispute/
|
|
87
|
+
- lib/braintree/dispute/status_history.rb
|
|
76
88
|
- lib/braintree/dispute/transaction.rb
|
|
77
89
|
- lib/braintree/dispute/transaction_details.rb
|
|
78
90
|
- lib/braintree/dispute_gateway.rb
|
|
@@ -82,19 +94,15 @@ files:
|
|
|
82
94
|
- lib/braintree/error_codes.rb
|
|
83
95
|
- lib/braintree/error_result.rb
|
|
84
96
|
- lib/braintree/errors.rb
|
|
85
|
-
- lib/braintree/europe_bank_account.rb
|
|
86
|
-
- lib/braintree/europe_bank_account_gateway.rb
|
|
87
97
|
- lib/braintree/exceptions.rb
|
|
88
98
|
- lib/braintree/facilitated_details.rb
|
|
89
99
|
- lib/braintree/facilitator_details.rb
|
|
90
100
|
- lib/braintree/gateway.rb
|
|
101
|
+
- lib/braintree/google_pay_card.rb
|
|
91
102
|
- lib/braintree/granted_payment_instrument_update.rb
|
|
92
103
|
- lib/braintree/graphql_client.rb
|
|
93
104
|
- lib/braintree/http.rb
|
|
94
|
-
- lib/braintree/ideal_payment.rb
|
|
95
|
-
- lib/braintree/ideal_payment_gateway.rb
|
|
96
105
|
- lib/braintree/local_payment_completed.rb
|
|
97
|
-
- lib/braintree/masterpass_card.rb
|
|
98
106
|
- lib/braintree/merchant.rb
|
|
99
107
|
- lib/braintree/merchant_account.rb
|
|
100
108
|
- lib/braintree/merchant_account/address_details.rb
|
|
@@ -144,16 +152,14 @@ files:
|
|
|
144
152
|
- lib/braintree/three_d_secure_info.rb
|
|
145
153
|
- lib/braintree/transaction.rb
|
|
146
154
|
- lib/braintree/transaction/address_details.rb
|
|
147
|
-
- lib/braintree/transaction/amex_express_checkout_details.rb
|
|
148
|
-
- lib/braintree/transaction/android_pay_details.rb
|
|
149
155
|
- lib/braintree/transaction/apple_pay_details.rb
|
|
150
|
-
- lib/braintree/transaction/coinbase_details.rb
|
|
151
156
|
- lib/braintree/transaction/credit_card_details.rb
|
|
152
157
|
- lib/braintree/transaction/customer_details.rb
|
|
153
158
|
- lib/braintree/transaction/disbursement_details.rb
|
|
154
|
-
- lib/braintree/transaction/
|
|
159
|
+
- lib/braintree/transaction/google_pay_details.rb
|
|
160
|
+
- lib/braintree/transaction/installment.rb
|
|
161
|
+
- lib/braintree/transaction/installment/adjustment.rb
|
|
155
162
|
- lib/braintree/transaction/local_payment_details.rb
|
|
156
|
-
- lib/braintree/transaction/masterpass_card_details.rb
|
|
157
163
|
- lib/braintree/transaction/paypal_details.rb
|
|
158
164
|
- lib/braintree/transaction/paypal_here_details.rb
|
|
159
165
|
- lib/braintree/transaction/samsung_pay_card_details.rb
|
|
@@ -166,8 +172,6 @@ files:
|
|
|
166
172
|
- lib/braintree/transaction_line_item.rb
|
|
167
173
|
- lib/braintree/transaction_line_item_gateway.rb
|
|
168
174
|
- lib/braintree/transaction_search.rb
|
|
169
|
-
- lib/braintree/transparent_redirect.rb
|
|
170
|
-
- lib/braintree/transparent_redirect_gateway.rb
|
|
171
175
|
- lib/braintree/unknown_payment_method.rb
|
|
172
176
|
- lib/braintree/us_bank_account.rb
|
|
173
177
|
- lib/braintree/us_bank_account_gateway.rb
|
|
@@ -188,14 +192,12 @@ files:
|
|
|
188
192
|
- lib/braintree/xml/generator.rb
|
|
189
193
|
- lib/braintree/xml/libxml.rb
|
|
190
194
|
- lib/braintree/xml/parser.rb
|
|
191
|
-
- lib/braintree/xml/rexml.rb
|
|
192
195
|
- lib/ssl/api_braintreegateway_com.ca.crt
|
|
193
196
|
- lib/ssl/securetrust_ca.crt
|
|
194
197
|
- spec/fixtures/files/bt_logo.png
|
|
195
198
|
- spec/fixtures/files/gif_extension_bt_logo.gif
|
|
196
199
|
- spec/fixtures/files/malformed_pdf.pdf
|
|
197
200
|
- spec/fixtures/files/too_long.pdf
|
|
198
|
-
- spec/hacks/tcp_socket.rb
|
|
199
201
|
- spec/integration/braintree/add_on_spec.rb
|
|
200
202
|
- spec/integration/braintree/address_spec.rb
|
|
201
203
|
- spec/integration/braintree/advanced_search_spec.rb
|
|
@@ -203,7 +205,6 @@ files:
|
|
|
203
205
|
- spec/integration/braintree/braintree_gateway_spec.rb
|
|
204
206
|
- spec/integration/braintree/client_api/client_token_spec.rb
|
|
205
207
|
- spec/integration/braintree/client_api/spec_helper.rb
|
|
206
|
-
- spec/integration/braintree/coinbase_spec.rb
|
|
207
208
|
- spec/integration/braintree/credit_card_spec.rb
|
|
208
209
|
- spec/integration/braintree/credit_card_verification_search_spec.rb
|
|
209
210
|
- spec/integration/braintree/credit_card_verification_spec.rb
|
|
@@ -217,7 +218,6 @@ files:
|
|
|
217
218
|
- spec/integration/braintree/error_codes_spec.rb
|
|
218
219
|
- spec/integration/braintree/graphql_client_spec.rb
|
|
219
220
|
- spec/integration/braintree/http_spec.rb
|
|
220
|
-
- spec/integration/braintree/masterpass_card_spec.rb
|
|
221
221
|
- spec/integration/braintree/merchant_account_spec.rb
|
|
222
222
|
- spec/integration/braintree/merchant_spec.rb
|
|
223
223
|
- spec/integration/braintree/oauth_spec.rb
|
|
@@ -235,7 +235,6 @@ files:
|
|
|
235
235
|
- spec/integration/braintree/transaction_search_spec.rb
|
|
236
236
|
- spec/integration/braintree/transaction_spec.rb
|
|
237
237
|
- spec/integration/braintree/transaction_us_bank_account_spec.rb
|
|
238
|
-
- spec/integration/braintree/transparent_redirect_spec.rb
|
|
239
238
|
- spec/integration/braintree/us_bank_account_spec.rb
|
|
240
239
|
- spec/integration/braintree/us_bank_account_verification_search_spec.rb
|
|
241
240
|
- spec/integration/braintree/us_bank_account_verification_spec.rb
|
|
@@ -282,10 +281,10 @@ files:
|
|
|
282
281
|
- spec/unit/braintree/transaction/credit_card_details_spec.rb
|
|
283
282
|
- spec/unit/braintree/transaction/customer_details_spec.rb
|
|
284
283
|
- spec/unit/braintree/transaction/deposit_details_spec.rb
|
|
284
|
+
- spec/unit/braintree/transaction/installment_spec.rb
|
|
285
285
|
- spec/unit/braintree/transaction/paypal_details_spec.rb
|
|
286
286
|
- spec/unit/braintree/transaction_search_spec.rb
|
|
287
287
|
- spec/unit/braintree/transaction_spec.rb
|
|
288
|
-
- spec/unit/braintree/transparent_redirect_spec.rb
|
|
289
288
|
- spec/unit/braintree/unknown_payment_method_spec.rb
|
|
290
289
|
- spec/unit/braintree/us_bank_account_spec.rb
|
|
291
290
|
- spec/unit/braintree/us_bank_account_verification_search_spec.rb
|
|
@@ -296,7 +295,6 @@ files:
|
|
|
296
295
|
- spec/unit/braintree/webhook_notification_spec.rb
|
|
297
296
|
- spec/unit/braintree/xml/libxml_spec.rb
|
|
298
297
|
- spec/unit/braintree/xml/parser_spec.rb
|
|
299
|
-
- spec/unit/braintree/xml/rexml_spec.rb
|
|
300
298
|
- spec/unit/braintree/xml_spec.rb
|
|
301
299
|
- spec/unit/braintree_spec.rb
|
|
302
300
|
- spec/unit/spec_helper.rb
|
|
@@ -307,6 +305,7 @@ metadata:
|
|
|
307
305
|
bug_tracker_uri: https://github.com/braintree/braintree_ruby/issues
|
|
308
306
|
changelog_uri: https://github.com/braintree/braintree_ruby/blob/master/CHANGELOG.md
|
|
309
307
|
source_code_uri: https://github.com/braintree/braintree_ruby
|
|
308
|
+
documentation_uri: https://developers.braintreepayments.com/
|
|
310
309
|
post_install_message:
|
|
311
310
|
rdoc_options: []
|
|
312
311
|
require_paths:
|
|
@@ -315,7 +314,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
315
314
|
requirements:
|
|
316
315
|
- - ">="
|
|
317
316
|
- !ruby/object:Gem::Version
|
|
318
|
-
version:
|
|
317
|
+
version: 2.5.0
|
|
319
318
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
320
319
|
requirements:
|
|
321
320
|
- - ">="
|
|
@@ -325,5 +324,5 @@ requirements: []
|
|
|
325
324
|
rubygems_version: 3.0.8
|
|
326
325
|
signing_key:
|
|
327
326
|
specification_version: 4
|
|
328
|
-
summary: Braintree
|
|
327
|
+
summary: Braintree Ruby Server SDK
|
|
329
328
|
test_files: []
|