diff --git a/lib/resources/orders.js b/lib/resources/orders.js index 49114642..c8c949a9 100644 --- a/lib/resources/orders.js +++ b/lib/resources/orders.js @@ -1,6 +1,6 @@ 'use strict' -const { normalizeDate } = require('../utils/razorpay-utils') +const { normalizeDate, normalizeBoolean } = require('../utils/razorpay-utils') module.exports = function (api) { return { @@ -22,7 +22,7 @@ module.exports = function (api) { count = Number(count) || 10 skip = Number(skip) || 0 - authorized = authorized + authorized = normalizeBoolean(authorized) return api.get({ url: '/orders', diff --git a/test/resources/orders.spec.js b/test/resources/orders.spec.js index fb85fa12..f0b1ced8 100644 --- a/test/resources/orders.spec.js +++ b/test/resources/orders.spec.js @@ -67,6 +67,40 @@ describe('ORDERS', () => { done() }) }) + + it('`authorized` boolean is normalized to 1/0', (done) => { + mocker.mock({ + url: '/orders' + }) + + rzpInstance.orders.all({ + authorized: true + }).then((response) => { + assert.strictEqual( + response.__JUST_FOR_TESTS__.requestQueryParams.authorized, + '1', + '`authorized: true` is sent to the API as 1' + ) + done() + }).catch(done) + }) + + it('`authorized: false` is normalized to 0', (done) => { + mocker.mock({ + url: '/orders' + }) + + rzpInstance.orders.all({ + authorized: false + }).then((response) => { + assert.strictEqual( + response.__JUST_FOR_TESTS__.requestQueryParams.authorized, + '0', + '`authorized: false` is sent to the API as 0' + ) + done() + }).catch(done) + }) }) describe('Order fetch', () => {