braintree 2.19.0 → 2.20.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -53,7 +53,7 @@ require "braintree/subscription"
53
53
  require "braintree/subscription_gateway"
54
54
  require "braintree/subscription_search"
55
55
  require "braintree/successful_result"
56
- require "braintree/test/credit_card_numbers"
56
+ require "braintree/test/credit_card"
57
57
  require "braintree/test/transaction_amounts"
58
58
  require "braintree/transaction"
59
59
  require "braintree/transaction/address_details"
@@ -26,45 +26,18 @@ module Braintree
26
26
  US = "us"
27
27
  end
28
28
 
29
- module Commercial
29
+ module CardTypeIndicator
30
30
  Yes = "Yes"
31
31
  No = "No"
32
32
  Unknown = "Unknown"
33
33
  end
34
34
 
35
- module Debit
36
- Yes = "Yes"
37
- No = "No"
38
- Unknown = "Unknown"
39
- end
40
-
41
- module DurbinRegulated
42
- Yes = "Yes"
43
- No = "No"
44
- Unknown = "Unknown"
45
- end
46
-
47
- module Healthcare
48
- Yes = "Yes"
49
- No = "No"
50
- Unknown = "Unknown"
51
- end
52
-
53
- module Payroll
54
- Yes = "Yes"
55
- No = "No"
56
- Unknown = "Unknown"
57
- end
58
-
59
- module Prepaid
60
- Yes = "Yes"
61
- No = "No"
62
- Unknown = "Unknown"
63
- end
35
+ Commercial = Debit = DurbinRegulated = Healthcare = Payroll = Prepaid =
36
+ IssuingBank = CountryOfIssuance = CardTypeIndicator
64
37
 
65
- attr_reader :billing_address, :bin, :card_type, :cardholder_name, :commercial, :created_at,
66
- :customer_id, :debit, :durbin_regulated, :expiration_month, :expiration_year, :healthcare,
67
- :last_4, :payroll, :prepaid, :subscriptions, :token, :unique_number_identifier, :updated_at
38
+ attr_reader :billing_address, :bin, :card_type, :cardholder_name, :commercial, :country_of_issuance,
39
+ :created_at, :customer_id, :debit, :durbin_regulated, :expiration_month, :expiration_year, :healthcare,
40
+ :issuing_bank, :last_4, :payroll, :prepaid, :subscriptions, :token, :unique_number_identifier, :updated_at
68
41
 
69
42
  # See http://www.braintreepayments.com/docs/ruby/credit_cards/create
70
43
  def self.create(attributes)
@@ -265,7 +238,7 @@ module Braintree
265
238
  [
266
239
  :billing_address, :bin, :card_type, :cardholder_name, :created_at, :customer_id, :expiration_month,
267
240
  :expiration_year, :last_4, :token, :updated_at, :prepaid, :payroll, :commercial, :debit, :durbin_regulated,
268
- :healthcare
241
+ :healthcare, :country_of_issuance, :issuing_bank
269
242
  ]
270
243
  end
271
244
 
@@ -76,10 +76,10 @@ module Braintree
76
76
 
77
77
  def self._signature(type) # :nodoc:
78
78
  billing_address_params = AddressGateway._shared_signature
79
- options = [:make_default, :verification_merchant_account_id, :verify_card]
79
+ options = [:make_default, :verification_merchant_account_id, :verify_card, :venmo_sdk_session]
80
80
  signature = [
81
81
  :billing_address_id, :cardholder_name, :cvv, :expiration_date,
82
- :expiration_month, :expiration_year, :number, :token,
82
+ :expiration_month, :expiration_year, :number, :token, :venmo_sdk_payment_method_code,
83
83
  {:options => options},
84
84
  {:billing_address => billing_address_params}
85
85
  ]
@@ -7,14 +7,16 @@ module Braintree
7
7
  # See http://www.braintreepayments.com/docs/ruby/reference/sandbox
8
8
  module CreditCardNumbers
9
9
  module CardTypeIndicators
