ianfleeton-paypal-express 0.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. checksums.yaml +7 -0
  2. data/.document +5 -0
  3. data/.gitignore +22 -0
  4. data/.rspec +2 -0
  5. data/.travis.yml +11 -0
  6. data/Gemfile +11 -0
  7. data/LICENSE +20 -0
  8. data/README.rdoc +43 -0
  9. data/Rakefile +19 -0
  10. data/VERSION +1 -0
  11. data/ianfleeton-paypal-express.gemspec +24 -0
  12. data/lib/paypal.rb +86 -0
  13. data/lib/paypal/base.rb +19 -0
  14. data/lib/paypal/exception.rb +4 -0
  15. data/lib/paypal/exception/api_error.rb +94 -0
  16. data/lib/paypal/exception/http_error.rb +12 -0
  17. data/lib/paypal/express.rb +1 -0
  18. data/lib/paypal/express/request.rb +186 -0
  19. data/lib/paypal/express/response.rb +35 -0
  20. data/lib/paypal/ipn.rb +23 -0
  21. data/lib/paypal/nvp/request.rb +66 -0
  22. data/lib/paypal/nvp/response.rb +237 -0
  23. data/lib/paypal/payment/common/amount.rb +13 -0
  24. data/lib/paypal/payment/recurring.rb +43 -0
  25. data/lib/paypal/payment/recurring/activation.rb +14 -0
  26. data/lib/paypal/payment/recurring/billing.rb +39 -0
  27. data/lib/paypal/payment/recurring/summary.rb +11 -0
  28. data/lib/paypal/payment/request.rb +67 -0
  29. data/lib/paypal/payment/request/item.rb +26 -0
  30. data/lib/paypal/payment/response.rb +75 -0
  31. data/lib/paypal/payment/response/address.rb +7 -0
  32. data/lib/paypal/payment/response/info.rb +45 -0
  33. data/lib/paypal/payment/response/item.rb +41 -0
  34. data/lib/paypal/payment/response/payee_info.rb +7 -0
  35. data/lib/paypal/payment/response/payer.rb +7 -0
  36. data/lib/paypal/payment/response/reference.rb +23 -0
  37. data/lib/paypal/payment/response/refund.rb +17 -0
  38. data/lib/paypal/payment/response/refund_info.rb +7 -0
  39. data/lib/paypal/util.rb +27 -0
  40. data/spec/fake_response/BillAgreementUpdate/fetch.txt +1 -0
  41. data/spec/fake_response/BillAgreementUpdate/revoke.txt +1 -0
  42. data/spec/fake_response/CreateBillingAgreement/success.txt +1 -0
  43. data/spec/fake_response/CreateRecurringPaymentsProfile/failure.txt +1 -0
  44. data/spec/fake_response/CreateRecurringPaymentsProfile/success.txt +1 -0
  45. data/spec/fake_response/DoCapture/failure.txt +1 -0
  46. data/spec/fake_response/DoCapture/success.txt +1 -0
  47. data/spec/fake_response/DoExpressCheckoutPayment/failure.txt +1 -0
  48. data/spec/fake_response/DoExpressCheckoutPayment/success.txt +1 -0
  49. data/spec/fake_response/DoExpressCheckoutPayment/success_with_billing_agreement.txt +1 -0
  50. data/spec/fake_response/DoExpressCheckoutPayment/success_with_many_items.txt +1 -0
  51. data/spec/fake_response/DoReferenceTransaction/failure.txt +1 -0
  52. data/spec/fake_response/DoReferenceTransaction/success.txt +1 -0
  53. data/spec/fake_response/DoVoid/success.txt +1 -0
  54. data/spec/fake_response/GetExpressCheckoutDetails/failure.txt +1 -0
  55. data/spec/fake_response/GetExpressCheckoutDetails/success.txt +1 -0
  56. data/spec/fake_response/GetExpressCheckoutDetails/with_billing_accepted_status.txt +1 -0
  57. data/spec/fake_response/GetRecurringPaymentsProfileDetails/failure.txt +1 -0
  58. data/spec/fake_response/GetRecurringPaymentsProfileDetails/success.txt +1 -0
  59. data/spec/fake_response/GetTransactionDetails/failure.txt +1 -0
  60. data/spec/fake_response/GetTransactionDetails/success.txt +1 -0
  61. data/spec/fake_response/IPN/invalid.txt +1 -0
  62. data/spec/fake_response/IPN/valid.txt +1 -0
  63. data/spec/fake_response/ManageRecurringPaymentsProfileStatus/failure.txt +1 -0
  64. data/spec/fake_response/ManageRecurringPaymentsProfileStatus/success.txt +1 -0
  65. data/spec/fake_response/RefundTransaction/full.txt +1 -0
  66. data/spec/fake_response/SetExpressCheckout/failure.txt +1 -0
  67. data/spec/fake_response/SetExpressCheckout/success.txt +1 -0
  68. data/spec/helpers/fake_response_helper.rb +29 -0
  69. data/spec/paypal/exception/api_error_spec.rb +105 -0
  70. data/spec/paypal/exception/http_error_spec.rb +20 -0
  71. data/spec/paypal/express/request_spec.rb +578 -0
  72. data/spec/paypal/express/response_spec.rb +89 -0
  73. data/spec/paypal/ipn_spec.rb +19 -0
  74. data/spec/paypal/nvp/request_spec.rb +113 -0
  75. data/spec/paypal/nvp/response_spec.rb +175 -0
  76. data/spec/paypal/payment/common/amount_spec.rb +36 -0
  77. data/spec/paypal/payment/recurring/activation_spec.rb +19 -0
  78. data/spec/paypal/payment/recurring_spec.rb +170 -0
  79. data/spec/paypal/payment/request/item_spec.rb +27 -0
  80. data/spec/paypal/payment/request_spec.rb +136 -0
  81. data/spec/paypal/payment/response/address_spec.rb +26 -0
  82. data/spec/paypal/payment/response/info_spec.rb +93 -0
  83. data/spec/paypal/payment/response/item_spec.rb +78 -0
  84. data/spec/paypal/payment/response/payee_info_spec.rb +24 -0
  85. data/spec/paypal/payment/response/payer_spec.rb +26 -0
  86. data/spec/paypal/payment/response/reference_info_spec.rb +36 -0
  87. data/spec/paypal/payment/response/refund_info_spec.rb +18 -0
  88. data/spec/paypal/payment/response/refund_spec.rb +28 -0
  89. data/spec/paypal/payment/response_spec.rb +29 -0
  90. data/spec/paypal/util_spec.rb +32 -0
  91. data/spec/spec_helper.rb +25 -0
  92. metadata +319 -0
