braintree 2.49.0 → 2.50.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -42,14 +42,13 @@ describe Braintree::PaymentMethodNonce do
42
42
 
43
43
  describe "self.find" do
44
44
  it "finds and returns the nonce if one was found" do
45
- result = Braintree::PaymentMethodNonce.find("threedsecurednonce")
45
+ result = Braintree::PaymentMethodNonce.find("fake-valid-nonce")
46
46
 
47
47
  nonce = result.payment_method_nonce
48
48
 
49
49
  result.should be_success
50
- nonce.nonce.should == "threedsecurednonce"
50
+ nonce.nonce.should == "fake-valid-nonce"
51
51
  nonce.type.should == "CreditCard"
52
- nonce.three_d_secure_info.liability_shifted.should == true
53
52
  end
54
53
 
55
54
  it "returns null 3ds_info if there isn't any" do
@@ -737,6 +737,47 @@ describe Braintree::PaymentMethod do
737
737
  end
738
738
 
739
739
  describe "self.delete" do
740
+ it "deletes an android pay card" do
741
+ customer = Braintree::Customer.create!
742
+
743
+ create_result = Braintree::PaymentMethod.create(
744
+ :payment_method_nonce => Braintree::Test::Nonce::AndroidPayDiscover,
745
+ :customer_id => customer.id
746
+ )
747
+
748
+ token = create_result.payment_method.token
749
+
750
+ android_card = Braintree::PaymentMethod.find(token)
751
+ android_card.should be_a(Braintree::AndroidPayCard)
752
+
753
+ delete_result = Braintree::PaymentMethod.delete(token)
754
+ delete_result.success?.should == true
755
+
756
+ expect do
757
+ Braintree::PaymentMethod.find(token)
758
+ end.to raise_error(Braintree::NotFoundError)
759
+ end
760
+
761
+ it "deletes an apple pay card" do
762
+ customer = Braintree::Customer.create!
763
+
764
+ create_result = Braintree::PaymentMethod.create(
765
+ :payment_method_nonce => Braintree::Test::Nonce::ApplePayAmEx,
766
+ :customer_id => customer.id
767
+ )
768
+ token = create_result.payment_method.token
769
+
770
+ apple_pay_card = Braintree::PaymentMethod.find(token)
771
+ apple_pay_card.should be_a(Braintree::ApplePayCard)
772
+
773
+ delete_result = Braintree::PaymentMethod.delete(token)
774
+ delete_result.success?.should == true
775
+
776
+ expect do
777
+ Braintree::PaymentMethod.find(token)
778
+ end.to raise_error(Braintree::NotFoundError)
779
+ end
780
+
740
781
  it "deletes a paypal account" do
741
782
  customer = Braintree::Customer.create!
742
783
  paypal_account_token = "PAYPAL_ACCOUNT_TOKEN_#{rand(36**3).to_s(36)}"
@@ -753,6 +794,7 @@ describe Braintree::PaymentMethod do
753
794
  paypal_account.should be_a(Braintree::PayPalAccount)
754
795
 
755
796
  result = Braintree::PaymentMethod.delete(paypal_account_token)
797
+ result.success?.should == true
756
798
 
757
799
  expect do
758
800
  Braintree::PaymentMethod.find(paypal_account_token)
@@ -777,12 +819,22 @@ describe Braintree::PaymentMethod do
777
819
  :customer_id => customer.id
778
820
  )
779
821
 
780
- Braintree::PaymentMethod.delete(token)
822
+ result = Braintree::PaymentMethod.delete(token)
823
+ result.success?.should == true
781
824
 
782
825
  expect do
783
826
  Braintree::PaymentMethod.find(token)
784
827
  end.to raise_error(Braintree::NotFoundError, "payment method with token \"#{token}\" not found")
785
828
  end
829
+
830
+ it "raises a NotFoundError exception if payment method cannot be found" do
831
+ token = "CREDIT_CARD_#{rand(36**3).to_s(36)}"
832
+ customer = Braintree::Customer.create!
833
+
834
+ expect do
835
+ Braintree::PaymentMethod.delete(token)
836
+ end.to raise_error(Braintree::NotFoundError)
837
+ end
786
838
  end
787
839
 
788
840
  describe "self.update" do
@@ -2306,11 +2306,27 @@ describe Braintree::Transaction do
2306
2306
  result.errors.for(:transaction).on(:amount)[0].code.should == Braintree::ErrorCodes::Transaction::AmountIsRequired
2307
2307
  end
2308
2308
 
2309
+ it "works with Apple Pay params" do
2310
+ params = {
2311
+ :amount => "3.12",
2312
+ :apple_pay_card => {
2313
+ :number => "370295001292109",
2314
+ :cardholder_name => "JANE SMITH",
2315
+ :cryptogram => "AAAAAAAA/COBt84dnIEcwAA3gAAGhgEDoLABAAhAgAABAAAALnNCLw==",
2316
+ :expiration_month => "10",
2317
+ :expiration_year => "14",
2318
+ }
2319
+ }
2320
+ result = Braintree::Transaction.sale(params)
2321
+ result.success?.should == true
2322
+ end
2323
+
2309
2324
  context "Amex Pay with Points" do
2310
2325
  context "transaction creation" do
2311
2326
  it "succeeds when submit_for_settlement is true" do