10
- Prepaid = "4111111111111210"
11
- Commercial = "4111111111131010"
12
- Payroll = "4111111114101010"
13
- Healthcare = "4111111510101010"
14
- DurbinRegulated = "4111161010101010"
15
- Debit = "4117101010101010"
16
- Unknown = "4111111111112101"
17
- No = "4111111111310101"
10
+ Prepaid = "4111111111111210"
11
+ Commercial = "4111111111131010"
12
+ Payroll = "4111111114101010"
13
+ Healthcare = "4111111510101010"
14
+ DurbinRegulated = "4111161010101010"
15
+ Debit = "4117101010101010"
16
+ Unknown = "4111111111112101"
17
+ No = "4111111111310101"
18
+ IssuingBank = "4111111141010101"
19
+ CountryOfIssuance = "4111111111121102"
18
20
  end
19
21
 
20
22
  AmExes = %w[378282246310005 371449635398431 378734493671000]
@@ -47,5 +49,10 @@ module Braintree
47
49
 
48
50
  All = AmExes + Discovers + MasterCards + Visas
49
51
  end
52
+
53
+ module CreditCardDefaults
54
+ CountryOfIssuance = "USA"
55
+ IssuingBank = "NETWORK ONLY"
56
+ end
50
57
  end
51
58
  end
@@ -100,7 +100,7 @@ module Braintree
100
100
  def self._create_signature # :nodoc:
