Skip to content

Commit

Permalink
Merge pull request #453 from stripe/jlomas-fix-usage-records
Browse files Browse the repository at this point in the history
Fix UsageRecords so it passes through the rest of the arguments
  • Loading branch information
brandur-stripe committed May 14, 2018
2 parents 8b787b8 + f6abc86 commit e48b9f7
Show file tree
Hide file tree
Showing 2 changed files with 48 additions and 15 deletions.
20 changes: 9 additions & 11 deletions lib/resources/UsageRecords.js
Original file line number Diff line number Diff line change
@@ -1,16 +1,14 @@
'use strict';

var stripeMethod = require('../StripeMethod');
var StripeResource = require('../StripeResource');
var stripeMethod = StripeResource.method;

module.exports = require('../StripeResource').extend({
module.exports = StripeResource.extend({
path: 'subscription_items',
create: function(args) {
var requestPath = args.subscription_item + '/usage_records';
var reqArgs = Object.assign({}, args);
delete reqArgs.subscription_item;
return stripeMethod({
method: 'POST',
path: requestPath
}).bind(this)(reqArgs);
}

create: stripeMethod({
method: 'POST',
path: '{subscriptionItem}/usage_records',
urlParams: ['subscriptionItem'],
}),
});
43 changes: 39 additions & 4 deletions test/resources/UsageRecords.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,22 +6,57 @@ var expect = require('chai').expect;
describe('UsageRecords Resource', function() {
describe('create', function() {
it('Sends the correct request', function() {
stripe.usageRecords.create({
subscription_item: 'si_123',
stripe.usageRecords.create('si_123', {
quantity: 123,
timestmap: 123321,
timestamp: 123321,
action: 'increment'
});

expect(stripe.LAST_REQUEST).to.deep.equal({
method: 'POST',
url: '/v1/subscription_items/si_123/usage_records',
headers: {},
data: {
quantity: 123,
timestmap: 123321,
timestamp: 123321,
action: 'increment'
}
});
});

it('Includes any options that were provided', function(done) {
stripe.usageRecords.create('si_123', {
quantity: 123,
timestamp: 123321,
action: 'increment'
}, {
stripe_account: 'acct_456',
}).then(function(record) {
expect(stripe.LAST_REQUEST).to.deep.equal({
method: 'POST',
url: '/v1/subscription_items/si_123/usage_records',
headers: {
'Stripe-Account': 'acct_456'
},
data: {
quantity: 123,
timestamp: 123321,
action: 'increment'
}
});

done();
});
});

it('Calls a given callback', function(done) {
stripe.usageRecords.create('si_123', {
quantity: 123,
timestamp: 123321,
action: 'increment'
}, function(error, record) {
done(error);
});
});
});
});

0 comments on commit e48b9f7

Please sign in to comment.