Skip to content

Commit e19654e

Browse files
committed
Fix subscription creation. Coupon.max_redemptions is optional and can be nil
1 parent 0803694 commit e19654e

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

lib/stripe_mock/request_handlers/subscriptions.rb

+3-3
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ def create_customer_subscription(route, method_url, params, headers)
6363
coupon = coupons[coupon_id]
6464

6565
if coupon
66-
if coupon[:times_redeemed] >= coupon[:max_redemptions]
66+
if coupon[:max_redemptions].present? && coupon[:times_redeemed] >= coupon[:max_redemptions]
6767
raise Stripe::InvalidRequestError.new("Coupon #{coupon[:id]} is used up and cannot be applied.", 'coupon', http_status: 400)
6868
end
6969

@@ -134,7 +134,7 @@ def create_subscription(route, method_url, params, headers)
134134
coupon = coupons[coupon_id]
135135

136136
if coupon
137-
if coupon[:times_redeemed] >= coupon[:max_redemptions]
137+
if coupon[:max_redemptions].present? && coupon[:times_redeemed] >= coupon[:max_redemptions]
138138
raise Stripe::InvalidRequestError.new("Coupon #{coupon[:id]} is used up and cannot be applied.", 'coupon', http_status: 400)
139139
end
140140

@@ -245,7 +245,7 @@ def update_subscription(route, method_url, params, headers)
245245

246246
coupon = coupons[coupon_id]
247247
if coupon
248-
if coupon[:times_redeemed] >= coupon[:max_redemptions]
248+
if coupon[:max_redemptions].present? && coupon[:times_redeemed] >= coupon[:max_redemptions]
249249
raise Stripe::InvalidRequestError.new("Coupon #{coupon[:id]} is used up and cannot be applied.", 'coupon', http_status: 400)
250250
end
251251

0 commit comments

Comments
 (0)