2312
2327
  result = Braintree::Transaction.sale(
2313
2328
  :amount => Braintree::Test::TransactionAmounts::Authorize,
2329
+ :merchant_account_id => SpecHelper::FakeAmexDirectMerchantAccountId,
2314
2330
  :credit_card => {
2315
2331
  :number => Braintree::Test::CreditCardNumbers::AmexPayWithPoints::Success,
2316
2332
  :expiration_date => "05/2009"
@@ -2332,6 +2348,7 @@ describe Braintree::Transaction do
2332
2348
  it "succeeds even if the card is ineligible" do
2333
2349
  result = Braintree::Transaction.sale(
2334
2350
  :amount => Braintree::Test::TransactionAmounts::Authorize,
2351
+ :merchant_account_id => SpecHelper::FakeAmexDirectMerchantAccountId,
2335
2352
  :credit_card => {
2336
2353
  :number => Braintree::Test::CreditCardNumbers::AmexPayWithPoints::IneligibleCard,
2337
2354
  :expiration_date => "05/2009"
@@ -2353,6 +2370,7 @@ describe Braintree::Transaction do
2353
2370
  it "succeeds even if the card's balance is insufficient" do
2354
2371
  result = Braintree::Transaction.sale(
2355
2372
  :amount => Braintree::Test::TransactionAmounts::Authorize,
2373
+ :merchant_account_id => SpecHelper::FakeAmexDirectMerchantAccountId,
2356
2374
  :credit_card => {
2357
2375
  :number => Braintree::Test::CreditCardNumbers::AmexPayWithPoints::InsufficientPoints,
2358
2376
  :expiration_date => "05/2009"
@@ -2376,6 +2394,7 @@ describe Braintree::Transaction do
2376
2394
  it "succeeds" do
2377
2395
  result = Braintree::Transaction.sale(
2378
2396
  :amount => Braintree::Test::TransactionAmounts::Authorize,
2397
+ :merchant_account_id => SpecHelper::FakeAmexDirectMerchantAccountId,
2379
2398
  :credit_card => {
2380
2399
  :number => Braintree::Test::CreditCardNumbers::AmexPayWithPoints::Success,
2381
2400
  :expiration_date => "05/2009"
@@ -2399,6 +2418,7 @@ describe Braintree::Transaction do
2399
2418
  it "succeeds even if the card is ineligible" do
2400
2419
  result = Braintree::Transaction.sale(
2401
2420
  :amount => Braintree::Test::TransactionAmounts::Authorize,
2421
+ :merchant_account_id => SpecHelper::FakeAmexDirectMerchantAccountId,
2402
2422
  :credit_card => {
2403
2423
  :number => Braintree::Test::CreditCardNumbers::AmexPayWithPoints::IneligibleCard,
2404
2424
  :expiration_date => "05/2009"
@@ -2423,6 +2443,7 @@ describe Braintree::Transaction do
2423
2443
  it "succeeds even if the card's balance is insufficient" do
2424
2444
  result = Braintree::Transaction.sale(
2425
2445
  :amount => Braintree::Test::TransactionAmounts::Authorize,
2446
+ :merchant_account_id => SpecHelper::FakeAmexDirectMerchantAccountId,
2426
2447
  :credit_card => {
2427
2448
  :number => Braintree::Test::CreditCardNumbers::AmexPayWithPoints::IneligibleCard,
2428
2449
  :expiration_date => "05/2009"
@@ -2582,6 +2603,107 @@ describe Braintree::Transaction do
2582
2603
  end
2583
2604
  end
2584
2605
 
2606
+
2607
+ describe "submit for partial settlement" do
2608
+ it "successfully submits multiple times for partial settlement" do
2609
+ authorized_transaction = Braintree::Transaction.sale!(
2610
+ :amount => Braintree::Test::TransactionAmounts::Authorize,
2611
+ :merchant_account_id => SpecHelper::DefaultMerchantAccountId,
2612
+ :credit_card => {
2613
+ :number => Braintree::Test::CreditCardNumbers::Visa,
2614
+ :expiration_date => "06/2009"
2615
+ }
2616
+ )
2617
+
2618
+ result = Braintree::Transaction.submit_for_partial_settlement(authorized_transaction.id, 100)
2619
+ result.success?.should == true
2620
+ partial_settlement_transaction1 = result.transaction
2621
+ partial_settlement_transaction1.amount.should == 100
2622
+ partial_settlement_transaction1.type.should == Braintree::Transaction::Type::Sale
2623
+ partial_settlement_transaction1.status.should == Braintree::Transaction::Status::SubmittedForSettlement
2624
+ partial_settlement_transaction1.authorized_transaction_id.should == authorized_transaction.id
2625
+
2626
+ refreshed_authorized_transaction = Braintree::Transaction.find(authorized_transaction.id)
2627
+ refreshed_authorized_transaction.status.should == Braintree::Transaction::Status::SettlementPending
2628
+ refreshed_authorized_transaction.partial_settlement_transaction_ids.should == [partial_settlement_transaction1.id]
2629
+
2630
+ result = Braintree::Transaction.submit_for_partial_settlement(authorized_transaction.id, 800)
2631
+ result.success?.should == true
2632
+ partial_settlement_transaction2 = result.transaction
2633
+ partial_settlement_transaction2.amount.should == 800
2634
+ partial_settlement_transaction2.type.should == Braintree::Transaction::Type::Sale
2635
+ partial_settlement_transaction2.status.should == Braintree::Transaction::Status::SubmittedForSettlement
2636
+ partial_settlement_transaction2.authorized_transaction_id.should == authorized_transaction.id
2637
+
2638
+ refreshed_authorized_transaction = Braintree::Transaction.find(authorized_transaction.id)
2639
+ refreshed_authorized_transaction.status.should == Braintree::Transaction::Status::SettlementPending
2640
+ refreshed_authorized_transaction.partial_settlement_transaction_ids.sort.should == [partial_settlement_transaction1.id, partial_settlement_transaction2.id].sort
2641
+ end
2642
+
2643
+ it "returns an error with an unsupported processor" do
2644
+ authorized_transaction = Braintree::Transaction.sale!(
2645
+ :amount => Braintree::Test::TransactionAmounts::Authorize,
2646
+ :merchant_account_id => SpecHelper::FakeAmexDirectMerchantAccountId,
2647
+ :credit_card => {
2648
+ :number => Braintree::Test::CreditCardNumbers::AmexPayWithPoints::Success,
2649
+ :expiration_date => "05/2009"
2650
+ }
2651
+ )
2652
+
2653
+ result = Braintree::Transaction.submit_for_partial_settlement(authorized_transaction.id, 100)
2654
+ result.success?.should == false
2655
+ result.errors.for(:transaction).on(:base)[0].code.should == Braintree::ErrorCodes::Transaction::ProcessorDoesNotSupportPartialSettlement
2656
+ end
2657
+
2658
+ it "returns an error with an invalid payment instrument type" do
2659
+ authorized_transaction = Braintree::Transaction.sale!(
2660
+ :amount => Braintree::Test::TransactionAmounts::Authorize,
2661
+ :merchant_account_id => SpecHelper::DefaultMerchantAccountId,
2662
+ :payment_method_nonce => Braintree::Test::Nonce::ApplePayAmEx
2663
+ )
2664
+
2665
+ result = Braintree::Transaction.submit_for_partial_settlement(authorized_transaction.id, 100)
2666
+ result.success?.should == false
2667
+ result.errors.for(:transaction).on(:base)[0].code.should == Braintree::ErrorCodes::Transaction::PaymentInstrumentTypeIsNotAccepted
2668
+ end
2669
+
2670
+ it "returns an error result if settlement amount greater than authorized amount" do
2671
+ authorized_transaction = Braintree::Transaction.sale!(
2672
+ :amount => Braintree::Test::TransactionAmounts::Authorize,
2673
+ :merchant_account_id => SpecHelper::DefaultMerchantAccountId,
2674
+ :credit_card => {
2675
+ :number => Braintree::Test::CreditCardNumbers::Visa,
2676
+ :expiration_date => "06/2009"
2677
+ }
2678
+ )
2679
+
2680
+ result = Braintree::Transaction.submit_for_partial_settlement(authorized_transaction.id, 100)
2681
+ result.success?.should == true
2682
+
2683
+ result = Braintree::Transaction.submit_for_partial_settlement(authorized_transaction.id, 901)
2684
+ result.success?.should == false
2685
+ result.errors.for(:transaction).on(:amount)[0].code.should == Braintree::ErrorCodes::Transaction::SettlementAmountIsTooLarge
2686
+ end
2687
+
2688
+ it "returns an error result if status is not authorized" do
2689
+ authorized_transaction = Braintree::Transaction.sale!(
2690
+ :amount => Braintree::Test::TransactionAmounts::Authorize,
2691
+ :merchant_account_id => SpecHelper::DefaultMerchantAccountId,
2692
+ :credit_card => {
2693
+ :number => Braintree::Test::CreditCardNumbers::Visa,
2694
+ :expiration_date => "06/2009"
2695
+ }
2696
+ )
2697
+
2698
+ result = Braintree::Transaction.void(authorized_transaction.id)
2699
+ result.success?.should == true
2700
+
2701
+ result = Braintree::Transaction.submit_for_partial_settlement(authorized_transaction.id, 100)
2702
+ result.success?.should == false
2703
+ result.errors.for(:transaction).on(:base)[0].code.should == Braintree::ErrorCodes::Transaction::CannotSubmitForSettlement
2704
+ end
2705
+ end
2706
+
2585
2707
  describe "self.release_from_escrow" do
2586
2708
  it "returns the transaction if successful" do
2587
2709
  original_transaction = create_escrowed_transcation
@@ -3696,4 +3818,86 @@ describe Braintree::Transaction do
3696
3818
  end
3697
3819
  end
3698
3820
  end
3821
+
3822
+ context "shared payment method" do
3823
+ before(:each) do
3824
+ partner_merchant_gateway = Braintree::Gateway.new(
3825
+ :merchant_id => "integration_merchant_public_id",
3826
+ :public_key => "oauth_app_partner_user_public_key",
3827
+ :private_key => "oauth_app_partner_user_private_key",
3828
+ :environment => :development,
3829
+ :logger => Logger.new("/dev/null")
3830
+ )
3831
+ @customer = partner_merchant_gateway.customer.create(
3832
+ :first_name => "Joe",
3833
+ :last_name => "Brown",
3834
+ :company => "ExampleCo",
3835
+ :email => "joe@example.com",
3836
+ :phone => "312.555.1234",
3837
+ :fax => "614.555.5678",
3838
+ :website => "www.example.com"
3839
+ ).customer
3840
+ @address = partner_merchant_gateway.address.create(
3841
+ :customer_id => @customer.id,
3842
+ :first_name => "Testy",
3843
+ :last_name => "McTesterson"
3844
+ ).address
3845
+ @credit_card = partner_merchant_gateway.credit_card.create(
3846
+ :customer_id => @customer.id,
3847
+ :cardholder_name => "Adam Davis",
3848
+ :number => Braintree::Test::CreditCardNumbers::Visa,
3849
+ :expiration_date => "05/2009"
3850
+ ).credit_card
3851
+
3852
+ oauth_gateway = Braintree::Gateway.new(
3853
+ :client_id => "client_id$development$integration_client_id",
3854
+ :client_secret => "client_secret$development$integration_client_secret",
3855
+ :logger => Logger.new("/dev/null")
3856
+ )
3857
+ access_token = Braintree::OAuthTestHelper.create_token(oauth_gateway, {
3858
+ :merchant_public_id => "integration_merchant_id",
3859
+ :scope => "grant_payment_method,shared_vault_transactions"
3860
+ }).credentials.access_token
3861
+
3862
+ @granting_gateway = Braintree::Gateway.new(
3863
+ :access_token => access_token,
3864
+ :logger => Logger.new("/dev/null")
3865
+ )
3866
+ end
3867
+
3868
+ it "oauth app details are returned on transaction created via nonce granting" do
3869
+ grant_result = @granting_gateway.credit_card.grant(@credit_card.token, false)
3870
+
3871
+ result = Braintree::Transaction.sale(
3872
+ :payment_method_nonce => grant_result.nonce,
3873
+ :amount => Braintree::Test::TransactionAmounts::Authorize
3874
+ )
3875
+ result.transaction.facilitator_details.should_not == nil
3876
+ result.transaction.facilitator_details.oauth_application_client_id.should == "client_id$development$integration_client_id"
3877
+ result.transaction.facilitator_details.oauth_application_name.should == "PseudoShop"
3878
+ end
3879
+
3880
+ it "allows transactions to be created with a shared payment method, customer, billing and shipping addresses" do
3881
+ result = @granting_gateway.transaction.sale(
3882
+ :shared_payment_method_token => @credit_card.token,
3883
+ :shared_customer_id => @customer.id,
3884
+ :shared_shipping_address_id => @address.id,
3885
+ :shared_billing_address_id => @address.id,
3886
+ :amount => Braintree::Test::TransactionAmounts::Authorize
3887
+ )
3888
+ result.success?.should == true
3889
+ result.transaction.shipping_details.first_name.should == @address.first_name
3890
+ result.transaction.billing_details.first_name.should == @address.first_name
3891
+ end
3892
+
3893
+ it "oauth app details are returned on transaction created via a shared_payment_method_token" do
3894
+ result = @granting_gateway.transaction.sale(
3895
+ :shared_payment_method_token => @credit_card.token,
3896
+ :amount => Braintree::Test::TransactionAmounts::Authorize
3897
+ )
3898
+ result.transaction.facilitator_details.should_not == nil
3899
+ result.transaction.facilitator_details.oauth_application_client_id.should == "client_id$development$integration_client_id"
3900
+ result.transaction.facilitator_details.oauth_application_name.should == "PseudoShop"
3901
+ end
3902
+ end
3699
3903
  end
@@ -37,6 +37,7 @@ unless defined?(SPEC_HELPER_LOADED)
37
37
  NonDefaultMerchantAccountId = "sandbox_credit_card_non_default"
38
38
  NonDefaultSubMerchantAccountId = "sandbox_sub_merchant_account"
39
39
  ThreeDSecureMerchantAccountId = "three_d_secure_merchant_account"
40
+ FakeAmexDirectMerchantAccountId = "fake_amex_direct_usd"
40
41
 
41
42
  TrialPlan = {
42
43
  :description => "Plan for integration tests -- with trial",
@@ -156,6 +156,33 @@ describe Braintree::CreditCard do
156
156
  end
157
157
  end
158
158
 
159
+ describe "self.grant" do
160
+ it "raises error if passed empty string" do
161
+ expect do
162
+ Braintree::CreditCard.grant("", false)
163
+ end.to raise_error(ArgumentError)
164
+ end
165
+
166
+ it "raises error if passed invalid string" do
167
+ expect do
168
+ Braintree::CreditCard.grant("\t", false)
169
+ end.to raise_error(ArgumentError)
170
+ end
171
+
172
+ it "raises error if passed nil" do
173
+ expect do
174
+ Braintree::CreditCard.grant(nil, false)
175
+ end.to raise_error(ArgumentError)
176
+ end
177
+
178
+ it "does not raise an error if token does not respond to strip" do
179
+ Braintree::Http.stub(:new).and_return double.as_null_object
180
+ expect do
181
+ Braintree::CreditCard.grant(8675309, false)
182
+ end.to_not raise_error
183
+ end
184
+ end
185
+
159
186
  describe "inspect" do
160
187
  it "includes the token first" do
161
188
  output = Braintree::CreditCard._new(:gateway, :token => "cc123").inspect
@@ -304,6 +304,30 @@ describe Braintree::WebhookNotification do
304
304
  end
305
305
  end
306
306
 
307
+ describe "check?" do
308
+ it "returns true for check webhook kinds" do
309
+ sample_notification = Braintree::WebhookTesting.sample_notification(
310
+ Braintree::WebhookNotification::Kind::Check,
311
+ nil
312
+ )
313
+
314
+ notification = Braintree::WebhookNotification.parse(sample_notification[:bt_signature], sample_notification[:bt_payload].rstrip)
315
+
316
+ notification.check?.should == true
317
+ end
318
+
319
+ it "returns false for non-check webhook kinds" do
320
+ sample_notification = Braintree::WebhookTesting.sample_notification(
321
+ Braintree::WebhookNotification::Kind::SubscriptionWentPastDue,
322
+ nil
323
+ )
324
+
325
+ notification = Braintree::WebhookNotification.parse(sample_notification[:bt_signature], sample_notification[:bt_payload].rstrip)
326
+
327
+ notification.check?.should == false
328
+ end
329
+ end
330
+
307
331
  describe "self.verify" do
308
332
  it "creates a verification string" do
309
333
  response = Braintree::WebhookNotification.verify("20f9f8ed05f77439fe955c977e4c8a53")
metadata CHANGED
@@ -1,27 +1,30 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: braintree
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.49.0
4
+ version: 2.50.0
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - Braintree
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2015-09-24 00:00:00.000000000 Z
12
+ date: 2015-10-09 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: builder
15
16
  requirement: !ruby/object:Gem::Requirement
17
+ none: false
16
18
  requirements:
17
- - - '>='
19
+ - - ! '>='
18
20
  - !ruby/object:Gem::Version
19
21
  version: 2.0.0
20
22
  type: :runtime
21
23
  prerelease: false
22
24
  version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
23
26
  requirements:
24
- - - '>='
27
+ - - ! '>='
25
28
  - !ruby/object:Gem::Version
26
29
  version: 2.0.0
27
30
  description: Ruby library for integrating with the Braintree Gateway
@@ -33,222 +36,225 @@ files:
33
36
  - README.rdoc
34
37
  - LICENSE
35
38
  - lib/braintree.rb
36
- - lib/braintree/address.rb
37
- - lib/braintree/webhook_notification.rb
38
- - lib/braintree/subscription.rb
39
- - lib/braintree/add_on.rb
40
- - lib/braintree/xml/rexml.rb
41
- - lib/braintree/xml/libxml.rb
42
- - lib/braintree/xml/generator.rb
43
- - lib/braintree/xml/parser.rb
44
- - lib/braintree/validation_error.rb
45
- - lib/braintree/oauth_gateway.rb
46
- - lib/braintree/apple_pay_card.rb
47
- - lib/braintree/successful_result.rb
48
- - lib/braintree/version.rb
49
- - lib/braintree/payment_instrument_type.rb
50
- - lib/braintree/client_token.rb
51
- - lib/braintree/webhook_testing_gateway.rb
52
- - lib/braintree/xml.rb
53
- - lib/braintree/paypal_account_gateway.rb
54
- - lib/braintree/signature_service.rb
55
- - lib/braintree/settlement_batch_summary_gateway.rb
56
- - lib/braintree/credit_card_verification_search.rb
57
- - lib/braintree/base_module.rb
58
- - lib/braintree/plan.rb
59
39
  - lib/braintree/transaction_gateway.rb
60
- - lib/braintree/credit_card_verification_gateway.rb
61
- - lib/braintree/subscription_search.rb
62
- - lib/braintree/webhook_testing.rb
63
- - lib/braintree/merchant_account/funding_details.rb
64
- - lib/braintree/merchant_account/individual_details.rb
65
- - lib/braintree/merchant_account/address_details.rb
66
- - lib/braintree/merchant_account/business_details.rb
67
- - lib/braintree/risk_data.rb
68
- - lib/braintree/customer_search.rb
69
- - lib/braintree/discount_gateway.rb
70
- - lib/braintree/payment_method_nonce.rb
71
- - lib/braintree/validation_error_collection.rb
72
- - lib/braintree/credit_card.rb
73
- - lib/braintree/customer.rb
74
- - lib/braintree/digest.rb
75
- - lib/braintree/settlement_batch_summary.rb
76
- - lib/braintree/testing_gateway.rb
77
- - lib/braintree/unknown_payment_method.rb
78
40
  - lib/braintree/credit_card_verification.rb
41
+ - lib/braintree/transparent_redirect_gateway.rb
42
+ - lib/braintree/resource_collection.rb
43
+ - lib/braintree/subscription.rb
44
+ - lib/braintree/dispute/transaction_details.rb
79
45
  - lib/braintree/address/country_names.rb
80
- - lib/braintree/android_pay_card.rb
81
- - lib/braintree/disbursement.rb
82
- - lib/braintree/client_token_gateway.rb
83
- - lib/braintree/settlement_batch.rb
84
- - lib/braintree/dispute.rb
46
+ - lib/braintree/subscription/status_details.rb
47
+ - lib/braintree/credit_card_verification_search.rb
85
48
  - lib/braintree/merchant_account_gateway.rb
86
- - lib/braintree/coinbase_account.rb
87
- - lib/braintree/payment_method.rb
88
- - lib/braintree/transparent_redirect.rb
89
- - lib/braintree/gateway.rb
49
+ - lib/braintree/util.rb
50
+ - lib/braintree/paypal_account_gateway.rb
51
+ - lib/braintree/address_gateway.rb
90
52
  - lib/braintree/webhook_notification_gateway.rb
91
- - lib/braintree/customer_gateway.rb
92
- - lib/braintree/modification.rb
93
- - lib/braintree/configuration.rb
94
- - lib/braintree/transaction/customer_details.rb
95
- - lib/braintree/transaction/paypal_details.rb
96
- - lib/braintree/transaction/disbursement_details.rb
53
+ - lib/braintree/transaction/android_pay_details.rb
54
+ - lib/braintree/transaction/apple_pay_details.rb
97
55
  - lib/braintree/transaction/subscription_details.rb
98
56
  - lib/braintree/transaction/status_details.rb
99
- - lib/braintree/transaction/credit_card_details.rb
100
- - lib/braintree/transaction/apple_pay_details.rb
101
- - lib/braintree/transaction/android_pay_details.rb
102
- - lib/braintree/transaction/coinbase_details.rb
57
+ - lib/braintree/transaction/disbursement_details.rb
103
58
  - lib/braintree/transaction/address_details.rb
104
- - lib/braintree/descriptor.rb
105
- - lib/braintree/oauth_credentials.rb
59
+ - lib/braintree/transaction/coinbase_details.rb
60
+ - lib/braintree/transaction/customer_details.rb
61
+ - lib/braintree/transaction/paypal_details.rb
62
+ - lib/braintree/transaction/credit_card_details.rb
63
+ - lib/braintree/errors.rb
64
+ - lib/braintree/transaction_search.rb
65
+ - lib/braintree/validation_error_collection.rb
66
+ - lib/braintree/webhook_testing_gateway.rb
106
67
  - lib/braintree/payment_method_gateway.rb
107
- - lib/braintree/resource_collection.rb
108
- - lib/braintree/sha256_digest.rb
109
- - lib/braintree/three_d_secure_info.rb
110
- - lib/braintree/merchant_gateway.rb
111
- - lib/braintree/subscription_gateway.rb
112
- - lib/braintree/add_on_gateway.rb
113
- - lib/braintree/merchant_account.rb
114
- - lib/braintree/transaction.rb
115
- - lib/braintree/error_result.rb
116
- - lib/braintree/test_transaction.rb
68
+ - lib/braintree/discount.rb
69
+ - lib/braintree/credit_card.rb
117
70
  - lib/braintree/credentials_parser.rb
118
- - lib/braintree/plan_gateway.rb
119
- - lib/braintree/transparent_redirect_gateway.rb
120
- - lib/braintree/payment_method_nonce_gateway.rb
121
- - lib/braintree/transaction_search.rb
71
+ - lib/braintree/version.rb
72
+ - lib/braintree/disbursement.rb
122
73
  - lib/braintree/paypal_account.rb
74
+ - lib/braintree/subscription_search.rb
123
75
  - lib/braintree/exceptions.rb
124
- - lib/braintree/http.rb
76
+ - lib/braintree/settlement_batch_summary.rb
77
+ - lib/braintree/coinbase_account.rb
78
+ - lib/braintree/europe_bank_account.rb
79
+ - lib/braintree/transaction.rb
80
+ - lib/braintree/discount_gateway.rb
81
+ - lib/braintree/android_pay_card.rb
82
+ - lib/braintree/gateway.rb
125
83
  - lib/braintree/merchant.rb
126
- - lib/braintree/europe_bank_account_gateway.rb
127
- - lib/braintree/errors.rb
128
- - lib/braintree/address_gateway.rb
129
- - lib/braintree/credit_card_gateway.rb
130
84
  - lib/braintree/advanced_search.rb
131
- - lib/braintree/test/nonce.rb
132
- - lib/braintree/test/venmo_sdk.rb
85
+ - lib/braintree/oauth_gateway.rb
86
+ - lib/braintree/add_on_gateway.rb
87
+ - lib/braintree/payment_method.rb
88
+ - lib/braintree/settlement_batch.rb
89
+ - lib/braintree/payment_method_nonce.rb
90
+ - lib/braintree/customer_search.rb
91
+ - lib/braintree/transparent_redirect.rb
92
+ - lib/braintree/payment_instrument_type.rb
93
+ - lib/braintree/digest.rb
94
+ - lib/braintree/customer.rb
95
+ - lib/braintree/subscription_gateway.rb
96
+ - lib/braintree/client_token_gateway.rb
97
+ - lib/braintree/customer_gateway.rb
98
+ - lib/braintree/signature_service.rb
133
99
  - lib/braintree/test/credit_card.rb
134
100
  - lib/braintree/test/transaction_amounts.rb
101
+ - lib/braintree/test/nonce.rb
135
102
  - lib/braintree/test/merchant_account.rb
136
- - lib/braintree/discount.rb
137
- - lib/braintree/dispute/transaction_details.rb
103
+ - lib/braintree/test/venmo_sdk.rb
104
+ - lib/braintree/dispute.rb
105
+ - lib/braintree/testing_gateway.rb
106
+ - lib/braintree/error_result.rb
107
+ - lib/braintree/risk_data.rb
108
+ - lib/braintree/successful_result.rb
109
+ - lib/braintree/xml/generator.rb
110
+ - lib/braintree/xml/libxml.rb
111
+ - lib/braintree/xml/parser.rb
112
+ - lib/braintree/xml/rexml.rb
113
+ - lib/braintree/webhook_notification.rb
138
114
  - lib/braintree/error_codes.rb
139
- - lib/braintree/util.rb
140
- - lib/braintree/europe_bank_account.rb
141
- - lib/braintree/subscription/status_details.rb
142
- - lib/ssl/api_braintreegateway_com.ca.crt
115
+ - lib/braintree/base_module.rb
116
+ - lib/braintree/credit_card_verification_gateway.rb
117
+ - lib/braintree/three_d_secure_info.rb
118
+ - lib/braintree/client_token.rb
119
+ - lib/braintree/add_on.rb
120
+ - lib/braintree/webhook_testing.rb
121
+ - lib/braintree/configuration.rb
122
+ - lib/braintree/http.rb
123
+ - lib/braintree/unknown_payment_method.rb
124
+ - lib/braintree/xml.rb
125
+ - lib/braintree/credit_card_gateway.rb
126
+ - lib/braintree/apple_pay_card.rb
127
+ - lib/braintree/europe_bank_account_gateway.rb
128
+ - lib/braintree/merchant_account/funding_details.rb
129
+ - lib/braintree/merchant_account/individual_details.rb
130
+ - lib/braintree/merchant_account/address_details.rb
131
+ - lib/braintree/merchant_account/business_details.rb
132
+ - lib/braintree/plan_gateway.rb
133
+ - lib/braintree/payment_method_nonce_gateway.rb
134
+ - lib/braintree/settlement_batch_summary_gateway.rb
135
+ - lib/braintree/address.rb
136
+ - lib/braintree/plan.rb
137
+ - lib/braintree/merchant_gateway.rb
138
+ - lib/braintree/merchant_account.rb
139
+ - lib/braintree/sha256_digest.rb
140
+ - lib/braintree/descriptor.rb
141
+ - lib/braintree/oauth_credentials.rb
142
+ - lib/braintree/facilitator_details.rb
143
+ - lib/braintree/validation_error.rb
144
+ - lib/braintree/modification.rb
145
+ - lib/braintree/test_transaction.rb
143
146
  - lib/ssl/www_braintreegateway_com.ca.crt
144
- - lib/ssl/sandbox_braintreegateway_com.ca.crt
147
+ - lib/ssl/api_braintreegateway_com.ca.crt
145
148
  - lib/ssl/securetrust_ca.crt
146
- - spec/ssl/geotrust_global.crt
147
- - spec/ssl/privateKey.key
148
- - spec/ssl/certificate.crt
149
- - spec/script/httpsd.rb
150
- - spec/oauth_test_helper.rb
149
+ - lib/ssl/sandbox_braintreegateway_com.ca.crt
151
150
  - spec/unit/braintree_spec.rb
152
151
  - spec/unit/spec_helper.rb
153
- - spec/unit/braintree/configuration_spec.rb
152
+ - spec/unit/braintree/resource_collection_spec.rb
153
+ - spec/unit/braintree/transaction/credit_card_details_spec.rb
154
+ - spec/unit/braintree/transaction/customer_details_spec.rb
155
+ - spec/unit/braintree/transaction/deposit_details_spec.rb
154
156
  - spec/unit/braintree/base_module_spec.rb
157
+ - spec/unit/braintree/transaction_search_spec.rb
158
+ - spec/unit/braintree/disbursement_spec.rb
159
+ - spec/unit/braintree/risk_data_spec.rb
160
+ - spec/unit/braintree/credit_card_verification_search_spec.rb
161
+ - spec/unit/braintree/util_spec.rb
162
+ - spec/unit/braintree/three_d_secure_info_spec.rb
163
+ - spec/unit/braintree/payment_method_spec.rb
164
+ - spec/unit/braintree/address_spec.rb
165
+ - spec/unit/braintree/transaction_spec.rb
166
+ - spec/unit/braintree/subscription_search_spec.rb
167
+ - spec/unit/braintree/client_token_spec.rb
168
+ - spec/unit/braintree/validation_error_collection_spec.rb
169
+ - spec/unit/braintree/merchant_account_spec.rb
170
+ - spec/unit/braintree/apple_pay_card_spec.rb
171
+ - spec/unit/braintree/credentials_parser_spec.rb
172
+ - spec/unit/braintree/sha256_digest_spec.rb
173
+ - spec/unit/braintree/signature_service_spec.rb
174
+ - spec/unit/braintree/digest_spec.rb
175
+ - spec/unit/braintree/credit_card_verification_spec.rb
176
+ - spec/unit/braintree/xml_spec.rb
177
+ - spec/unit/braintree/http_spec.rb
178
+ - spec/unit/braintree/configuration_spec.rb
179
+ - spec/unit/braintree/customer_spec.rb
155
180
  - spec/unit/braintree/xml/parser_spec.rb
156
181
  - spec/unit/braintree/xml/rexml_spec.rb
157
182
  - spec/unit/braintree/xml/libxml_spec.rb
158
- - spec/unit/braintree/error_result_spec.rb
159
- - spec/unit/braintree/resource_collection_spec.rb
160
- - spec/unit/braintree/disbursement_spec.rb
161
- - spec/unit/braintree/credit_card_verification_spec.rb
162
- - spec/unit/braintree/apple_pay_card_spec.rb
163
- - spec/unit/braintree/client_token_spec.rb
183
+ - spec/unit/braintree/paypal_account_spec.rb
164
184
  - spec/unit/braintree/subscription_spec.rb
165
- - spec/unit/braintree/payment_method_spec.rb
166
- - spec/unit/braintree/credit_card_spec.rb
167
- - spec/unit/braintree/credit_card_verification_search_spec.rb
185
+ - spec/unit/braintree/transparent_redirect_spec.rb
186
+ - spec/unit/braintree/validation_error_spec.rb
168
187
  - spec/unit/braintree/webhook_notification_spec.rb
169
- - spec/unit/braintree/three_d_secure_info_spec.rb
170
- - spec/unit/braintree/errors_spec.rb
171
188
  - spec/unit/braintree/dispute_spec.rb
172
- - spec/unit/braintree/signature_service_spec.rb
173
- - spec/unit/braintree/util_spec.rb
189
+ - spec/unit/braintree/credit_card_spec.rb
190
+ - spec/unit/braintree/error_result_spec.rb
191
+ - spec/unit/braintree/unknown_payment_method_spec.rb
174
192
  - spec/unit/braintree/modification_spec.rb
175
- - spec/unit/braintree/validation_error_collection_spec.rb
176
- - spec/unit/braintree/http_spec.rb
193
+ - spec/unit/braintree/errors_spec.rb
177
194
  - spec/unit/braintree/successful_result_spec.rb
178
- - spec/unit/braintree/transparent_redirect_spec.rb
179
- - spec/unit/braintree/unknown_payment_method_spec.rb
180
- - spec/unit/braintree/transaction/customer_details_spec.rb
181
- - spec/unit/braintree/transaction/credit_card_details_spec.rb
182
- - spec/unit/braintree/transaction/deposit_details_spec.rb
183
- - spec/unit/braintree/digest_spec.rb
184
- - spec/unit/braintree/sha256_digest_spec.rb
185
- - spec/unit/braintree/merchant_account_spec.rb
186
- - spec/unit/braintree/address_spec.rb
187
- - spec/unit/braintree/validation_error_spec.rb
188
- - spec/unit/braintree/xml_spec.rb
189
- - spec/unit/braintree/subscription_search_spec.rb
190
- - spec/unit/braintree/transaction_search_spec.rb
191
- - spec/unit/braintree/paypal_account_spec.rb
192
- - spec/unit/braintree/risk_data_spec.rb
193
- - spec/unit/braintree/transaction_spec.rb
194
- - spec/unit/braintree/credentials_parser_spec.rb
195
- - spec/unit/braintree/customer_spec.rb
196
- - spec/spec.opts
197
- - spec/hacks/tcp_socket.rb
198
- - spec/spec_helper.rb
199
195
  - spec/integration/spec_helper.rb
200
- - spec/integration/braintree/add_on_spec.rb
201
- - spec/integration/braintree/test_transaction_spec.rb
196
+ - spec/integration/braintree/plan_spec.rb
197
+ - spec/integration/braintree/transaction_search_spec.rb
202
198
  - spec/integration/braintree/disbursement_spec.rb
203
- - spec/integration/braintree/coinbase_spec.rb
204
- - spec/integration/braintree/credit_card_verification_spec.rb
205
- - spec/integration/braintree/subscription_spec.rb
206
- - spec/integration/braintree/payment_method_spec.rb
207
- - spec/integration/braintree/credit_card_spec.rb
208
199
  - spec/integration/braintree/credit_card_verification_search_spec.rb
200
+ - spec/integration/braintree/payment_method_spec.rb
201
+ - spec/integration/braintree/address_spec.rb
202
+ - spec/integration/braintree/transaction_spec.rb
209
203
  - spec/integration/braintree/payment_method_nonce_spec.rb
210
- - spec/integration/braintree/error_codes_spec.rb
211
- - spec/integration/braintree/http_spec.rb
212
- - spec/integration/braintree/oauth_spec.rb
213
- - spec/integration/braintree/transparent_redirect_spec.rb
214
204
  - spec/integration/braintree/customer_search_spec.rb
215
- - spec/integration/braintree/merchant_account_spec.rb
216
- - spec/integration/braintree/address_spec.rb
217
205
  - spec/integration/braintree/settlement_batch_summary_spec.rb
218
- - spec/integration/braintree/transaction_search_spec.rb
219
- - spec/integration/braintree/paypal_account_spec.rb
220
206
  - spec/integration/braintree/discount_spec.rb
221
- - spec/integration/braintree/plan_spec.rb
207
+ - spec/integration/braintree/oauth_spec.rb
222
208
  - spec/integration/braintree/merchant_spec.rb
209
+ - spec/integration/braintree/merchant_account_spec.rb
210
+ - spec/integration/braintree/test_transaction_spec.rb
211
+ - spec/integration/braintree/credit_card_verification_spec.rb
223
212
  - spec/integration/braintree/test/transaction_amounts_spec.rb
213
+ - spec/integration/braintree/http_spec.rb
214
+ - spec/integration/braintree/add_on_spec.rb
215
+ - spec/integration/braintree/customer_spec.rb
216
+ - spec/integration/braintree/paypal_account_spec.rb
217
+ - spec/integration/braintree/subscription_spec.rb
218
+ - spec/integration/braintree/transparent_redirect_spec.rb
224
219
  - spec/integration/braintree/advanced_search_spec.rb
225
- - spec/integration/braintree/transaction_spec.rb
220
+ - spec/integration/braintree/credit_card_spec.rb
226
221
  - spec/integration/braintree/client_api/client_token_spec.rb
227
222
  - spec/integration/braintree/client_api/spec_helper.rb
228
- - spec/integration/braintree/customer_spec.rb
223
+ - spec/integration/braintree/error_codes_spec.rb
224
+ - spec/integration/braintree/coinbase_spec.rb
225
+ - spec/oauth_test_helper.rb
226
+ - spec/spec_helper.rb
227
+ - spec/spec.opts
228
+ - spec/hacks/tcp_socket.rb
229
+ - spec/ssl/geotrust_global.crt
230
+ - spec/ssl/certificate.crt
231
+ - spec/ssl/privateKey.key
232
+ - spec/script/httpsd.rb
233
+ - spec/httpsd.pid
229
234
  - braintree.gemspec
230
235
  homepage: http://www.braintreepayments.com/
231
236
  licenses:
232
237
  - MIT
233
- metadata: {}
234
238
  post_install_message:
235
239
  rdoc_options: []
236
240
  require_paths:
237
241
  - lib
238
242
  required_ruby_version: !ruby/object:Gem::Requirement
243
+ none: false
239
244
  requirements:
240
- - - '>='
245
+ - - ! '>='
241
246
  - !ruby/object:Gem::Version
242
247
  version: '0'
243
248
  required_rubygems_version: !ruby/object:Gem::Requirement
249
+ none: false
244
250
  requirements:
245
- - - '>='
251
+ - - ! '>='
246
252
  - !ruby/object:Gem::Version
247
253
  version: '0'
248
254
  requirements: []
249
255
  rubyforge_project: braintree
250
- rubygems_version: 2.1.11
256
+ rubygems_version: 1.8.25
251
257
  signing_key:
252
- specification_version: 4
258
+ specification_version: 3
253
259
  summary: Braintree Gateway Ruby Client Library
254
260
  test_files: []