@@ -0,0 +1,78 @@
1
+ require 'spec_helper.rb'
2
+
3
+ describe Paypal::Payment::Response::Info do
4
+ let :attributes do
5
+ {
6
+ :NAME => 'Item Name',
7
+ :DESC => 'Item Description',
8
+ :QTY => '1',
9
+ :NUMBER => '1',
10
+ :ITEMCATEGORY => 'Digital',
11
+ :ITEMWIDTHVALUE => '1.0',
12
+ :ITEMHEIGHTVALUE => '2.0',
13
+ :ITEMLENGTHVALUE => '3.0',
14
+ :ITEMWEIGHTVALUE => '4.0'
15
+ }
16
+ end
17
+
18
+ describe '.new' do
19
+ subject { Paypal::Payment::Response::Item.new(attributes) }
20
+
21
+ describe '#name' do
22
+ subject { super().name }
23
+ it { is_expected.to eq('Item Name') }
24
+ end
25
+
26
+ describe '#description' do
27
+ subject { super().description }
28
+ it { is_expected.to eq('Item Description') }
29
+ end
30
+
31
+ describe '#quantity' do
32
+ subject { super().quantity }
33
+ it { is_expected.to eq(1) }
34
+ end
35
+
36
+ describe '#category' do
37
+ subject { super().category }
38
+ it { is_expected.to eq('Digital') }
39
+ end
40
+
41
+ describe '#width' do
42
+ subject { super().width }
43
+ it { is_expected.to eq('1.0') }
44
+ end
45
+
46
+ describe '#height' do
47
+ subject { super().height }
48
+ it { is_expected.to eq('2.0') }
49
+ end
50
+
51
+ describe '#length' do
52
+ subject { super().length }
53
+ it { is_expected.to eq('3.0') }
54
+ end
55
+
56
+ describe '#weight' do
57
+ subject { super().weight }
58
+ it { is_expected.to eq('4.0') }
59
+ end
60
+
61
+ describe '#number' do
62
+ subject { super().number }
63
+ it { is_expected.to eq('1') }
64
+ end
65
+
66
+ context 'when non-supported attributes are given' do
67
+ it 'should ignore them and warn' do
68
+ _attr_ = attributes.merge(
69
+ :ignored => 'Ignore me!'
70
+ )
71
+ expect(Paypal.logger).to receive(:warn).with(
72
+ "Ignored Parameter (Paypal::Payment::Response::Item): ignored=Ignore me!"
73
+ )
74
+ Paypal::Payment::Response::Item.new _attr_
75
+ end
76
+ end
77
+ end
78
+ end
@@ -0,0 +1,24 @@
1
+ require 'spec_helper.rb'
2
+
3
+ describe Paypal::Payment::Response::PayeeInfo do
4
+ let :attributes do
5
+ {
6
+ payee_email: 'payee@example.org',
7
+ payee_id: '0123456789ABCDEFG'
8
+ }
9
+ end
10
+
11
+ describe '.new' do
12
+ subject { Paypal::Payment::Response::PayeeInfo.new(attributes) }
13
+
14
+ describe '#payee_email' do
15
+ subject { super().payee_email }
16
+ it { is_expected.to eq 'payee@example.org' }
17
+ end
18
+
19
+ describe '#payee_id' do
20
+ subject { super().payee_id }
21
+ it { is_expected.to eq '0123456789ABCDEFG' }
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,26 @@
1
+ require 'spec_helper.rb'
2
+
3
+ describe Paypal::Payment::Response::Payer do
4
+ let :keys do
5
+ Paypal::Payment::Response::Payer.optional_attributes
6
+ end
7
+
8
+ describe '.new' do
9
+ it 'should allow nil for attributes' do
10
+ payer = Paypal::Payment::Response::Payer.new
11
+ keys.each do |key|
12
+ expect(payer.send(key)).to be_nil
13
+ end
14
+ end
15
+
16
+ it 'should treat all attributes as String' do
17
+ attributes = keys.inject({}) do |attributes, key|
18
+ attributes.merge!(key => "xyz")
19
+ end
20
+ payer = Paypal::Payment::Response::Payer.new attributes
21
+ keys.each do |key|
22
+ expect(payer.send(key)).to eq("xyz")
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,36 @@
1
+ require 'spec_helper.rb'
2
+
3
+ describe Paypal::Payment::Response::Reference do
4
+ let :attributes do
5
+ {
6
+ identifier: 'B-8XW15926RT2253736',
7
+ payee_email: 'payee@example.org',
8
+ payee_id: '0123456789ABCDEFG'
9
+ }
10
+ end
11
+
12
+ describe '.new' do
13
+ subject { Paypal::Payment::Response::Reference.new(attributes) }
14
+
15
+ describe '#identifier' do
16
+ subject { super().identifier }
17
+ it { is_expected.to eq 'B-8XW15926RT2253736' }
18
+ end
19
+
20
+ context 'when no payee info' do
21
+ let(:attributes) { { identifier: 'id' } }
22
+ it 'does not populate payee_info' do
23
+ expect(subject.payee_info).to be_nil
24
+ end
25
+ end
26
+
27
+ it 'stores payee information in payee_info' do
28
+ payee_info = double(Paypal::Payment::Response::PayeeInfo)
29
+ expect(Paypal::Payment::Response::PayeeInfo)
30
+ .to receive(:new)
31
+ .with(payee_email: 'payee@example.org', payee_id: '0123456789ABCDEFG')
32
+ .and_return(payee_info)
33
+ expect(subject.payee_info).to eq payee_info
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,18 @@
1
+ require 'spec_helper.rb'
2
+
3
+ describe Paypal::Payment::Response::RefundInfo do
4
+ let :attributes do
5
+ {
6
+ refund_status: 'Instant'
7
+ }
8
+ end
9
+
10
+ describe '.new' do
11
+ subject { Paypal::Payment::Response::RefundInfo.new(attributes) }
12
+
13
+ describe '#refund_status' do
14
+ subject { super().refund_status }
15
+ it { is_expected.to eq 'Instant' }
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,28 @@
1
+ require 'spec_helper.rb'
2
+
3
+ describe Paypal::Payment::Response::Refund do
4
+ let :attributes do
5
+ {
6
+ transaction_id: '0000000000000000L',
7
+ refund_status: 'Instant'
8
+ }
9
+ end
10
+
11
+ describe '.new' do
12
+ subject { Paypal::Payment::Response::Refund.new(attributes) }
13
+
14
+ describe '#transaction_id' do
15
+ subject { super().transaction_id }
16
+ it { is_expected.to eq '0000000000000000L' }
17
+ end
18
+
19
+ it 'stores refund information in info' do
20
+ info = double(Paypal::Payment::Response::RefundInfo)
21
+ expect(Paypal::Payment::Response::RefundInfo)
22
+ .to receive(:new)
23
+ .with(refund_status: 'Instant')
24
+ .and_return(info)
25
+ expect(subject.info).to eq info
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,29 @@
1
+ require 'spec_helper.rb'
2
+
3
+ describe Paypal::Payment::Response do
4
+ describe '.new' do
5
+ let :attributes do
6
+ {
7
+ CUSTOM: 'custom'
8
+ }
9
+ end
10
+
11
+ subject { Paypal::Payment::Response.new(attributes) }
12
+
13
+ describe '#custom' do
14
+ subject { super().custom }
15
+ it { is_expected.to eq 'custom' }
16
+ end
17
+
18
+ context 'when non-supported attributes are given' do
19
+ it 'should ignore them and warn' do
20
+ expect(Paypal.logger).to receive(:warn).with(
21
+ "Ignored Parameter (Paypal::Payment::Response): ignored=Ignore me!"
22
+ )
23
+ response = Paypal::Payment::Response.new(
24
+ :ignored => 'Ignore me!'
25
+ )
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,32 @@
1
+ require 'spec_helper.rb'
2
+
3
+ describe Paypal::Util do
4
+ describe '.formatted_amount' do
5
+ it 'should return String in "xx.yy" format' do
6
+ expect(Paypal::Util.formatted_amount(nil)).to eq('0.00')
7
+ expect(Paypal::Util.formatted_amount(10)).to eq('10.00')
8
+ expect(Paypal::Util.formatted_amount(10.02)).to eq('10.02')
9
+ expect(Paypal::Util.formatted_amount(10.2)).to eq('10.20')
10
+ expect(Paypal::Util.formatted_amount(10.24)).to eq('10.24')
11
+ expect(Paypal::Util.formatted_amount(10.255)).to eq('10.25')
12
+ end
13
+ end
14
+
15
+ describe '.to_numeric' do
16
+ it 'should return Numeric' do
17
+ expect(Paypal::Util.to_numeric('10')).to be_kind_of(Integer)
18
+ expect(Paypal::Util.to_numeric('10.5')).to be_kind_of(Float)
19
+ expect(Paypal::Util.to_numeric('-1.5')).to eq(-1.5)
20
+ expect(Paypal::Util.to_numeric('-1')).to eq(-1)
21
+ expect(Paypal::Util.to_numeric('0')).to eq(0)
22
+ expect(Paypal::Util.to_numeric('0.00')).to eq(0)
23
+ expect(Paypal::Util.to_numeric('10')).to eq(10)
24
+ expect(Paypal::Util.to_numeric('10.00')).to eq(10)
25
+ expect(Paypal::Util.to_numeric('10.02')).to eq(10.02)
26
+ expect(Paypal::Util.to_numeric('10.2')).to eq(10.2)
27
+ expect(Paypal::Util.to_numeric('10.20')).to eq(10.2)
28
+ expect(Paypal::Util.to_numeric('10.24')).to eq(10.24)
29
+ expect(Paypal::Util.to_numeric('10.25')).to eq(10.25)
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,25 @@
1
+ require 'simplecov'
2
+
3
+ SimpleCov.start do
4
+ add_filter 'spec'
5
+ end
6
+
7
+ require 'paypal'
8
+ require 'rspec'
9
+ require 'helpers/fake_response_helper'
10
+
11
+ RSpec.configure do |config|
12
+ config.before do
13
+ Paypal.logger = double("logger")
14
+ end
15
+ config.after do
16
+ WebMock.reset!
17
+ end
18
+ end
19
+
20
+ def sandbox_mode(&block)
21
+ Paypal.sandbox!
22
+ yield
23
+ ensure
24
+ Paypal.sandbox = false
25
+ end
metadata ADDED
@@ -0,0 +1,319 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: ianfleeton-paypal-express
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.8.2
5
+ platform: ruby
6
+ authors:
7
+ - Ian Fleeton
8
+ - nov matake
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2017-04-19 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: activesupport
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - ">="
19
+ - !ruby/object:Gem::Version
20
+ version: '2.3'
21
+ - - "<"
22
+ - !ruby/object:Gem::Version
23
+ version: '6'
24
+ type: :runtime
25
+ prerelease: false
26
+ version_requirements: !ruby/object:Gem::Requirement
27
+ requirements:
28
+ - - ">="
29
+ - !ruby/object:Gem::Version
30
+ version: '2.3'
31
+ - - "<"
32
+ - !ruby/object:Gem::Version
33
+ version: '6'
34
+ - !ruby/object:Gem::Dependency
35
+ name: rest-client
36
+ requirement: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '2.0'
41
+ type: :runtime
42
+ prerelease: false
43
+ version_requirements: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '2.0'
48
+ - !ruby/object:Gem::Dependency
49
+ name: attr_required
50
+ requirement: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '0.0'
55
+ - - ">="
56
+ - !ruby/object:Gem::Version
57
+ version: 0.0.5
58
+ type: :runtime
59
+ prerelease: false
60
+ version_requirements: !ruby/object:Gem::Requirement
61
+ requirements:
62
+ - - "~>"
63
+ - !ruby/object:Gem::Version
64
+ version: '0.0'
65
+ - - ">="
66
+ - !ruby/object:Gem::Version
67
+ version: 0.0.5
68
+ - !ruby/object:Gem::Dependency
69
+ name: rake
70
+ requirement: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - "~>"
73
+ - !ruby/object:Gem::Version
74
+ version: '12.0'
75
+ - - ">="
76
+ - !ruby/object:Gem::Version
77
+ version: 12.0.0
78
+ type: :development
79
+ prerelease: false
80
+ version_requirements: !ruby/object:Gem::Requirement
81
+ requirements:
82
+ - - "~>"
83
+ - !ruby/object:Gem::Version
84
+ version: '12.0'
85
+ - - ">="
86
+ - !ruby/object:Gem::Version
87
+ version: 12.0.0
88
+ - !ruby/object:Gem::Dependency
89
+ name: simplecov
90
+ requirement: !ruby/object:Gem::Requirement
91
+ requirements:
92
+ - - "~>"
93
+ - !ruby/object:Gem::Version
94
+ version: '0'
95
+ type: :development
96
+ prerelease: false
97
+ version_requirements: !ruby/object:Gem::Requirement
98
+ requirements:
99
+ - - "~>"
100
+ - !ruby/object:Gem::Version
101
+ version: '0'
102
+ - !ruby/object:Gem::Dependency
103
+ name: rspec
104
+ requirement: !ruby/object:Gem::Requirement
105
+ requirements:
106
+ - - "~>"
107
+ - !ruby/object:Gem::Version
108
+ version: '3.5'
109
+ - - ">="
110
+ - !ruby/object:Gem::Version
111
+ version: 3.5.0
112
+ type: :development
113
+ prerelease: false
114
+ version_requirements: !ruby/object:Gem::Requirement
115
+ requirements:
116
+ - - "~>"
117
+ - !ruby/object:Gem::Version
118
+ version: '3.5'
119
+ - - ">="
120
+ - !ruby/object:Gem::Version
121
+ version: 3.5.0
122
+ - !ruby/object:Gem::Dependency
123
+ name: webmock
124
+ requirement: !ruby/object:Gem::Requirement
125
+ requirements:
126
+ - - "~>"
127
+ - !ruby/object:Gem::Version
128
+ version: '3.0'
129
+ - - ">="
130
+ - !ruby/object:Gem::Version
131
+ version: 3.0.1
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: '3.0'
139
+ - - ">="
140
+ - !ruby/object:Gem::Version
141
+ version: 3.0.1
142
+ description: PayPal Express Checkout API Client for Instance, Recurring and Digital
143
+ Goods Payment.
144
+ email: ianfleeton@gmail.com
145
+ executables: []
146
+ extensions: []
147
+ extra_rdoc_files:
148
+ - LICENSE
149
+ - README.rdoc
150
+ files:
151
+ - ".document"
152
+ - ".gitignore"
153
+ - ".rspec"
154
+ - ".travis.yml"
155
+ - Gemfile
156
+ - LICENSE
157
+ - README.rdoc
158
+ - Rakefile
159
+ - VERSION
160
+ - ianfleeton-paypal-express.gemspec
161
+ - lib/paypal.rb
162
+ - lib/paypal/base.rb
163
+ - lib/paypal/exception.rb
164
+ - lib/paypal/exception/api_error.rb
165
+ - lib/paypal/exception/http_error.rb
166
+ - lib/paypal/express.rb
167
+ - lib/paypal/express/request.rb
168
+ - lib/paypal/express/response.rb
169
+ - lib/paypal/ipn.rb
170
+ - lib/paypal/nvp/request.rb
171
+ - lib/paypal/nvp/response.rb
172
+ - lib/paypal/payment/common/amount.rb
173
+ - lib/paypal/payment/recurring.rb
174
+ - lib/paypal/payment/recurring/activation.rb
175
+ - lib/paypal/payment/recurring/billing.rb
176
+ - lib/paypal/payment/recurring/summary.rb
177
+ - lib/paypal/payment/request.rb
178
+ - lib/paypal/payment/request/item.rb
179
+ - lib/paypal/payment/response.rb
180
+ - lib/paypal/payment/response/address.rb
181
+ - lib/paypal/payment/response/info.rb
182
+ - lib/paypal/payment/response/item.rb
183
+ - lib/paypal/payment/response/payee_info.rb
184
+ - lib/paypal/payment/response/payer.rb
185
+ - lib/paypal/payment/response/reference.rb
186
+ - lib/paypal/payment/response/refund.rb
187
+ - lib/paypal/payment/response/refund_info.rb
188
+ - lib/paypal/util.rb
189
+ - spec/fake_response/BillAgreementUpdate/fetch.txt
190
+ - spec/fake_response/BillAgreementUpdate/revoke.txt
191
+ - spec/fake_response/CreateBillingAgreement/success.txt
192
+ - spec/fake_response/CreateRecurringPaymentsProfile/failure.txt
193
+ - spec/fake_response/CreateRecurringPaymentsProfile/success.txt
194
+ - spec/fake_response/DoCapture/failure.txt
195
+ - spec/fake_response/DoCapture/success.txt
196
+ - spec/fake_response/DoExpressCheckoutPayment/failure.txt
197
+ - spec/fake_response/DoExpressCheckoutPayment/success.txt
198
+ - spec/fake_response/DoExpressCheckoutPayment/success_with_billing_agreement.txt
199
+ - spec/fake_response/DoExpressCheckoutPayment/success_with_many_items.txt
200
+ - spec/fake_response/DoReferenceTransaction/failure.txt
201
+ - spec/fake_response/DoReferenceTransaction/success.txt
202
+ - spec/fake_response/DoVoid/success.txt
203
+ - spec/fake_response/GetExpressCheckoutDetails/failure.txt
204
+ - spec/fake_response/GetExpressCheckoutDetails/success.txt
205
+ - spec/fake_response/GetExpressCheckoutDetails/with_billing_accepted_status.txt
206
+ - spec/fake_response/GetRecurringPaymentsProfileDetails/failure.txt
207
+ - spec/fake_response/GetRecurringPaymentsProfileDetails/success.txt
208
+ - spec/fake_response/GetTransactionDetails/failure.txt
209
+ - spec/fake_response/GetTransactionDetails/success.txt
210
+ - spec/fake_response/IPN/invalid.txt
211
+ - spec/fake_response/IPN/valid.txt
212
+ - spec/fake_response/ManageRecurringPaymentsProfileStatus/failure.txt
213
+ - spec/fake_response/ManageRecurringPaymentsProfileStatus/success.txt
214
+ - spec/fake_response/RefundTransaction/full.txt
215
+ - spec/fake_response/SetExpressCheckout/failure.txt
216
+ - spec/fake_response/SetExpressCheckout/success.txt
217
+ - spec/helpers/fake_response_helper.rb
218
+ - spec/paypal/exception/api_error_spec.rb
219
+ - spec/paypal/exception/http_error_spec.rb
220
+ - spec/paypal/express/request_spec.rb
221
+ - spec/paypal/express/response_spec.rb
222
+ - spec/paypal/ipn_spec.rb
223
+ - spec/paypal/nvp/request_spec.rb
224
+ - spec/paypal/nvp/response_spec.rb
225
+ - spec/paypal/payment/common/amount_spec.rb
226
+ - spec/paypal/payment/recurring/activation_spec.rb
227
+ - spec/paypal/payment/recurring_spec.rb
228
+ - spec/paypal/payment/request/item_spec.rb
229
+ - spec/paypal/payment/request_spec.rb
230
+ - spec/paypal/payment/response/address_spec.rb
231
+ - spec/paypal/payment/response/info_spec.rb
232
+ - spec/paypal/payment/response/item_spec.rb
233
+ - spec/paypal/payment/response/payee_info_spec.rb
234
+ - spec/paypal/payment/response/payer_spec.rb
235
+ - spec/paypal/payment/response/reference_info_spec.rb
236
+ - spec/paypal/payment/response/refund_info_spec.rb
237
+ - spec/paypal/payment/response/refund_spec.rb
238
+ - spec/paypal/payment/response_spec.rb
239
+ - spec/paypal/util_spec.rb
240
+ - spec/spec_helper.rb
241
+ homepage: http://github.com/ianfleeton/paypal-express
242
+ licenses:
243
+ - MIT
244
+ metadata: {}
245
+ post_install_message:
246
+ rdoc_options:
247
+ - "--charset=UTF-8"
248
+ require_paths:
249
+ - lib
250
+ required_ruby_version: !ruby/object:Gem::Requirement
251
+ requirements:
252
+ - - ">="
253
+ - !ruby/object:Gem::Version
254
+ version: '0'
255
+ required_rubygems_version: !ruby/object:Gem::Requirement
256
+ requirements:
257
+ - - ">="
258
+ - !ruby/object:Gem::Version
259
+ version: 1.3.6
260
+ requirements: []
261
+ rubyforge_project:
262
+ rubygems_version: 2.6.11
263
+ signing_key:
264
+ specification_version: 4
265
+ summary: PayPal Express Checkout API Client for Instance, Recurring and Digital Goods
266
+ Payment.
267
+ test_files:
268
+ - spec/fake_response/BillAgreementUpdate/fetch.txt
269
+ - spec/fake_response/BillAgreementUpdate/revoke.txt
270
+ - spec/fake_response/CreateBillingAgreement/success.txt
271
+ - spec/fake_response/CreateRecurringPaymentsProfile/failure.txt
272
+ - spec/fake_response/CreateRecurringPaymentsProfile/success.txt
273
+ - spec/fake_response/DoCapture/failure.txt
274
+ - spec/fake_response/DoCapture/success.txt
275
+ - spec/fake_response/DoExpressCheckoutPayment/failure.txt
276
+ - spec/fake_response/DoExpressCheckoutPayment/success.txt
277
+ - spec/fake_response/DoExpressCheckoutPayment/success_with_billing_agreement.txt
278
+ - spec/fake_response/DoExpressCheckoutPayment/success_with_many_items.txt
279
+ - spec/fake_response/DoReferenceTransaction/failure.txt
280
+ - spec/fake_response/DoReferenceTransaction/success.txt
281
+ - spec/fake_response/DoVoid/success.txt
282
+ - spec/fake_response/GetExpressCheckoutDetails/failure.txt
283
+ - spec/fake_response/GetExpressCheckoutDetails/success.txt
284
+ - spec/fake_response/GetExpressCheckoutDetails/with_billing_accepted_status.txt
285
+ - spec/fake_response/GetRecurringPaymentsProfileDetails/failure.txt
286
+ - spec/fake_response/GetRecurringPaymentsProfileDetails/success.txt
287
+ - spec/fake_response/GetTransactionDetails/failure.txt
288
+ - spec/fake_response/GetTransactionDetails/success.txt
289
+ - spec/fake_response/IPN/invalid.txt
290
+ - spec/fake_response/IPN/valid.txt
291
+ - spec/fake_response/ManageRecurringPaymentsProfileStatus/failure.txt
292
+ - spec/fake_response/ManageRecurringPaymentsProfileStatus/success.txt
293
+ - spec/fake_response/RefundTransaction/full.txt
294
+ - spec/fake_response/SetExpressCheckout/failure.txt
295
+ - spec/fake_response/SetExpressCheckout/success.txt
296
+ - spec/helpers/fake_response_helper.rb
297
+ - spec/paypal/exception/api_error_spec.rb
298
+ - spec/paypal/exception/http_error_spec.rb
299
+ - spec/paypal/express/request_spec.rb
300
+ - spec/paypal/express/response_spec.rb
301
+ - spec/paypal/ipn_spec.rb
302
+ - spec/paypal/nvp/request_spec.rb
303
+ - spec/paypal/nvp/response_spec.rb
304
+ - spec/paypal/payment/common/amount_spec.rb
305
+ - spec/paypal/payment/recurring/activation_spec.rb
306
+ - spec/paypal/payment/recurring_spec.rb
307
+ - spec/paypal/payment/request/item_spec.rb
308
+ - spec/paypal/payment/request_spec.rb
309
+ - spec/paypal/payment/response/address_spec.rb
310
+ - spec/paypal/payment/response/info_spec.rb
311
+ - spec/paypal/payment/response/item_spec.rb
312
+ - spec/paypal/payment/response/payee_info_spec.rb
313
+ - spec/paypal/payment/response/payer_spec.rb
314
+ - spec/paypal/payment/response/reference_info_spec.rb
315
+ - spec/paypal/payment/response/refund_info_spec.rb
316
+ - spec/paypal/payment/response/refund_spec.rb
317
+ - spec/paypal/payment/response_spec.rb
318
+ - spec/paypal/util_spec.rb
319
+ - spec/spec_helper.rb