openpay 1.0.3 → 1.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (65) hide show
  1. checksums.yaml +13 -5
  2. data/.gitignore +1 -0
  3. data/.idea/.rakeTasks +2 -2
  4. data/.idea/OpenPay.iml +30 -20
  5. data/.idea/runConfigurations/Run_spec__bankaccounts_spec___OpenPay.xml +1 -0
  6. data/.idea/runConfigurations/Run_spec__cards_spec___OpenPay.xml +1 -0
  7. data/.idea/runConfigurations/Run_spec__charges_spec___OpenPay.xml +1 -0
  8. data/.idea/runConfigurations/Run_spec__customers_spec___OpenPay.xml +1 -0
  9. data/.idea/runConfigurations/Run_spec__exceptions_spec___OpenPay.xml +1 -0
  10. data/.idea/runConfigurations/Run_spec__fees_spec___OpenPay.xml +1 -0
  11. data/.idea/runConfigurations/Run_spec__payouts_spec___OpenPay.xml +1 -0
  12. data/.idea/runConfigurations/Run_spec__plans_spec___OpenPay.xml +1 -0
  13. data/.idea/runConfigurations/Run_spec__subscriptions_spec___OpenPay.xml +1 -0
  14. data/.idea/runConfigurations/Run_spec__transfers_spec___OpenPay.xml +1 -0
  15. data/.idea/runConfigurations/all_specs.xml +1 -0
  16. data/.idea/workspace.xml +484 -268
  17. data/Gemfile +0 -6
  18. data/README.md +111 -29
  19. data/lib/openpay.rb +7 -3
  20. data/lib/openpay/bankaccounts.rb +10 -11
  21. data/lib/openpay/cards.rb +12 -14
  22. data/lib/openpay/charges.rb +38 -14
  23. data/lib/openpay/customers.rb +73 -67
  24. data/lib/openpay/errors/openpay_exception_factory.rb +14 -26
  25. data/lib/openpay/fees.rb +1 -1
  26. data/lib/openpay/open_pay_resource.rb +77 -77
  27. data/lib/openpay/open_pay_resource_factory.rb +1 -1
  28. data/lib/openpay/openpay_api.rb +6 -16
  29. data/lib/openpay/payouts.rb +13 -17
  30. data/lib/openpay/plans.rb +1 -7
  31. data/lib/openpay/subscriptions.rb +21 -29
  32. data/lib/openpay/transfers.rb +14 -18
  33. data/lib/openpay/utils/search_params.rb +20 -0
  34. data/lib/version.rb +1 -2
  35. data/openpay.gemspec +0 -8
  36. data/test/Factories.rb +80 -126
  37. data/test/spec/bankaccounts_spec.rb +55 -61
  38. data/test/spec/cards_spec.rb +56 -76
  39. data/test/spec/charges_spec.rb +89 -84
  40. data/test/spec/customers_spec.rb +37 -47
  41. data/test/spec/exceptions_spec.rb +4 -21
  42. data/test/spec/fees_spec.rb +51 -7
  43. data/test/spec/payouts_spec.rb +102 -65
  44. data/test/spec/plans_spec.rb +27 -50
  45. data/test/spec/subscriptions_spec.rb +87 -24
  46. data/test/spec/transfers_spec.rb +42 -44
  47. data/test/spec/utils/search_params_spec.rb +36 -0
  48. data/test/spec_helper.rb +1 -5
  49. metadata +15 -55
  50. data/lib/OpenPay/Cards.rb +0 -75
  51. data/lib/OpenPay/Charges.rb +0 -77
  52. data/lib/OpenPay/Customers.rb +0 -194
  53. data/lib/OpenPay/Fees.rb +0 -5
  54. data/lib/OpenPay/Payouts.rb +0 -59
  55. data/lib/OpenPay/Plans.rb +0 -23
  56. data/lib/OpenPay/Subscriptions.rb +0 -58
  57. data/lib/OpenPay/Transfers.rb +0 -43
  58. data/lib/OpenPay/bankaccounts.rb +0 -59
  59. data/lib/OpenPay/errors/openpay_connection_exception.rb +0 -3
  60. data/lib/OpenPay/errors/openpay_exception.rb +0 -29
  61. data/lib/OpenPay/errors/openpay_exception_factory.rb +0 -60
  62. data/lib/OpenPay/errors/openpay_transaction_exception.rb +0 -5
  63. data/lib/OpenPay/open_pay_resource.rb +0 -242
  64. data/lib/OpenPay/open_pay_resource_factory.rb +0 -10
  65. data/lib/OpenPay/openpay_api.rb +0 -58
