stripe-ruby/test/stripe/coupon_test.rb
Kyle Conroy 732a494ac4 Add update class method to API resources (#426)
* Rename the `Update` operation to `Save`
* Add the `update` class method to all saveable resources
* Add tests for update method
* Add tests for plans, invoice items, and application fees
2016-06-29 14:13:42 -07:00

29 lines
975 B
Ruby

require File.expand_path('../../test_helper', __FILE__)
module Stripe
class CouponTest < Test::Unit::TestCase
should "create should return a new coupon" do
@mock.expects(:post).once.returns(make_response(make_coupon))
c = Stripe::Coupon.create
assert_equal "co_test_coupon", c.id
end
should "coupons should be saveable" do
@mock.expects(:get).once.returns(make_response(make_coupon))
@mock.expects(:post).once.returns(make_response(make_coupon))
c = Stripe::Coupon.new("test_coupon")
c.refresh
c.metadata['foo'] = 'bar'
c.save
end
should "coupons should be updateable" do
@mock.expects(:post).once.
with("https://api.stripe.com/v1/coupons/test_coupon", nil, "metadata[foo]=bar").
returns(make_response(make_coupon(metadata: {foo: 'bar'})))
c = Stripe::Coupon.update("test_coupon", metadata: {foo: 'bar'})
assert_equal('bar', c.metadata['foo'])
end
end
end