101
101
  [
102
102
  :amount, :customer_id, :merchant_account_id, :order_id, :payment_method_token,
103
- :purchase_order_number, :recurring, :shipping_address_id, :type, :tax_amount, :tax_exempt,
103
+ :purchase_order_number, :recurring, :shipping_address_id, :type, :tax_amount, :tax_exempt, :venmo_sdk_payment_method_code,
104
104
  {:credit_card => [:token, :cardholder_name, :cvv, :expiration_date, :expiration_month, :expiration_year, :number]},
105
105
  {:customer => [:id, :company, :email, :fax, :first_name, :last_name, :phone, :website]},
106
106
  {
@@ -109,7 +109,7 @@ module Braintree
109
109
  {
110
110
  :shipping => AddressGateway._shared_signature
111
111
  },
112
- {:options => [:store_in_vault, :store_in_vault_on_success, :submit_for_settlement, :add_billing_address_to_payment_method, :store_shipping_address_in_vault]},
112
+ {:options => [:store_in_vault, :store_in_vault_on_success, :submit_for_settlement, :add_billing_address_to_payment_method, :store_shipping_address_in_vault, :venmo_sdk_session]},
113
113
  {:custom_fields => :_any_key_},
114
114
  {:descriptor => [:name, :phone]}
115
115
  ]
@@ -20,7 +20,7 @@ module Braintree
20
20
  def self.parse_query_string(qs)
21
21
  qs.split('&').inject({}) do |result, couplet|
22
22
  pair = couplet.split('=')
23
- result[CGI.unescape(pair[0]).to_sym] = CGI.unescape(pair[1])
23
+ result[CGI.unescape(pair[0]).to_sym] = CGI.unescape(pair[1] || '')
24
24
  result
25
25
  end
26
26
  end
@@ -1,7 +1,7 @@
1
1
  module Braintree
2
2
  module Version
3
3
  Major = 2
4
- Minor = 19
4
+ Minor = 20
5
5
  Tiny = 0
6
6
 
7
7
  String = "#{Major}.#{Minor}.#{Tiny}"
@@ -1 +1 @@
1
- 19512
1
+ 54061
@@ -281,6 +281,30 @@ describe Braintree::CreditCard do
281
281
  credit_card.durbin_regulated.should == Braintree::CreditCard::DurbinRegulated::Yes
282
282
  end
283
283
 
284
+ it "sets the country of issuance field" do
285
+ customer = Braintree::Customer.create!
286
+ result = Braintree::CreditCard.create(
287
+ :customer_id => customer.id,
288
+ :number => Braintree::Test::CreditCardNumbers::CardTypeIndicators::CountryOfIssuance,
289
+ :expiration_date => "05/2014",
290
+ :options => {:verify_card => true}
291
+ )
292
+ credit_card = result.credit_card
293
+ credit_card.country_of_issuance.should == Braintree::Test::CreditCardDefaults::CountryOfIssuance
294
+ end
295
+
296
+ it "sets the issuing bank field" do
297
+ customer = Braintree::Customer.create!
298
+ result = Braintree::CreditCard.create(
299
+ :customer_id => customer.id,
300
+ :number => Braintree::Test::CreditCardNumbers::CardTypeIndicators::IssuingBank,
301
+ :expiration_date => "05/2014",
302
+ :options => {:verify_card => true}
303
+ )
304
+ credit_card = result.credit_card
305
+ credit_card.issuing_bank.should == Braintree::Test::CreditCardDefaults::IssuingBank
306
+ end
307
+
284
308
  it "sets the payroll field if the card is payroll" do
285
309
  customer = Braintree::Customer.create!
286
310
  result = Braintree::CreditCard.create(
@@ -349,6 +373,8 @@ describe Braintree::CreditCard do
349
373
  credit_card.debit.should == Braintree::CreditCard::Prepaid::Unknown
350
374
  credit_card.durbin_regulated.should == Braintree::CreditCard::Prepaid::Unknown
351
375
  credit_card.healthcare.should == Braintree::CreditCard::Prepaid::Unknown
376
+ credit_card.country_of_issuance == Braintree::CreditCard::CountryOfIssuance::Unknown
377
+ credit_card.issuing_bank == Braintree::CreditCard::IssuingBank::Unknown
352
378
  end
353
379
  end
354
380
 
@@ -20,7 +20,8 @@ describe Braintree::CreditCard do
20
20
  :expiration_year,
21
21
  :number,
22
22
  :token,
23
- {:options => [:make_default, :verification_merchant_account_id, :verify_card, :fail_on_duplicate_payment_method]},
23
+ :venmo_sdk_payment_method_code,
24
+ {:options => [:make_default, :verification_merchant_account_id, :verify_card, :venmo_sdk_session, :fail_on_duplicate_payment_method]},
24
25
  {:billing_address => [
25
26
  :company,
26
27
  :country_code_alpha2,
@@ -51,7 +52,8 @@ describe Braintree::CreditCard do
51
52
  :expiration_year,
52
53
  :number,
53
54
  :token,
54
- {:options => [:make_default, :verification_merchant_account_id, :verify_card]},
55
+ :venmo_sdk_payment_method_code,
56
+ {:options => [:make_default, :verification_merchant_account_id, :verify_card, :venmo_sdk_session]},
55
57
  {:billing_address => [
56
58
  :company,
57
59
  :country_code_alpha2,
@@ -90,7 +90,8 @@ describe Braintree::Customer do
90
90
  :expiration_year,
91
91
  :number,
92
92
  :token,
93
- {:options => [:make_default, :verification_merchant_account_id, :verify_card, :fail_on_duplicate_payment_method]},
93
+ :venmo_sdk_payment_method_code,
94
+ {:options => [:make_default, :verification_merchant_account_id, :verify_card, :venmo_sdk_session, :fail_on_duplicate_payment_method]},
94
95
  {:billing_address => [
95
96
  :company,
96
97
  :country_code_alpha2,
@@ -131,10 +132,12 @@ describe Braintree::Customer do
131
132
  :expiration_year,
132
133
  :number,
133
134
  :token,
135
+ :venmo_sdk_payment_method_code,
134
136
  {:options => [
135
137
  :make_default,
136
138
  :verification_merchant_account_id,
137
139
  :verify_card,
140
+ :venmo_sdk_session,
138
141
  :update_existing_token
139
142
  ]},
140
143
  {:billing_address => [
@@ -192,6 +192,11 @@ describe Braintree::Util do
192
192
  query_string = "foo=bar%20baz&hash=a1b2c3"
193
193
  Braintree::Util.parse_query_string(query_string).should == {:foo => "bar baz", :hash => "a1b2c3"}
194
194
  end
195
+
196
+ it "parses the query string when a key has an empty value" do
197
+ query_string = "foo=bar%20baz&hash=a1b2c3&vat_number="
198
+ Braintree::Util.parse_query_string(query_string).should == {:foo => "bar baz", :hash => "a1b2c3", :vat_number => ""}
199
+ end
195
200
  end
196
201
 
197
202
  describe "self.raise_exception_for_status_code" do
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: braintree
3
3
  version: !ruby/object:Gem::Version
4
- hash: 67
4
+ hash: 95
5
5
  prerelease: false
6
6
  segments:
7
7
  - 2
8
- - 19
8
+ - 20
9
9
  - 0
10
- version: 2.19.0
10
+ version: 2.20.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - Braintree
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2012-10-25 00:00:00 +00:00
18
+ date: 2012-11-09 00:00:00 -06:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -45,130 +45,130 @@ extra_rdoc_files: []
45
45
  files:
46
46
  - README.rdoc
47
47
  - LICENSE
48
- - lib/braintree.rb
49
- - lib/braintree/subscription_search.rb
50
- - lib/braintree/modification.rb
51
- - lib/braintree/errors.rb
52
- - lib/braintree/test/credit_card_numbers.rb
53
- - lib/braintree/test/transaction_amounts.rb
54
- - lib/braintree/webhook_testing.rb
55
- - lib/braintree/webhook_testing_gateway.rb
56
- - lib/braintree/advanced_search.rb
57
- - lib/braintree/version.rb
58
48
  - lib/braintree/add_on.rb
49
+ - lib/braintree/add_on_gateway.rb
50
+ - lib/braintree/address/country_names.rb
59
51
  - lib/braintree/address.rb
60
- - lib/braintree/digest.rb
61
- - lib/braintree/settlement_batch_summary.rb
62
- - lib/braintree/error_codes.rb
63
- - lib/braintree/discount.rb
64
- - lib/braintree/webhook_notification.rb
65
- - lib/braintree/settlement_batch_summary_gateway.rb
66
- - lib/braintree/validation_error_collection.rb
67
- - lib/braintree/credit_card_verification_gateway.rb
52
+ - lib/braintree/address_gateway.rb
53
+ - lib/braintree/advanced_search.rb
54
+ - lib/braintree/base_module.rb
55
+ - lib/braintree/configuration.rb
68
56
  - lib/braintree/credit_card.rb
57
+ - lib/braintree/credit_card_gateway.rb
58
+ - lib/braintree/credit_card_verification.rb
59
+ - lib/braintree/credit_card_verification_gateway.rb
60
+ - lib/braintree/credit_card_verification_search.rb
61
+ - lib/braintree/customer.rb
62
+ - lib/braintree/customer_gateway.rb
69
63
  - lib/braintree/customer_search.rb
70
- - lib/braintree/util.rb
71
- - lib/braintree/transparent_redirect.rb
72
- - lib/braintree/xml/generator.rb
73
- - lib/braintree/xml/rexml.rb
74
- - lib/braintree/xml/libxml.rb
75
- - lib/braintree/xml/parser.rb
64
+ - lib/braintree/descriptor.rb
65
+ - lib/braintree/digest.rb
66
+ - lib/braintree/discount.rb
67
+ - lib/braintree/discount_gateway.rb
68
+ - lib/braintree/error_codes.rb
69
+ - lib/braintree/error_result.rb
70
+ - lib/braintree/errors.rb
76
71
  - lib/braintree/exceptions.rb
77
- - lib/braintree/validation_error.rb
78
- - lib/braintree/resource_collection.rb
79
- - lib/braintree/xml.rb
80
- - lib/braintree/credit_card_verification.rb
81
- - lib/braintree/configuration.rb
82
- - lib/braintree/transaction.rb
72
+ - lib/braintree/gateway.rb
83
73
  - lib/braintree/http.rb
84
- - lib/braintree/address_gateway.rb
85
- - lib/braintree/subscription_gateway.rb
86
- - lib/braintree/customer_gateway.rb
74
+ - lib/braintree/modification.rb
75
+ - lib/braintree/plan.rb
87
76
  - lib/braintree/plan_gateway.rb
88
- - lib/braintree/credit_card_verification_search.rb
89
- - lib/braintree/successful_result.rb
77
+ - lib/braintree/resource_collection.rb
90
78
  - lib/braintree/settlement_batch.rb
91
- - lib/braintree/plan.rb
92
- - lib/braintree/gateway.rb
93
- - lib/braintree/transparent_redirect_gateway.rb
94
- - lib/braintree/base_module.rb
95
- - lib/braintree/add_on_gateway.rb
96
- - lib/braintree/transaction/subscription_details.rb
97
- - lib/braintree/transaction/customer_details.rb
79
+ - lib/braintree/settlement_batch_summary.rb
80
+ - lib/braintree/settlement_batch_summary_gateway.rb
81
+ - lib/braintree/subscription.rb
82
+ - lib/braintree/subscription_gateway.rb
83
+ - lib/braintree/subscription_search.rb
84
+ - lib/braintree/successful_result.rb
85
+ - lib/braintree/test/credit_card.rb
86
+ - lib/braintree/test/transaction_amounts.rb
87
+ - lib/braintree/transaction/address_details.rb
98
88
  - lib/braintree/transaction/credit_card_details.rb
89
+ - lib/braintree/transaction/customer_details.rb
99
90
  - lib/braintree/transaction/status_details.rb
100
- - lib/braintree/transaction/address_details.rb
101
- - lib/braintree/transaction_search.rb
102
- - lib/braintree/error_result.rb
103
- - lib/braintree/credit_card_gateway.rb
104
- - lib/braintree/descriptor.rb
91
+ - lib/braintree/transaction/subscription_details.rb
92
+ - lib/braintree/transaction.rb
105
93
  - lib/braintree/transaction_gateway.rb
106
- - lib/braintree/subscription.rb
107
- - lib/braintree/address/country_names.rb
94
+ - lib/braintree/transaction_search.rb
95
+ - lib/braintree/transparent_redirect.rb
96
+ - lib/braintree/transparent_redirect_gateway.rb
97
+ - lib/braintree/util.rb
98
+ - lib/braintree/validation_error.rb
99
+ - lib/braintree/validation_error_collection.rb
100
+ - lib/braintree/version.rb
101
+ - lib/braintree/webhook_notification.rb
108
102
  - lib/braintree/webhook_notification_gateway.rb
109
- - lib/braintree/customer.rb
110
- - lib/braintree/discount_gateway.rb
111
- - lib/ssl/www_braintreegateway_com.ca.crt
103
+ - lib/braintree/webhook_testing.rb
104
+ - lib/braintree/webhook_testing_gateway.rb
105
+ - lib/braintree/xml/generator.rb
106
+ - lib/braintree/xml/libxml.rb
107
+ - lib/braintree/xml/parser.rb
108
+ - lib/braintree/xml/rexml.rb
109
+ - lib/braintree/xml.rb
110
+ - lib/braintree.rb
112
111
  - lib/ssl/sandbox_braintreegateway_com.ca.crt
113
112
  - lib/ssl/securetrust_ca.crt
114
- - spec/script/httpsd.rb
115
- - spec/spec_helper.rb
116
- - spec/unit/spec_helper.rb
117
- - spec/unit/braintree/transaction_search_spec.rb
118
- - spec/unit/braintree/error_result_spec.rb
119
- - spec/unit/braintree/xml_spec.rb
120
- - spec/unit/braintree/customer_spec.rb
121
- - spec/unit/braintree/transaction_spec.rb
122
- - spec/unit/braintree/webhook_notification_spec.rb
123
- - spec/unit/braintree/http_spec.rb
124
- - spec/unit/braintree/subscription_spec.rb
125
- - spec/unit/braintree/credit_card_verification_search_spec.rb
126
- - spec/unit/braintree/subscription_search_spec.rb
127
- - spec/unit/braintree/successful_result_spec.rb
128
- - spec/unit/braintree/credit_card_verification_spec.rb
129
- - spec/unit/braintree/validation_error_spec.rb
130
- - spec/unit/braintree/resource_collection_spec.rb
131
- - spec/unit/braintree/xml/libxml_spec.rb
132
- - spec/unit/braintree/xml/parser_spec.rb
133
- - spec/unit/braintree/xml/rexml_spec.rb
134
- - spec/unit/braintree/configuration_spec.rb
135
- - spec/unit/braintree/validation_error_collection_spec.rb
136
- - spec/unit/braintree/errors_spec.rb
137
- - spec/unit/braintree/modification_spec.rb
138
- - spec/unit/braintree/util_spec.rb
139
- - spec/unit/braintree/base_module_spec.rb
140
- - spec/unit/braintree/address_spec.rb
141
- - spec/unit/braintree/transparent_redirect_spec.rb
142
- - spec/unit/braintree/transaction/credit_card_details_spec.rb
143
- - spec/unit/braintree/transaction/customer_details_spec.rb
144
- - spec/unit/braintree/credit_card_spec.rb
145
- - spec/unit/braintree/digest_spec.rb
146
- - spec/unit/braintree_spec.rb
113
+ - lib/ssl/www_braintreegateway_com.ca.crt
147
114
  - spec/hacks/tcp_socket.rb
148
115
  - spec/httpsd.pid
149
- - spec/integration/spec_helper.rb
150
- - spec/integration/braintree/settlement_batch_summary_spec.rb
151
- - spec/integration/braintree/transaction_search_spec.rb
152
- - spec/integration/braintree/test/transaction_amounts_spec.rb
153
- - spec/integration/braintree/customer_spec.rb
154
- - spec/integration/braintree/transaction_spec.rb
155
116
  - spec/integration/braintree/add_on_spec.rb
156
- - spec/integration/braintree/http_spec.rb
157
- - spec/integration/braintree/subscription_spec.rb
117
+ - spec/integration/braintree/address_spec.rb
118
+ - spec/integration/braintree/advanced_search_spec.rb
119
+ - spec/integration/braintree/credit_card_spec.rb
158
120
  - spec/integration/braintree/credit_card_verification_search_spec.rb
159
121
  - spec/integration/braintree/credit_card_verification_spec.rb
160
- - spec/integration/braintree/advanced_search_spec.rb
161
122
  - spec/integration/braintree/customer_search_spec.rb
162
- - spec/integration/braintree/plan_spec.rb
123
+ - spec/integration/braintree/customer_spec.rb
124
+ - spec/integration/braintree/discount_spec.rb
163
125
  - spec/integration/braintree/error_codes_spec.rb
164
- - spec/integration/braintree/address_spec.rb
126
+ - spec/integration/braintree/http_spec.rb
127
+ - spec/integration/braintree/plan_spec.rb
128
+ - spec/integration/braintree/settlement_batch_summary_spec.rb
129
+ - spec/integration/braintree/subscription_spec.rb
130
+ - spec/integration/braintree/test/transaction_amounts_spec.rb
131
+ - spec/integration/braintree/transaction_search_spec.rb
132
+ - spec/integration/braintree/transaction_spec.rb
165
133
  - spec/integration/braintree/transparent_redirect_spec.rb
166
- - spec/integration/braintree/credit_card_spec.rb
167
- - spec/integration/braintree/discount_spec.rb
134
+ - spec/integration/spec_helper.rb
135
+ - spec/script/httpsd.rb
168
136
  - spec/spec.opts
169
- - spec/ssl/geotrust_global.crt
137
+ - spec/spec_helper.rb
170
138
  - spec/ssl/certificate.crt
139
+ - spec/ssl/geotrust_global.crt
171
140
  - spec/ssl/privateKey.key
141
+ - spec/unit/braintree/address_spec.rb
142
+ - spec/unit/braintree/base_module_spec.rb
143
+ - spec/unit/braintree/configuration_spec.rb
144
+ - spec/unit/braintree/credit_card_spec.rb
145
+ - spec/unit/braintree/credit_card_verification_search_spec.rb
146
+ - spec/unit/braintree/credit_card_verification_spec.rb
147
+ - spec/unit/braintree/customer_spec.rb
148
+ - spec/unit/braintree/digest_spec.rb
149
+ - spec/unit/braintree/error_result_spec.rb
150
+ - spec/unit/braintree/errors_spec.rb
151
+ - spec/unit/braintree/http_spec.rb
152
+ - spec/unit/braintree/modification_spec.rb
153
+ - spec/unit/braintree/resource_collection_spec.rb
154
+ - spec/unit/braintree/subscription_search_spec.rb
155
+ - spec/unit/braintree/subscription_spec.rb
156
+ - spec/unit/braintree/successful_result_spec.rb
157
+ - spec/unit/braintree/transaction/credit_card_details_spec.rb
158
+ - spec/unit/braintree/transaction/customer_details_spec.rb
159
+ - spec/unit/braintree/transaction_search_spec.rb
160
+ - spec/unit/braintree/transaction_spec.rb
161
+ - spec/unit/braintree/transparent_redirect_spec.rb
162
+ - spec/unit/braintree/util_spec.rb
163
+ - spec/unit/braintree/validation_error_collection_spec.rb
164
+ - spec/unit/braintree/validation_error_spec.rb
165
+ - spec/unit/braintree/webhook_notification_spec.rb
166
+ - spec/unit/braintree/xml/libxml_spec.rb
167
+ - spec/unit/braintree/xml/parser_spec.rb
168
+ - spec/unit/braintree/xml/rexml_spec.rb
169
+ - spec/unit/braintree/xml_spec.rb
170
+ - spec/unit/braintree_spec.rb
171
+ - spec/unit/spec_helper.rb
172
172
  - braintree.gemspec
173
173
  has_rdoc: true
174
174
  homepage: http://www.braintreepayments.com/