@@ -0,0 +1,36 @@
1
+ require_relative '../../spec_helper'
2
+ include OpenpayUtils
3
+
4
+ describe OpenpayUtils do
5
+
6
+ describe SearchParams do
7
+
8
+ subject(:search_params) { SearchParams.new }
9
+
10
+ describe 'setters and getters' do
11
+
12
+ it 'sets and gets a given value' do
13
+ val = "val"
14
+ search_params.val = val
15
+ expect(search_params.val).to eq(val)
16
+ end
17
+
18
+ it 'sets and gets a non existing attribute' do
19
+ expect(search_params.val).to eq(nil)
20
+ end
21
+ end
22
+
23
+ describe '.to_s' do
24
+ it 'generates the filter string based on the attributes' do
25
+ creation_date = "2013-11-01"
26
+ search_params.creation_gte = creation_date
27
+ limit = 2
28
+ search_params.limit = limit
29
+ amount = 100
30
+ search_params.amount_lte = amount
31
+ expect(search_params.to_s).to eq("?creation[gte]=2013-11-01&limit=2&amount[lte]=100")
32
+ end
33
+ end
34
+ end
35
+ end
36
+
data/test/spec_helper.rb CHANGED
@@ -2,7 +2,6 @@ $: << '.'
2
2
  $: << 'lib'
3
3
  $: << 'lib/openpay'
4
4
 
5
-
6
5
  require 'openpay'
7
6
  require 'factory_girl'
8
7
  require 'test/Factories'
@@ -10,12 +9,9 @@ require 'rspec'
10
9
  require 'rspec-expectations'
11
10
  require 'json_spec'
12
11
 
13
-
14
-
15
-
16
12
  RSpec.configure do |config|
17
13
  config.expect_with :rspec do |c|
18
14
  c.syntax = :expect
19
15
  config.include JsonSpec::Helpers
20
16
  end
21
- end
17
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: openpay
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.3
4
+ version: 1.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - ronnie_bermejo
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-02-23 00:00:00.000000000 Z
11
+ date: 2014-06-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client
@@ -28,14 +28,14 @@ dependencies:
28
28
  name: json
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - '>='
31
+ - - ! '>='
32
32
  - !ruby/object:Gem::Version
33
33
  version: '0'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - '>='
38
+ - - ! '>='
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
@@ -56,58 +56,30 @@ dependencies:
56
56
  name: rake
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - '>='
59
+ - - ! '>='
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - '>='
66
+ - - ! '>='
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: json_spec
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - '>='
73
+ - - ! '>='
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - '>='
80
+ - - ! '>='
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
- - !ruby/object:Gem::Dependency
84
- name: rspec
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - '>='
88
- - !ruby/object:Gem::Version
89
- version: '0'
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - '>='
95
- - !ruby/object:Gem::Version
96
- version: '0'
97
- - !ruby/object:Gem::Dependency
98
- name: factory_girl
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - '='
102
- - !ruby/object:Gem::Version
103
- version: 4.2.0
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - '='
109
- - !ruby/object:Gem::Version
110
- version: 4.2.0
111
83
  description: ruby client for Openpay API services (version 1.0.2)
112
84
  email:
113
85
  - ronnie.bermejo.mx@gmail.com
@@ -144,22 +116,6 @@ files:
144
116
  - LICENSE.txt
145
117
  - README.md
146
118
  - Rakefile
