braintree 4.14.0 → 4.15.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/braintree/credit_card.rb +13 -0
- data/lib/braintree/credit_card_gateway.rb +15 -3
- data/lib/braintree/payment_method_gateway.rb +15 -3
- data/lib/braintree/test/nonce.rb +1 -0
- data/lib/braintree/test/venmo_sdk.rb +2 -0
- data/lib/braintree/transaction/credit_card_details.rb +3 -0
- data/lib/braintree/transaction/local_payment_details.rb +2 -0
- data/lib/braintree/transaction.rb +5 -4
- data/lib/braintree/transaction_gateway.rb +15 -3
- data/lib/braintree/transaction_search.rb +6 -5
- data/lib/braintree/version.rb +1 -1
- data/lib/braintree/webhook_notification.rb +1 -0
- data/lib/braintree/webhook_testing_gateway.rb +17 -0
- data/spec/integration/braintree/add_on_spec.rb +9 -9
- data/spec/integration/braintree/address_spec.rb +69 -69
- data/spec/integration/braintree/advanced_search_spec.rb +45 -45
- data/spec/integration/braintree/apple_pay_spec.rb +8 -8
- data/spec/integration/braintree/client_api/client_token_spec.rb +15 -15
- data/spec/integration/braintree/credit_card_spec.rb +223 -223
- data/spec/integration/braintree/credit_card_verification_search_spec.rb +16 -16
- data/spec/integration/braintree/credit_card_verification_spec.rb +52 -52
- data/spec/integration/braintree/customer_search_spec.rb +20 -20
- data/spec/integration/braintree/customer_spec.rb +313 -313
- data/spec/integration/braintree/disbursement_spec.rb +2 -2
- data/spec/integration/braintree/discount_spec.rb +9 -9
- data/spec/integration/braintree/dispute_spec.rb +87 -87
- data/spec/integration/braintree/document_upload_spec.rb +17 -17
- data/spec/integration/braintree/error_codes_spec.rb +2 -2
- data/spec/integration/braintree/http_spec.rb +28 -28
- data/spec/integration/braintree/merchant_account_spec.rb +127 -127
- data/spec/integration/braintree/merchant_spec.rb +103 -103
- data/spec/integration/braintree/oauth_spec.rb +61 -61
- data/spec/integration/braintree/payment_method_nonce_spec.rb +73 -73
- data/spec/integration/braintree/payment_method_spec.rb +389 -389
- data/spec/integration/braintree/payment_method_us_bank_account_spec.rb +78 -78
- data/spec/integration/braintree/paypal_account_spec.rb +38 -38
- data/spec/integration/braintree/plan_spec.rb +15 -15
- data/spec/integration/braintree/samsung_pay_card_spec.rb +65 -65
- data/spec/integration/braintree/sepa_direct_debit_account_spec.rb +51 -51
- data/spec/integration/braintree/settlement_batch_summary_spec.rb +11 -11
- data/spec/integration/braintree/subscription_spec.rb +364 -364
- data/spec/integration/braintree/test/transaction_amounts_spec.rb +2 -2
- data/spec/integration/braintree/test_transaction_spec.rb +19 -19
- data/spec/integration/braintree/transaction_line_item_spec.rb +6 -6
- data/spec/integration/braintree/transaction_search_spec.rb +198 -165
- data/spec/integration/braintree/transaction_spec.rb +1315 -1149
- data/spec/integration/braintree/transaction_us_bank_account_spec.rb +32 -32
- data/spec/integration/braintree/us_bank_account_spec.rb +30 -30
- data/spec/integration/braintree/us_bank_account_verification_search_spec.rb +18 -18
- data/spec/integration/braintree/us_bank_account_verification_spec.rb +33 -33
- data/spec/integration/braintree/visa_checkout_card_spec.rb +57 -57
- data/spec/spec_helper.rb +9 -8
- data/spec/unit/braintree/address_spec.rb +8 -8
- data/spec/unit/braintree/base_module_spec.rb +4 -4
- data/spec/unit/braintree/client_token_spec.rb +2 -2
- data/spec/unit/braintree/configuration_spec.rb +57 -57
- data/spec/unit/braintree/credentials_parser_spec.rb +6 -6
- data/spec/unit/braintree/credit_card_spec.rb +31 -29
- data/spec/unit/braintree/credit_card_verification_gateway_spec.rb +28 -28
- data/spec/unit/braintree/credit_card_verification_search_spec.rb +9 -9
- data/spec/unit/braintree/credit_card_verification_spec.rb +17 -17
- data/spec/unit/braintree/customer_spec.rb +41 -40
- data/spec/unit/braintree/digest_spec.rb +5 -5
- data/spec/unit/braintree/disbursement_spec.rb +11 -11
- data/spec/unit/braintree/dispute_search_spec.rb +2 -2
- data/spec/unit/braintree/dispute_spec.rb +56 -56
- data/spec/unit/braintree/document_upload_spec.rb +8 -8
- data/spec/unit/braintree/enriched_customer_data_spec.rb +2 -2
- data/spec/unit/braintree/error_result_spec.rb +5 -5
- data/spec/unit/braintree/errors_spec.rb +9 -9
- data/spec/unit/braintree/http_spec.rb +8 -8
- data/spec/unit/braintree/local_payment_completed_spec.rb +11 -11
- data/spec/unit/braintree/local_payment_expired_spec.rb +2 -2
- data/spec/unit/braintree/local_payment_funded_spec.rb +6 -6
- data/spec/unit/braintree/merchant_account_spec.rb +4 -4
- data/spec/unit/braintree/modification_spec.rb +1 -1
- data/spec/unit/braintree/payment_method_customer_data_updated_metadata_spec.rb +6 -6
- data/spec/unit/braintree/payment_method_nonce_details_payer_info_spec.rb +7 -7
- data/spec/unit/braintree/payment_method_nonce_details_spec.rb +14 -14
- data/spec/unit/braintree/payment_method_spec.rb +19 -19
- data/spec/unit/braintree/paypal_account_spec.rb +4 -4
- data/spec/unit/braintree/resource_collection_spec.rb +7 -7
- data/spec/unit/braintree/sepa_debit_account_nonce_details_spec.rb +1 -1
- data/spec/unit/braintree/sha256_digest_spec.rb +1 -1
- data/spec/unit/braintree/signature_service_spec.rb +2 -2
- data/spec/unit/braintree/subscription_search_spec.rb +17 -17
- data/spec/unit/braintree/subscription_spec.rb +8 -8
- data/spec/unit/braintree/successful_result_spec.rb +5 -5
- data/spec/unit/braintree/three_d_secure_info_spec.rb +20 -20
- data/spec/unit/braintree/transaction/credit_card_details_spec.rb +5 -5
- data/spec/unit/braintree/transaction/customer_details_spec.rb +1 -1
- data/spec/unit/braintree/transaction/deposit_details_spec.rb +2 -2
- data/spec/unit/braintree/transaction/local_payment_details_spec.rb +30 -0
- data/spec/unit/braintree/transaction_gateway_spec.rb +9 -6
- data/spec/unit/braintree/transaction_search_spec.rb +2 -2
- data/spec/unit/braintree/transaction_spec.rb +101 -93
- data/spec/unit/braintree/unknown_payment_method_spec.rb +4 -4
- data/spec/unit/braintree/us_bank_account_spec.rb +2 -2
- data/spec/unit/braintree/us_bank_account_verification_search_spec.rb +7 -7
- data/spec/unit/braintree/us_bank_account_verification_spec.rb +7 -7
- data/spec/unit/braintree/util_spec.rb +27 -27
- data/spec/unit/braintree/validation_error_collection_spec.rb +34 -34
- data/spec/unit/braintree/validation_error_spec.rb +4 -4
- data/spec/unit/braintree/venmo_profile_data_spec.rb +5 -5
- data/spec/unit/braintree/webhook_notification_spec.rb +206 -191
- data/spec/unit/braintree/xml/libxml_spec.rb +5 -5
- data/spec/unit/braintree/xml/parser_spec.rb +8 -8
- data/spec/unit/braintree/xml/rexml_spec.rb +5 -5
- data/spec/unit/braintree/xml_spec.rb +17 -17
- data/spec/unit/braintree_spec.rb +2 -2
- metadata +3 -2
@@ -4,7 +4,7 @@ describe Braintree::Xml::Libxml do
|
|
4
4
|
describe "self.parse" do
|
5
5
|
it "typecasts integers" do
|
6
6
|
xml = "<root><foo type=\"integer\">123</foo></root>"
|
7
|
-
Braintree::Xml::Libxml.parse(xml).
|
7
|
+
expect(Braintree::Xml::Libxml.parse(xml)).to eq({"root"=>{"foo"=>{"__content__"=>"123", "type"=>"integer"}}})
|
8
8
|
end
|
9
9
|
|
10
10
|
it "works with dashes or underscores" do
|
@@ -14,7 +14,7 @@ describe Braintree::Xml::Libxml do
|
|
14
14
|
<under_scores />
|
15
15
|
</root>
|
16
16
|
END
|
17
|
-
Braintree::Xml::Libxml.parse(xml).
|
17
|
+
expect(Braintree::Xml::Libxml.parse(xml)).to eq({"root"=>{"dash-es"=>{}, "under_scores"=>{}}})
|
18
18
|
end
|
19
19
|
|
20
20
|
it "uses nil if nil=true, otherwise uses empty string" do
|
@@ -24,7 +24,7 @@ describe Braintree::Xml::Libxml do
|
|
24
24
|
<an_empty_string></an_empty_string>
|
25
25
|
</root>
|
26
26
|
END
|
27
|
-
Braintree::Xml::Libxml.parse(xml).
|
27
|
+
expect(Braintree::Xml::Libxml.parse(xml)).to eq({"root"=>{"a_nil_value"=>{"nil"=>"true"}, "an_empty_string"=>{}}})
|
28
28
|
end
|
29
29
|
|
30
30
|
it "typecasts dates and times" do
|
@@ -33,7 +33,7 @@ describe Braintree::Xml::Libxml do
|
|
33
33
|
<created-at type="datetime">2009-10-28T10:19:49Z</created-at>
|
34
34
|
</root>
|
35
35
|
END
|
36
|
-
Braintree::Xml::Libxml.parse(xml).
|
36
|
+
expect(Braintree::Xml::Libxml.parse(xml)).to eq({"root"=>{"created-at"=>{"__content__"=>"2009-10-28T10:19:49Z", "type"=>"datetime"}}})
|
37
37
|
end
|
38
38
|
|
39
39
|
it "builds an array if type=array" do
|
@@ -45,7 +45,7 @@ describe Braintree::Xml::Libxml do
|
|
45
45
|
</customers>
|
46
46
|
</root>
|
47
47
|
END
|
48
|
-
Braintree::Xml::Libxml.parse(xml).
|
48
|
+
expect(Braintree::Xml::Libxml.parse(xml)).to eq({"root"=>{"customers"=>{"type"=>"array", "customer"=>[{"name"=>{"__content__"=>"Adam"}}, {"name"=>{"__content__"=>"Ben"}}]}}})
|
49
49
|
end
|
50
50
|
end
|
51
51
|
end
|
@@ -4,7 +4,7 @@ describe Braintree::Xml::Parser do
|
|
4
4
|
describe "self.hash_from_xml" do
|
5
5
|
it "typecasts integers" do
|
6
6
|
xml = "<root><foo type=\"integer\">123</foo></root>"
|
7
|
-
xml.
|
7
|
+
expect(xml).to parse_to(:root => {:foo => 123})
|
8
8
|
end
|
9
9
|
|
10
10
|
it "works with dashes or underscores" do
|
@@ -14,7 +14,7 @@ describe Braintree::Xml::Parser do
|
|
14
14
|
<under_scores />
|
15
15
|
</root>
|
16
16
|
END
|
17
|
-
xml.
|
17
|
+
expect(xml).to parse_to(:root=>{:dash_es=>"", :under_scores=>""})
|
18
18
|
end
|
19
19
|
|
20
20
|
it "uses nil if nil=true, otherwise uses empty string" do
|
@@ -24,7 +24,7 @@ describe Braintree::Xml::Parser do
|
|
24
24
|
<an_empty_string></an_empty_string>
|
25
25
|
</root>
|
26
26
|
END
|
27
|
-
xml.
|
27
|
+
expect(xml).to parse_to(:root => {:a_nil_value => nil, :an_empty_string => ""})
|
28
28
|
end
|
29
29
|
|
30
30
|
it "typecasts datetimes" do
|
@@ -33,7 +33,7 @@ describe Braintree::Xml::Parser do
|
|
33
33
|
<created-at type="datetime">2009-10-28T10:19:49Z</created-at>
|
34
34
|
</root>
|
35
35
|
END
|
36
|
-
xml.
|
36
|
+
expect(xml).to parse_to(:root => {:created_at => Time.utc(2009, 10, 28, 10, 19, 49)})
|
37
37
|
end
|
38
38
|
|
39
39
|
it "doesn't typecast dates" do
|
@@ -42,7 +42,7 @@ describe Braintree::Xml::Parser do
|
|
42
42
|
<created-at type="date">2009-10-28</created-at>
|
43
43
|
</root>
|
44
44
|
END
|
45
|
-
xml.
|
45
|
+
expect(xml).to parse_to(:root => {:created_at => "2009-10-28"})
|
46
46
|
end
|
47
47
|
|
48
48
|
it "builds an array if type=array" do
|
@@ -54,7 +54,7 @@ describe Braintree::Xml::Parser do
|
|
54
54
|
</customers>
|
55
55
|
</root>
|
56
56
|
END
|
57
|
-
xml.
|
57
|
+
expect(xml).to parse_to(:root => {:customers => [{:name => "Adam"}, {:name => "Ben"}]})
|
58
58
|
end
|
59
59
|
|
60
60
|
it "parses an array" do
|
@@ -66,7 +66,7 @@ describe Braintree::Xml::Parser do
|
|
66
66
|
</customers>
|
67
67
|
</root>
|
68
68
|
END
|
69
|
-
xml.
|
69
|
+
expect(xml).to parse_to(:root => {:customers => [{:name => "Adam", :customer_id => "1"}, {:name => "Ben", :customer_id => "2"}]})
|
70
70
|
end
|
71
71
|
|
72
72
|
it "parses nested objects" do
|
@@ -79,7 +79,7 @@ describe Braintree::Xml::Parser do
|
|
79
79
|
</paypal-details>
|
80
80
|
</root>
|
81
81
|
END
|
82
|
-
xml.
|
82
|
+
expect(xml).to parse_to(:root => {:paypal_details => {:deets => [{:secret_code => "1234"}], :payer_email => "abc@test.com", :payment_id => "1234567890"}})
|
83
83
|
end
|
84
84
|
end
|
85
85
|
end
|
@@ -4,7 +4,7 @@ describe Braintree::Xml::Rexml do
|
|
4
4
|
describe "self.parse" do
|
5
5
|
it "typecasts integers" do
|
6
6
|
xml = "<root><foo type=\"integer\">123</foo></root>"
|
7
|
-
Braintree::Xml::Rexml.parse(xml).
|
7
|
+
expect(Braintree::Xml::Rexml.parse(xml)).to eq({"root"=>{"foo"=>{"__content__"=>"123", "type"=>"integer"}}})
|
8
8
|
end
|
9
9
|
|
10
10
|
it "works with dashes or underscores" do
|
@@ -14,7 +14,7 @@ describe Braintree::Xml::Rexml do
|
|
14
14
|
<under_scores />
|
15
15
|
</root>
|
16
16
|
END
|
17
|
-
Braintree::Xml::Rexml.parse(xml).
|
17
|
+
expect(Braintree::Xml::Rexml.parse(xml)).to eq({"root"=>{"dash-es"=>{}, "under_scores"=>{}}})
|
18
18
|
end
|
19
19
|
|
20
20
|
it "uses nil if nil=true, otherwise uses empty string" do
|
@@ -24,7 +24,7 @@ describe Braintree::Xml::Rexml do
|
|
24
24
|
<an_empty_string></an_empty_string>
|
25
25
|
</root>
|
26
26
|
END
|
27
|
-
Braintree::Xml::Rexml.parse(xml).
|
27
|
+
expect(Braintree::Xml::Rexml.parse(xml)).to eq({"root"=>{"a_nil_value"=>{"nil"=>"true"}, "an_empty_string"=>{}}})
|
28
28
|
end
|
29
29
|
|
30
30
|
it "typecasts dates and times" do
|
@@ -33,7 +33,7 @@ describe Braintree::Xml::Rexml do
|
|
33
33
|
<created-at type="datetime">2009-10-28T10:19:49Z</created-at>
|
34
34
|
</root>
|
35
35
|
END
|
36
|
-
Braintree::Xml::Rexml.parse(xml).
|
36
|
+
expect(Braintree::Xml::Rexml.parse(xml)).to eq({"root"=>{"created-at"=>{"__content__"=>"2009-10-28T10:19:49Z", "type"=>"datetime"}}})
|
37
37
|
end
|
38
38
|
|
39
39
|
it "builds an array if type=array" do
|
@@ -45,7 +45,7 @@ describe Braintree::Xml::Rexml do
|
|
45
45
|
</customers>
|
46
46
|
</root>
|
47
47
|
END
|
48
|
-
Braintree::Xml::Rexml.parse(xml).
|
48
|
+
expect(Braintree::Xml::Rexml.parse(xml)).to eq({"root"=>{"customers"=>{"type"=>"array", "customer"=>[{"name"=>{"__content__"=>"Adam"}}, {"name"=>{"__content__"=>"Ben"}}]}}})
|
49
49
|
end
|
50
50
|
end
|
51
51
|
end
|
@@ -4,7 +4,7 @@ describe Braintree::Xml do
|
|
4
4
|
describe "self.hash_from_xml" do
|
5
5
|
it "typecasts integers" do
|
6
6
|
hash = Braintree::Xml.hash_from_xml("<root><foo type=\"integer\">123</foo></root>")
|
7
|
-
hash.
|
7
|
+
expect(hash).to eq({:root => {:foo => 123}})
|
8
8
|
end
|
9
9
|
|
10
10
|
it "works with dashes or underscores" do
|
@@ -16,7 +16,7 @@ describe Braintree::Xml do
|
|
16
16
|
END
|
17
17
|
|
18
18
|
hash = Braintree::Xml.hash_from_xml(xml)
|
19
|
-
hash.
|
19
|
+
expect(hash).to eq({:root => {:dash_es => "", :under_scores => ""}})
|
20
20
|
end
|
21
21
|
|
22
22
|
it "uses nil if nil=true, otherwise uses empty string" do
|
@@ -27,7 +27,7 @@ describe Braintree::Xml do
|
|
27
27
|
</root>
|
28
28
|
END
|
29
29
|
hash = Braintree::Xml.hash_from_xml(xml)
|
30
|
-
hash.
|
30
|
+
expect(hash).to eq({:root => {:a_nil_value => nil, :an_empty_string => ""}})
|
31
31
|
end
|
32
32
|
|
33
33
|
it "typecasts dates and times" do
|
@@ -36,7 +36,7 @@ describe Braintree::Xml do
|
|
36
36
|
<created-at type="datetime">2009-10-28T10:19:49Z</created-at>
|
37
37
|
</root>
|
38
38
|
END
|
39
|
-
hash.
|
39
|
+
expect(hash).to eq({:root => {:created_at => Time.utc(2009, 10, 28, 10, 19, 49)}})
|
40
40
|
end
|
41
41
|
|
42
42
|
it "builds an array if type=array" do
|
@@ -48,7 +48,7 @@ describe Braintree::Xml do
|
|
48
48
|
</customers>
|
49
49
|
</root>
|
50
50
|
END
|
51
|
-
hash.
|
51
|
+
expect(hash).to eq({:root => {:customers => [{:name => "Adam"}, {:name => "Ben"}]}})
|
52
52
|
end
|
53
53
|
|
54
54
|
it "turns 1 and true to boolean if type = boolean" do
|
@@ -61,10 +61,10 @@ describe Braintree::Xml do
|
|
61
61
|
<uncasted-true>true</uncasted-true>
|
62
62
|
</root>
|
63
63
|
END
|
64
|
-
hash.
|
64
|
+
expect(hash).to eq({:root => {
|
65
65
|
:casted_true => true, :casted_one => true, :casted_anything => false, :casted_false => false,
|
66
66
|
:uncasted_true => "true"
|
67
|
-
}}
|
67
|
+
}})
|
68
68
|
end
|
69
69
|
|
70
70
|
it "handles values that are arrays of hashes" do
|
@@ -75,13 +75,13 @@ describe Braintree::Xml do
|
|
75
75
|
<elem><value>three</value></elem>
|
76
76
|
</container>
|
77
77
|
")
|
78
|
-
hash.
|
78
|
+
expect(hash).to eq({:container => {:elem => [{:value => "one"}, {:value => "two"}, {:value => "three"}]}})
|
79
79
|
end
|
80
80
|
end
|
81
81
|
|
82
82
|
describe "self.hash_to_xml" do
|
83
83
|
def verify_to_xml_and_back(hash)
|
84
|
-
Braintree::Xml.hash_from_xml(Braintree::Xml.hash_to_xml(hash)).
|
84
|
+
expect(Braintree::Xml.hash_from_xml(Braintree::Xml.hash_to_xml(hash))).to eq(hash)
|
85
85
|
end
|
86
86
|
|
87
87
|
it "works for a simple case" do
|
@@ -102,30 +102,30 @@ describe Braintree::Xml do
|
|
102
102
|
context "Integer" do
|
103
103
|
it "works for integers" do
|
104
104
|
hash = {:root => {:foo => 1}}
|
105
|
-
Braintree::Xml.hash_to_xml(hash).
|
105
|
+
expect(Braintree::Xml.hash_to_xml(hash)).to include("<foo type=\"integer\">1</foo>")
|
106
106
|
end
|
107
107
|
end
|
108
108
|
|
109
109
|
context "BigDecimal" do
|
110
110
|
it "works for BigDecimals" do
|
111
111
|
hash = {:root => {:foo => BigDecimal("123.45")}}
|
112
|
-
Braintree::Xml.hash_to_xml(hash).
|
112
|
+
expect(Braintree::Xml.hash_to_xml(hash)).to include("<foo>123.45</foo>")
|
113
113
|
end
|
114
114
|
|
115
115
|
it "works for BigDecimals with fewer than 2 digits" do
|
116
116
|
hash = {:root => {:foo => BigDecimal("1000.0")}}
|
117
|
-
Braintree::Xml.hash_to_xml(hash).
|
117
|
+
expect(Braintree::Xml.hash_to_xml(hash)).to include("<foo>1000.00</foo>")
|
118
118
|
end
|
119
119
|
|
120
120
|
it "works for BigDecimals with more than 2 digits" do
|
121
121
|
hash = {:root => {:foo => BigDecimal("12.345")}}
|
122
|
-
Braintree::Xml.hash_to_xml(hash).
|
122
|
+
expect(Braintree::Xml.hash_to_xml(hash)).to include("<foo>12.345</foo>")
|
123
123
|
end
|
124
124
|
end
|
125
125
|
|
126
126
|
it "works for symbols" do
|
127
127
|
hash = {:root => {:foo => :bar}}
|
128
|
-
Braintree::Xml.hash_to_xml(hash).
|
128
|
+
expect(Braintree::Xml.hash_to_xml(hash)).to include("<foo>bar</foo>")
|
129
129
|
end
|
130
130
|
|
131
131
|
it "type casts booleans" do
|
@@ -145,7 +145,7 @@ describe Braintree::Xml do
|
|
145
145
|
|
146
146
|
it "includes the encoding" do
|
147
147
|
xml = Braintree::Xml.hash_to_xml(:root => {:root => "bar"})
|
148
|
-
xml.
|
148
|
+
expect(xml).to include("<?xml version=\"1.0\" encoding=\"UTF-8\"?>")
|
149
149
|
end
|
150
150
|
|
151
151
|
it "works for only a root node and a string" do
|
@@ -155,12 +155,12 @@ describe Braintree::Xml do
|
|
155
155
|
|
156
156
|
it "escapes keys and values" do
|
157
157
|
hash = {"ke<y" => "val>ue"}
|
158
|
-
Braintree::Xml.hash_to_xml(hash).
|
158
|
+
expect(Braintree::Xml.hash_to_xml(hash)).to include("<ke<y>val>ue</ke<y>")
|
159
159
|
end
|
160
160
|
|
161
161
|
it "escapes nested keys and values" do
|
162
162
|
hash = {"top<" => {"ke<y" => "val>ue"}}
|
163
|
-
Braintree::Xml.hash_to_xml(hash).gsub(/\s/, "").
|
163
|
+
expect(Braintree::Xml.hash_to_xml(hash).gsub(/\s/, "")).to include("<top<><ke<y>val>ue</ke<y></top<>")
|
164
164
|
end
|
165
165
|
end
|
166
166
|
end
|
data/spec/unit/braintree_spec.rb
CHANGED
@@ -4,9 +4,9 @@ describe Braintree do
|
|
4
4
|
it "doesn't produce warnings if loading braintree.rb twice" do
|
5
5
|
lib_dir = File.expand_path(File.dirname(__FILE__) + "/../../lib")
|
6
6
|
braintree_file = "#{lib_dir}/braintree.rb"
|
7
|
-
File.exist?(braintree_file).
|
7
|
+
expect(File.exist?(braintree_file)).to eq(true)
|
8
8
|
output = `ruby -r rubygems -I #{lib_dir} -e 'load #{braintree_file.inspect}; load #{braintree_file.inspect}' 2>&1`
|
9
9
|
output = output.gsub(/^.*warning: constant ::Fixnum is deprecated.*\n/, "")
|
10
|
-
output.
|
10
|
+
expect(output).to eq("")
|
11
11
|
end
|
12
12
|
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.
|
4
|
+
version: 4.15.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Braintree
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-10-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: builder
|
@@ -324,6 +324,7 @@ files:
|
|
324
324
|
- spec/unit/braintree/transaction/customer_details_spec.rb
|
325
325
|
- spec/unit/braintree/transaction/deposit_details_spec.rb
|
326
326
|
- spec/unit/braintree/transaction/installment_spec.rb
|
327
|
+
- spec/unit/braintree/transaction/local_payment_details_spec.rb
|
327
328
|
- spec/unit/braintree/transaction/payment_receipt_spec.rb
|
328
329
|
- spec/unit/braintree/transaction/paypal_details_spec.rb
|
329
330
|
- spec/unit/braintree/transaction/sepa_direct_debit_account_details_spec.rb
|