Skip to content

Commit 175e661

Browse files
authored
Merge pull request iugu#27 from iugu/specs-for-subscriptions
Specs for subscription and charge
2 parents 1288966 + 09d91a9 commit 175e661

14 files changed

+1000
-7
lines changed

lib/iugu/charge.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ class Charge < APIResource
33
include Iugu::APICreate
44

55
def success
6-
@attributes["success"] || false
6+
@attributes['success'] || false
77
end
88

99
def invoice

lib/iugu/subscription.rb

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,10 @@ class Subscription < APIResource
66
include Iugu::APIDelete
77

88
def add_credits(quantity)
9-
copy Iugu::Factory.create_from_response(self.class.object_type, APIRequest.request("PUT", "#{self.class.url(self.id)}/add_credits", { quantity: quantity }))
9+
copy Iugu::Factory.create_from_response(self.class.object_type,
10+
APIRequest.request('PUT',
11+
"#{self.class.url(self.id)}/add_credits",
12+
{ quantity: quantity }))
1013
self.errors = nil
1114
true
1215
rescue Iugu::RequestWithErrors => ex
@@ -15,7 +18,10 @@ def add_credits(quantity)
1518
end
1619

1720
def remove_credits(quantity)
18-
copy Iugu::Factory.create_from_response(self.class.object_type, APIRequest.request("PUT", "#{self.class.url(self.id)}/remove_credits", { quantity: quantity }))
21+
copy Iugu::Factory.create_from_response(self.class.object_type,
22+
APIRequest.request('PUT',
23+
"#{self.class.url(self.id)}/remove_credits",
24+
{ quantity: quantity }))
1925
self.errors = nil
2026
true
2127
rescue Iugu::RequestWithErrors => ex
@@ -24,7 +30,9 @@ def remove_credits(quantity)
2430
end
2531

2632
def suspend
27-
copy Iugu::Factory.create_from_response(self.class.object_type, APIRequest.request("POST", "#{self.class.url(self.id)}/suspend"))
33+
copy Iugu::Factory.create_from_response(self.class.object_type,
34+
APIRequest.request('POST',
35+
"#{self.class.url(self.id)}/suspend"))
2836
self.errors = nil
2937
true
3038
rescue Iugu::RequestWithErrors => ex
@@ -33,7 +41,9 @@ def suspend
3341
end
3442

3543
def activate
36-
copy Iugu::Factory.create_from_response(self.class.object_type, APIRequest.request("POST", "#{self.class.url(self.id)}/activate"))
44+
copy Iugu::Factory.create_from_response(self.class.object_type,
45+
APIRequest.request('POST',
46+
"#{self.class.url(self.id)}/activate"))
3747
self.errors = nil
3848
true
3949
rescue Iugu::RequestWithErrors => ex
@@ -43,7 +53,10 @@ def activate
4353

4454
def change_plan(plan_identifier, options = {})
4555
options.merge!({ plan_identifier: plan_identifier })
46-
copy Iugu::Factory.create_from_response(self.class.object_type, APIRequest.request("POST", "#{self.class.url(self.id)}/change_plan", options))
56+
copy Iugu::Factory.create_from_response(self.class.object_type,
57+
APIRequest.request('POST',
58+
"#{self.class.url(self.id)}/change_plan",
59+
options))
4760
self.errors = nil
4861
true
4962
rescue Iugu::RequestWithErrors => ex
@@ -53,7 +66,10 @@ def change_plan(plan_identifier, options = {})
5366

5467
def change_plan_simulation(plan_identifier, options = {})
5568
options.merge!({ plan_identifier: plan_identifier })
56-
Iugu::Factory.create_from_response(self.class.object_type, APIRequest.request("GET", "#{self.class.url(self.id)}/change_plan_simulation", options))
69+
Iugu::Factory.create_from_response(self.class.object_type,
70+
APIRequest.request('GET',
71+
"#{self.class.url(self.id)}/change_plan_simulation",
72+
options))
5773
end
5874

5975
def customer

spec/cassettes/Iugu_Charge/_create/should_create_a_charge_with_credit_card.yml

Lines changed: 122 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

spec/cassettes/Iugu_PaymentToken/_create/should_create_a_payment_token.yml

Lines changed: 61 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

spec/cassettes/Iugu_Subscription/_create/should_create_a_subscription.yml

Lines changed: 65 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

spec/cassettes/Iugu_Subscription/_create/should_create_a_subscription_and_an_invoice_when_it_is_about_to_expire.yml

Lines changed: 66 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)