147
- - lib/OpenPay/Cards.rb
148
- - lib/OpenPay/Charges.rb
149
- - lib/OpenPay/Customers.rb
150
- - lib/OpenPay/Fees.rb
151
- - lib/OpenPay/Payouts.rb
152
- - lib/OpenPay/Plans.rb
153
- - lib/OpenPay/Subscriptions.rb
154
- - lib/OpenPay/Transfers.rb
155
- - lib/OpenPay/bankaccounts.rb
156
- - lib/OpenPay/errors/openpay_connection_exception.rb
157
- - lib/OpenPay/errors/openpay_exception.rb
158
- - lib/OpenPay/errors/openpay_exception_factory.rb
159
- - lib/OpenPay/errors/openpay_transaction_exception.rb
160
- - lib/OpenPay/open_pay_resource.rb
161
- - lib/OpenPay/open_pay_resource_factory.rb
162
- - lib/OpenPay/openpay_api.rb
163
119
  - lib/openpay.rb
164
120
  - lib/openpay/bankaccounts.rb
165
121
  - lib/openpay/cards.rb
@@ -177,6 +133,7 @@ files:
177
133
  - lib/openpay/plans.rb
178
134
  - lib/openpay/subscriptions.rb
179
135
  - lib/openpay/transfers.rb
136
+ - lib/openpay/utils/search_params.rb
180
137
  - lib/version.rb
181
138
  - openpay.gemspec
182
139
  - test/Factories.rb
@@ -191,6 +148,7 @@ files:
191
148
  - test/spec/plans_spec.rb
192
149
  - test/spec/subscriptions_spec.rb
193
150
  - test/spec/transfers_spec.rb
151
+ - test/spec/utils/search_params_spec.rb
194
152
  - test/spec_helper.rb
195
153
  homepage: http://openpay.mx/
196
154
  licenses:
@@ -205,17 +163,17 @@ require_paths:
205
163
  - .
206
164
  required_ruby_version: !ruby/object:Gem::Requirement
207
165
  requirements:
208
- - - '>='
166
+ - - ! '>='
209
167
  - !ruby/object:Gem::Version
210
168
  version: '0'
211
169
  required_rubygems_version: !ruby/object:Gem::Requirement
212
170
  requirements:
213
- - - '>='
171
+ - - ! '>='
214
172
  - !ruby/object:Gem::Version
215
173
  version: '0'
216
174
  requirements: []
217
175
  rubyforge_project:
218
- rubygems_version: 2.0.6
176
+ rubygems_version: 2.2.0
219
177
  signing_key:
220
178
  specification_version: 4
221
179
  summary: ruby api for openpay resources
@@ -232,4 +190,6 @@ test_files:
232
190
  - test/spec/plans_spec.rb
233
191
  - test/spec/subscriptions_spec.rb
234
192
  - test/spec/transfers_spec.rb
193
+ - test/spec/utils/search_params_spec.rb
235
194
  - test/spec_helper.rb
195
+ has_rdoc:
data/lib/OpenPay/Cards.rb DELETED
@@ -1,75 +0,0 @@
1
- require 'open_pay_resource'
2
-
3
- class Cards < OpenPayResource
4
-
5
- def list(creation,before,after,offset=0,limit=10)
6
-
7
- end
8
-
9
-
10
- def get(card='',customer_id=nil)
11
- if customer_id
12
- customers=@api_hook.create(:customers)
13
- customers.get_card(customer_id,card)
14
- else
15
- super card
16
- end
17
- end
18
-
19
-
20
- def create(card,customer_id=nil)
21
- if customer_id
22
- customers=@api_hook.create(:customers)
23
- customers.create_card(customer_id,card)
24
- else
25
- super card
26
- end
27
- end
28
-
29
-
30
- def delete(card_id,customer_id=nil)
31
- if customer_id
32
- customers=@api_hook.create(:customers)
33
- customers.delete_card(customer_id,card_id)
34
- else
35
- super card_id
36
- end
37
- end
38
-
39
-
40
- def delete_all(customer_id=nil)
41
- if customer_id
42
- customers=@api_hook.create(:customers)
43
- customers.delete_all_cards(customer_id)
44
- else
45
- each do |card|
46
- delete(card['id'])
47
- end
48
- end
49
- end
50
-
51
-
52
- def each(customer_id=nil)
53
- if customer_id
54
- all(customer_id).each do |card|
55
- yield card
56
- end
57
- else
58
- all.each do |card|
59
- yield card
60
- end
61
- end
62
- end
63
-
64
-
65
- def all(customer_id=nil)
66
- if customer_id
67
- customers=@api_hook.create(:customers)
68
- customers.all_cards(customer_id)
69
- else
70
- super ''
71
- end
72
- end
73
-
74
-
75
- end
@@ -1,77 +0,0 @@
1
- require 'open_pay_resource'
2
-
3
- class Charges < OpenPayResource
4
-
5
- def all(customer_id=nil)
6
- if customer_id
7
- customers=@api_hook.create(:customers)
8
- customers.all_charges(customer_id)
9
- else
10
- super ''
11
- end
12
- end
13
-
14
-
15
- def cancel(transaction_id,customer_id=nil)
16
- if customer_id
17
- customers=@api_hook.create(:customers)
18
- customers.cancel_charge(customer_id, transaction_id)
19
- else
20
- post('', transaction_id+'/cancel')
21
- end
22
- end
23
-
24
-
25
- def refund(transaction_id,description,customer_id=nil)
26
- if customer_id
27
- customers=@api_hook.create(:customers)
28
- customers.refund_charge(customer_id,transaction_id,description)
29
- else
30
- post(description, transaction_id+'/refund')
31
- end
32
- end
33
-
34
-
35
- def capture(transaction_id,customer_id=nil)
36
- if customer_id
37
- customers=@api_hook.create(:customers)
38
- customers.capture_charge(customer_id,transaction_id )
39
- else
40
- post( '',transaction_id+'/capture')
41
- end
42
- end
43
-
44
-
45
- def each(customer_id=nil)
46
- if customer_id
47
- all(customer_id).each do |card|
48
- yield card
49
- end
50
- else
51
- all.each do |card|
52
- yield card
53
- end
54
- end
55
- end
56
-
57
-
58
-
59
- def get(charge='', customer_id=nil)
60
- if customer_id
61
- customers=@api_hook.create(:customers)
62
- customers.get_charge(customer_id, charge)
63
- else
64
- super charge
65
- end
66
- end
67
-
68
- def create(charge, customer_id=nil)
69
- if customer_id
70
- customers=@api_hook.create(:customers)
71
- customers.create_charge(customer_id, charge)
72
- else
73
- super charge
74
- end
75
- end
76
-
77
- end
@@ -1,194 +0,0 @@
1
- require 'open_pay_resource'
2
-
3
-
4
-
5
- class Customers < OpenPayResource
6
-
7
-
8
- #Bankaccount
9
- def create_bank_account(customer,bank_account)
10
- create(bank_account,"#{customer}/bankaccounts")
11
- end
12
-
13
- def get_bank_account(customer,bank_id)
14
- get("#{customer}/bankaccounts/#{bank_id}")
15
- end
16
-
17
- def all_bank_accounts(customer)
18
- get("#{customer}/bankaccounts/")
19
- end
20
-
21
- def each_bank_account(customer)
22
- get("#{customer}/bankaccounts/").each do |account|
23
- yield account
24
- end
25
- end
26
-
27
-
28
- def delete_bank_account(customer,bank_id)
29
- delete("#{customer}/bankaccounts/#{bank_id}")
30
- end
31
-
32
- def delete_all_bank_accounts(customer)
33
- if env == :production
34
- raise OpenpayException.new('This method is not supported on PRODUCTION',false)
35
- end
36
- each_bank_account(customer) do |account|
37
- delete("#{customer}/bankaccounts/#{account['id']}")
38
- end
39
- end
40
-
41
-
42
- #Charges
43
- # customers.create_charge(customer_id,charge)
44
- def create_charge(customer_id,charge)
45
- create(charge,"#{customer_id}/charges")
46
- end
47
-
48
- #gets a charge_id for a given customer_id
49
- def get_charge(customer_id,charge_id)
50
- get("#{customer_id}/charges/#{charge_id}")
51
- end
52
-
53
- #return all charges for the given customer_id
54
- def all_charges(customer_id)
55
- get("#{customer_id}/charges/")
56
- end
57
-
58
- def cancel_charge(customer_id,charge_id)
59
- post(charge_id,"#{customer_id}/charges/#{charge_id}/cancel")
60
- end
61
-
62
- def refund_charge(customer_id,charge_id,description)
63
- post(description,"#{customer_id}/charges/#{charge_id}/refund")
64
- end
65
-
66
- def capture_charge(customer_id,charge_id)
67
- post('',"#{customer_id}/charges/#{charge_id}/capture")
68
- end
69
-
70
-
71
-
72
- #Payouts
73
- def create_payout(customer_id,payout)
74
- post(payout,"#{customer_id}/payouts")
75
- end
76
-
77
- def all_payouts(customer_id)
78
- get("#{customer_id}/payouts")
79
- end
80
-
81
- def get_payout(customer_id,payout_id)
82
- get("#{customer_id}/payouts/#{payout_id}")
83
- end
84
-
85
- def each_payout(customer_id)
86
- all_payouts(customer_id).each do |pay|
87
- yield pay
88
- end
89
- end
90
-
91
-
92
-
93
-
94
- #Transfers
95
- def create_transfer(customer_id,transfer)
96
- post(transfer,"#{customer_id}/transfers")
97
- end
98
-
99
- def all_transfers(customer_id)
100
- get("#{customer_id}/transfers/")
101
- end
102
-
103
- def get_transfer(customer_id,transfer_id)
104
- get("#{customer_id}/transfers/#{transfer_id}")
105
- end
106
-
107
- def each_transfer(customer_id)
108
- all_transfers(customer_id).each do |trans|
109
- yield trans
110
- end
111
- end
112
-
113
-
114
-
115
-
116
- #Subscriptions
117
- def create_subscription(subscription, plan_id)
118
- post(subscription,"#{plan_id}/subscriptions")
119
- end
120
-
121
-
122
- def delete_subscription(customer_id,subscription_id)
123
- delete("#{customer_id}/subscriptions/#{subscription_id}")
124
- end
125
-
126
-
127
- def get_subscription(customer_id,subscription_id)
128
- get("#{customer_id}/subscriptions/#{subscription_id}")
129
- end
130
-
131
-
132
- def all_subscriptions(customer_id)
133
- get("#{customer_id}/subscriptions/")
134
- end
135
-
136
- def each_subscription(customer_id)
137
- all_subscriptions(customer_id).each do |cust|
138
- yield cust
139
- end
140
- end
141
-
142
-
143
- def delete_all_subscriptions(customer_id)
144
- if env == :production
145
- raise OpenPayError ('This method is not supported on PRODUCTION')
146
- end
147
- all_subscriptions(customer_id).each do |sub|
148
- delete_subscription(customer_id,sub['id'])
149
- end
150
- end
151
-
152
-
153
-
154
-
155
- #Card
156
- def create_card(customer,card)
157
- create(card,"#{customer}/cards")
158
- end
159
-
160
-
161
- def get_card(customer,card_id)
162
- get("#{customer}/cards/#{card_id}")
163
- end
164
-
165
-
166
- def delete_card(customer,card_id)
167
- delete("#{customer}/cards/#{card_id}")
168
- end
169
-
170
-
171
- def delete_all_cards(customer_id)
172
- if env == :production
173
- raise OpenPayError ('This method is not supported on PRODUCTION')
174
- end
175
- each_card(customer_id) do |card|
176
- delete_card(customer_id,card['id'])
177
- end
178
- end
179
-
180
-
181
- def each_card(customer)
182
- get("#{customer}/cards").each do |card|
183
- yield card
184
- end
185
- end
186
-
187
-
188
- def all_cards(customer)
189
- get("#{customer}/cards")
190
- end
191
-
192
-
193
-
194
- end