diff --git a/README.md b/README.md index c52d8f1..f520a07 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ Full API documentation available at http://docs.openpay.mx/. //class var Openpay = require('openpay'); //instantiation -var openpay = new Openpay(' your merchant id ', ' your private key ', [ isProduction ]); +var openpay = new Openpay(' your merchant id ', ' your private key ','public IP address of the client',"mx", [ isProduction ]); //use the api openpay.< resource_name >.< method_name >( ... ) ``` @@ -92,7 +92,7 @@ Before use the library will be necessary to set up your Merchant ID and Private ```js var Openpay = require('openpay'); -var openpay = new Openpay('your merchant id', 'your private key', 'mx', false); +var openpay = new Openpay('your merchant id', 'your private key','public IP address of the client', 'mx', false); openpay.setTimeout(30000); ``` @@ -102,6 +102,7 @@ In addition, you can set the merchant id, private key, and the mode like this openpay.setMerchantId(' your merchant id '); openpay.setPrivateKey(' your private key '); openpay.setProductionReady(true) +openpay.setPublicIp('138.84.62.109') ``` Once configured the library, you can use it to interact with Openpay API services. diff --git a/lib/openpay.js b/lib/openpay.js index 9481603..6db36d4 100644 --- a/lib/openpay.js +++ b/lib/openpay.js @@ -8,16 +8,21 @@ Openpay.SANDBOX_URL = 'https://sandbox-api.openpay.mx'; Openpay.SANDBOX_API_VERSION = '/v1/'; -function Openpay(merchantId, privateKey, countryCode = 'mx', isProductionReady) { +function Openpay(merchantId, privateKey, publicIp, countryCode = 'mx', isProductionReady) { + if (!publicIp) { + throw new Error("Public Ip can't be null or empty"); + } this.merchantId = merchantId; this.privateKey = privateKey; this.isSandbox = isProductionReady ? false : true; this.timeout = 90000; + this.publicIp = publicIp; this.define({ isSandbox: this.isSandbox, privateKey: this.privateKey, merchantId: this.merchantId, - timeout: this.timeout + timeout: this.timeout, + publicIp: this.publicIp, }); this.setBaseUrl(countryCode); @@ -30,6 +35,10 @@ function Openpay(merchantId, privateKey, countryCode = 'mx', isProductionReady) this.privateKey = privateKey; this._reDefine(); }; + this.setPublicIp = function (publicIp) { + this.publicIp = publicIp; + this._reDefine(); + }; this.setProductionReady = function (isProductionReady) { this.isSandbox = !isProductionReady; @@ -46,7 +55,8 @@ function Openpay(merchantId, privateKey, countryCode = 'mx', isProductionReady) isSandbox: this.isSandbox, privateKey: this.privateKey, merchantId: this.merchantId, - timeout: this.timeout + timeout: this.timeout, + publicIp:this.publicIp }); }; } @@ -956,7 +966,10 @@ var sendRequest = function (data) { contentType: 'json', timeout: data.timeout, data: data.requestData.json, - dataType: 'json' + dataType: 'json', + headers: { + 'X-Forwarded-For': data.publicIp + } }; urllib.request(url, options, function (err, body, res) { @@ -975,7 +988,10 @@ var sendStoreRequest = function (data) { contentType: 'json', timeout: data.timeout, data: data.requestData.json, - dataType: 'json' + dataType: 'json', + headers: { + 'X-Forwarded-For': data.publicIp + } }; urllib.request(url, options, function (err, body, res) { diff --git a/test/bank-accounts.test.js b/test/bank-accounts.test.js index c818470..43b8c59 100644 --- a/test/bank-accounts.test.js +++ b/test/bank-accounts.test.js @@ -2,7 +2,7 @@ var assert = require('assert'); var _ = require('underscore'); var Openpay = require('../lib/openpay'); /*Sandbox*/ -var openpay = new Openpay('m1qp3av1ymcfufkuuoah', 'sk_ed05f1de65fa4a67a3d3056a4efa2905'); +var openpay = new Openpay('m1qp3av1ymcfufkuuoah', 'sk_ed05f1de65fa4a67a3d3056a4efa2905',"138.85.61.94"); openpay.setTimeout(20000); var enableLogging = true; var customerId = ''; diff --git a/test/cards.test.js b/test/cards.test.js index 6537ec0..8e03541 100644 --- a/test/cards.test.js +++ b/test/cards.test.js @@ -3,7 +3,7 @@ var _ = require('underscore'); var Openpay = require('../lib/openpay'); /*Sandbox*/ -var openpay = new Openpay('m1qp3av1ymcfufkuuoah', 'sk_ed05f1de65fa4a67a3d3056a4efa2905'); +var openpay = new Openpay('m1qp3av1ymcfufkuuoah', 'sk_ed05f1de65fa4a67a3d3056a4efa2905',"138.85.61.94"); openpay.setTimeout(30000); var enableLogging = true; diff --git a/test/charges_test.js b/test/charges_test.js index 0236118..94e4681 100644 --- a/test/charges_test.js +++ b/test/charges_test.js @@ -3,7 +3,7 @@ var _ = require('underscore'); var Openpay = require('../lib/openpay'); /*Sandbox*/ -var openpay = new Openpay('m1qp3av1ymcfufkuuoah', 'sk_ed05f1de65fa4a67a3d3056a4efa2905'); +var openpay = new Openpay('m1qp3av1ymcfufkuuoah', 'sk_ed05f1de65fa4a67a3d3056a4efa2905',"138.85.61.94"); openpay.setTimeout(30000); var enableLogging = true; diff --git a/test/colombia/cards.test.colombia.js b/test/colombia/cards.test.colombia.js index eb199d0..7229c9e 100644 --- a/test/colombia/cards.test.colombia.js +++ b/test/colombia/cards.test.colombia.js @@ -3,7 +3,7 @@ var _ = require('underscore'); var Openpay = require('../../lib/openpay'); /*Sandbox*/ -var openpay = new Openpay('mwf7x79goz7afkdbuyqd', 'sk_94a89308b4d7469cbda762c4b392152a', 'co', false); +var openpay = new Openpay('mwf7x79goz7afkdbuyqd', 'sk_94a89308b4d7469cbda762c4b392152a',"138.85.61.94", 'co', false); openpay.setTimeout(30000); var enableLogging = true; diff --git a/test/colombia/charges_test.colombia.js b/test/colombia/charges_test.colombia.js index 0ded2e8..a3735d2 100644 --- a/test/colombia/charges_test.colombia.js +++ b/test/colombia/charges_test.colombia.js @@ -3,7 +3,7 @@ var _ = require('underscore'); var Openpay = require('../../lib/openpay'); /*Sandbox*/ -var openpay = new Openpay('mwf7x79goz7afkdbuyqd', 'sk_94a89308b4d7469cbda762c4b392152a', 'co', false); +var openpay = new Openpay('mwf7x79goz7afkdbuyqd', 'sk_94a89308b4d7469cbda762c4b392152a',"138.85.61.94", 'co', false); openpay.setTimeout(30000); var enableLogging = true; diff --git a/test/colombia/clients_test.colombia.js b/test/colombia/clients_test.colombia.js index 97750c8..1f7119e 100644 --- a/test/colombia/clients_test.colombia.js +++ b/test/colombia/clients_test.colombia.js @@ -3,7 +3,7 @@ var _ = require('underscore'); var Openpay = require('../../lib/openpay'); /*Sandbox*/ -var openpay = new Openpay('mwf7x79goz7afkdbuyqd', 'sk_94a89308b4d7469cbda762c4b392152a', 'co', false); +var openpay = new Openpay('mwf7x79goz7afkdbuyqd', 'sk_94a89308b4d7469cbda762c4b392152a',"138.85.61.94", 'co', false); openpay.setTimeout(10000); var enableLogging = true; diff --git a/test/colombia/plans.test.colombia.js b/test/colombia/plans.test.colombia.js index c9548d6..24411fa 100644 --- a/test/colombia/plans.test.colombia.js +++ b/test/colombia/plans.test.colombia.js @@ -3,7 +3,7 @@ var _ = require('underscore'); var Openpay = require('../../lib/openpay'); /*Sandbox*/ -var openpay = new Openpay('mwf7x79goz7afkdbuyqd', 'sk_94a89308b4d7469cbda762c4b392152a', 'co', false); +var openpay = new Openpay('mwf7x79goz7afkdbuyqd', 'sk_94a89308b4d7469cbda762c4b392152a',"138.85.61.94", 'co', false); openpay.setTimeout(20000); var enableLogging = true; @@ -14,7 +14,8 @@ var newPlan = { "name": "Curso de ingles", "repeat_unit": "month", "trial_days": "30", - "repeat_every": "1" + "repeat_every": "1", + "currency":"COP", } describe('Plans testing', function () { var plan; @@ -30,7 +31,7 @@ describe('Plans testing', function () { describe('Update plan', function () { it('should return statusCode 200||201', function (done) { - const updatePlan = {name:"plan updated"} + const updatePlan = {name:"plan updated"}; openpay.plans.update(plan.id, updatePlan, function (error, body, response) { assert.equal(response.statusCode === 200 || response.statusCode === 201, true, ''); done(); diff --git a/test/colombia/pse_test.colombia.js b/test/colombia/pse_test.colombia.js index 15f047d..21b5d80 100644 --- a/test/colombia/pse_test.colombia.js +++ b/test/colombia/pse_test.colombia.js @@ -3,7 +3,7 @@ var _ = require('underscore'); var Openpay = require('../../lib/openpay'); /*Sandbox*/ -var openpay = new Openpay('mwf7x79goz7afkdbuyqd', 'sk_94a89308b4d7469cbda762c4b392152a', 'co', false); +var openpay = new Openpay('mwf7x79goz7afkdbuyqd', 'sk_94a89308b4d7469cbda762c4b392152a',"138.85.61.94", 'co', false); openpay.setTimeout(30000); var enableLogging = true; diff --git a/test/colombia/subscriptions.test.colombia.js b/test/colombia/subscriptions.test.colombia.js index dc26ec1..8a55985 100644 --- a/test/colombia/subscriptions.test.colombia.js +++ b/test/colombia/subscriptions.test.colombia.js @@ -2,7 +2,7 @@ var assert = require('assert'); var _ = require('underscore'); var Openpay = require('../../lib/openpay'); /*Sandbox*/ -var openpay = new Openpay('mwf7x79goz7afkdbuyqd', 'sk_94a89308b4d7469cbda762c4b392152a', 'co', false); +var openpay = new Openpay('mwf7x79goz7afkdbuyqd', 'sk_94a89308b4d7469cbda762c4b392152a',"138.85.61.94", 'co', false); openpay.setTimeout(30000); var enableLogging = true; @@ -40,7 +40,7 @@ describe('Plans testing', function () { var customer; var subscription; - describe('Create plan', function () { + it('Create plan', function () { it('should return statusCode 200||201', function (done) { openpay.plans.create(newPlan, function (error, body, response) { plan = body; @@ -50,7 +50,7 @@ describe('Plans testing', function () { }); }); - describe('Create customer', function () { + it('Create customer', function () { it('create customer for test', function (done) { openpay.customers.create(testCreateCustomer, function (error, body, response) { customer = body; @@ -60,9 +60,9 @@ describe('Plans testing', function () { }); - describe('Create subscription', function () { - subscription.plan_id = plan?.id; + it('Create subscription', function () { it('should return statusCode 200||201', function (done) { + subscription.plan_id = plan.id; openpay.customers.subscriptions.create(customer.id, subscription, function (error, body, response) { subscription = body; assert.equal(response.statusCode === 200 || response.statusCode === 201, true, ''); @@ -71,7 +71,7 @@ describe('Plans testing', function () { }); }); - describe('Update subscription', function () { + it('Update subscription', function () { it('should return statusCode 200||201', function (done) { const updateSubscription = {trial_end_date: "2021-12-12"} openpay.customers.subscriptions.update(subscription.id, updateSubscription, function (error, body, response) { @@ -81,7 +81,7 @@ describe('Plans testing', function () { }); }); - describe('Get subscription', function () { + it('Get subscription', function () { it('should return statusCode 200||201', function (done) { openpay.customers.subscriptions.get(customer.id, subscription.id, function (error, body, response) { assert.equal(response.statusCode === 200 || response.statusCode === 201, true, ''); @@ -91,7 +91,7 @@ describe('Plans testing', function () { }); - describe('subscription List', function () { + it('subscription List', function () { it('should return statusCode 200||201', function (done) { var searchParams = { 'limit': 10 @@ -103,7 +103,7 @@ describe('Plans testing', function () { }); }); - describe('Cancell subscription', function () { + it('Cancell subscription', function () { it('should return statusCode 200||201', function (done) { openpay.customers.subscriptions.delete(subscription.id, function (error, body, response) { assert.equal(response.statusCode === 200 || response.statusCode === 201 || response.statusCode === 204, true, ''); diff --git a/test/colombia/tokens_test.colombia.js b/test/colombia/tokens_test.colombia.js index d8b8389..63682c6 100644 --- a/test/colombia/tokens_test.colombia.js +++ b/test/colombia/tokens_test.colombia.js @@ -3,7 +3,7 @@ var _ = require('underscore'); var Openpay = require('../../lib/openpay'); /*Sandbox*/ -var openpay = new Openpay('mwf7x79goz7afkdbuyqd', 'sk_94a89308b4d7469cbda762c4b392152a', 'co', false); +var openpay = new Openpay('mwf7x79goz7afkdbuyqd', 'sk_94a89308b4d7469cbda762c4b392152a',"138.85.61.94", 'co', false); openpay.setTimeout(20000); var enableLogging = true; diff --git a/test/colombia/webhooks_test.colombia.js b/test/colombia/webhooks_test.colombia.js index 6f728b1..f75312d 100644 --- a/test/colombia/webhooks_test.colombia.js +++ b/test/colombia/webhooks_test.colombia.js @@ -3,12 +3,12 @@ var _ = require('underscore'); var Openpay = require('../../lib/openpay'); /*Sandbox*/ -var openpay = new Openpay('mwf7x79goz7afkdbuyqd', 'sk_94a89308b4d7469cbda762c4b392152a', 'co', false); +var openpay = new Openpay('mwf7x79goz7afkdbuyqd', 'sk_94a89308b4d7469cbda762c4b392152a',"138.85.61.94", 'co', false); openpay.setTimeout(20000); var enableLogging = true; const newWebhook = { - "url": "https://webhook.site/ab854ec2-2ac1-423b-9c0b-8502fd056cc9", + "url": "https://webhook.site/fbabe962-95c5-475c-9925-9f769ac3bc7e", "user": "juanito", "password": "passjuanito", "event_types": [ diff --git a/test/customers_test.js b/test/customers_test.js index 7154196..48f2bda 100644 --- a/test/customers_test.js +++ b/test/customers_test.js @@ -3,7 +3,7 @@ var _ = require('underscore'); var Openpay = require('../lib/openpay'); /*Sandbox*/ -var openpay = new Openpay('gdntnaxvkcdviesgaxem', 'sk_b97e606487d34b44ab66e03d5bd14747'); +var openpay = new Openpay('gdntnaxvkcdviesgaxem', 'sk_b97e606487d34b44ab66e03d5bd14747',"138.85.61.94"); openpay.setTimeout(10000); var enableLogging = true; diff --git a/test/fees.test.js b/test/fees.test.js index 8202aef..e06b111 100644 --- a/test/fees.test.js +++ b/test/fees.test.js @@ -3,7 +3,7 @@ var _ = require('underscore'); var Openpay = require('../lib/openpay'); /*Sandbox*/ -var openpay = new Openpay('m1qp3av1ymcfufkuuoah', 'sk_ed05f1de65fa4a67a3d3056a4efa2905'); +var openpay = new Openpay('m1qp3av1ymcfufkuuoah', 'sk_ed05f1de65fa4a67a3d3056a4efa2905',"138.85.61.94"); openpay.setTimeout(2000); var enableLogging = true; diff --git a/test/group_test.js b/test/group_test.js index 0aead65..790c330 100644 --- a/test/group_test.js +++ b/test/group_test.js @@ -5,7 +5,7 @@ var urllib = require('urllib'); var Openpay = require('../lib/openpay'); /*Sandbox*/ -var openpay = new Openpay('gdntnaxvkcdviesgaxem', 'sk_b97e606487d34b44ab66e03d5bd14747'); +var openpay = new Openpay('gdntnaxvkcdviesgaxem', 'sk_b97e606487d34b44ab66e03d5bd14747',"138.85.61.94"); openpay.setTimeout(10000); var enableLogging = true; @@ -278,7 +278,7 @@ describe('Testing group API', function(){ }); describe('Update subscription', function(){ it('should return statusCode 200', function (done){ - openpay.groups.customers.subscriptions.update(merchantId, newlyCreatedCustomerId, newlyCreatedSubscriptionId, {"trial_end_date": "2022-02-11"}, function (error, body, response){ + openpay.groups.customers.subscriptions.update(merchantId, newlyCreatedCustomerId, newlyCreatedSubscriptionId, {"trial_end_date": "2025-02-11"}, function (error, body, response){ printLog(response.statusCode, body, error); assert.equal(response.statusCode, 200, ''); done(); diff --git a/test/payouts_test.js b/test/payouts_test.js index 35a8055..190954e 100644 --- a/test/payouts_test.js +++ b/test/payouts_test.js @@ -3,7 +3,7 @@ var _ = require('underscore'); var Openpay = require('../lib/openpay'); /*Sandbox*/ -var openpay = new Openpay('m1qp3av1ymcfufkuuoah', 'sk_ed05f1de65fa4a67a3d3056a4efa2905'); +var openpay = new Openpay('m1qp3av1ymcfufkuuoah', 'sk_ed05f1de65fa4a67a3d3056a4efa2905',"138.85.61.94"); openpay.setTimeout(20000); var enableLogging = true; diff --git a/test/peru/cards.pe.test.js b/test/peru/cards.pe.test.js index 5c1e9a4..961b904 100644 --- a/test/peru/cards.pe.test.js +++ b/test/peru/cards.pe.test.js @@ -3,7 +3,7 @@ var _ = require('underscore'); var Openpay = require('../../lib/openpay'); /*Sandbox*/ -var openpay = new Openpay('m3cji4ughukthjcsglv0', 'sk_f934dfe51645483e82106301d985a4f6', 'pe',false); +var openpay = new Openpay('m3cji4ughukthjcsglv0', 'sk_f934dfe51645483e82106301d985a4f6', "138.84.62.90",'pe',false); openpay.setTimeout(30000); var enableLogging = true; const card = { @@ -137,7 +137,7 @@ describe('get cards', function () { describe('delete card', function () { it('create customer', function (done) { var searchParams = { - 'creation[gte]': '2021-01-01', + 'creation[gte]': '2024-09-03', 'limit': 1 }; openpay.customers.list(searchParams, function (error, body, response) { diff --git a/test/peru/charges.pe.test.js b/test/peru/charges.pe.test.js index 29bed50..1a2aaba 100644 --- a/test/peru/charges.pe.test.js +++ b/test/peru/charges.pe.test.js @@ -3,7 +3,7 @@ var _ = require('underscore'); var Openpay = require('../../lib/openpay'); /*Sandbox*/ -var openpay = new Openpay('m3cji4ughukthjcsglv0', 'sk_f934dfe51645483e82106301d985a4f6', 'pe',false); +var openpay = new Openpay('m3cji4ughukthjcsglv0', 'sk_f934dfe51645483e82106301d985a4f6', "138.85.61.94",'pe',false); openpay.setTimeout(30000); var enableLogging = true; diff --git a/test/peru/checkouts.pe.test.js b/test/peru/checkouts.pe.test.js index 8eff18c..7b6b2bd 100644 --- a/test/peru/checkouts.pe.test.js +++ b/test/peru/checkouts.pe.test.js @@ -3,7 +3,7 @@ var _ = require('underscore'); var Openpay = require('../../lib/openpay'); /*Sandbox*/ -var openpay = new Openpay('m3cji4ughukthjcsglv0', 'sk_f934dfe51645483e82106301d985a4f6', 'pe',false); +var openpay = new Openpay('m3cji4ughukthjcsglv0', 'sk_f934dfe51645483e82106301d985a4f6', "138.85.61.94",'pe',false); openpay.setTimeout(30000); var enableLogging = true; diff --git a/test/peru/customers.pe.test.js b/test/peru/customers.pe.test.js index fb950e5..ce05aac 100644 --- a/test/peru/customers.pe.test.js +++ b/test/peru/customers.pe.test.js @@ -3,7 +3,7 @@ var _ = require('underscore'); var Openpay = require('../../lib/openpay'); /*Sandbox*/ -var openpay = new Openpay('m3cji4ughukthjcsglv0', 'sk_f934dfe51645483e82106301d985a4f6', 'pe',false); +var openpay = new Openpay('m3cji4ughukthjcsglv0', 'sk_f934dfe51645483e82106301d985a4f6', "138.85.61.94",'pe',false); openpay.setTimeout(10000); var enableLogging = true; const customer = { diff --git a/test/peru/tokens.pe.test.js b/test/peru/tokens.pe.test.js index 54a146b..4e75510 100644 --- a/test/peru/tokens.pe.test.js +++ b/test/peru/tokens.pe.test.js @@ -3,7 +3,7 @@ var _ = require('underscore'); var Openpay = require('../../lib/openpay'); /*Sandbox*/ -var openpay = new Openpay('m3cji4ughukthjcsglv0', 'sk_f934dfe51645483e82106301d985a4f6', 'pe',false); +var openpay = new Openpay('m3cji4ughukthjcsglv0', 'sk_f934dfe51645483e82106301d985a4f6', "138.85.61.94",'pe',false); openpay.setTimeout(30000); var enableLogging = true; diff --git a/test/peru/webhooks.pe.test.js b/test/peru/webhooks.pe.test.js index 3cc658a..35d8f79 100644 --- a/test/peru/webhooks.pe.test.js +++ b/test/peru/webhooks.pe.test.js @@ -3,11 +3,11 @@ var _ = require('underscore'); var Openpay = require('../../lib/openpay'); /*Sandbox*/ -var openpay = new Openpay('m3cji4ughukthjcsglv0', 'sk_f934dfe51645483e82106301d985a4f6', 'pe',false); +var openpay = new Openpay('m3cji4ughukthjcsglv0', 'sk_f934dfe51645483e82106301d985a4f6', "138.85.61.94",'pe',false); openpay.setTimeout(30000); var enableLogging = true; const webhook = { - "url": "https://webhook.site/dffe8335-b0bb-493f-a38d-3e61b711bd6a", // Cambiar por URL válida + "url": "https://webhook.site/fbabe962-95c5-475c-9925-9f769ac3bc7e", // Cambiar por URL válida "user": "juanito", "password": "passjuanito", "event_types": [ diff --git a/test/plans.test.js b/test/plans.test.js index f02e9b6..b67c06a 100644 --- a/test/plans.test.js +++ b/test/plans.test.js @@ -3,7 +3,7 @@ var _ = require('underscore'); var Openpay = require('../lib/openpay'); /*Sandbox*/ -var openpay = new Openpay('m1qp3av1ymcfufkuuoah', 'sk_ed05f1de65fa4a67a3d3056a4efa2905'); +var openpay = new Openpay('m1qp3av1ymcfufkuuoah', 'sk_ed05f1de65fa4a67a3d3056a4efa2905',"138.85.61.94"); openpay.setTimeout(20000); var enableLogging = true; diff --git a/test/subscriptions.test.js b/test/subscriptions.test.js index e4b093d..9ff5b9c 100644 --- a/test/subscriptions.test.js +++ b/test/subscriptions.test.js @@ -2,7 +2,7 @@ var assert = require('assert'); var _ = require('underscore'); var Openpay = require('../lib/openpay'); /*Sandbox*/ -var openpay = new Openpay('m1qp3av1ymcfufkuuoah', 'sk_ed05f1de65fa4a67a3d3056a4efa2905'); +var openpay = new Openpay('m1qp3av1ymcfufkuuoah', 'sk_ed05f1de65fa4a67a3d3056a4efa2905',"138.85.61.94"); openpay.setTimeout(30000); var enableLogging = true; var testCreateCustomer = { diff --git a/test/test.js b/test/test.js index 973dca6..2ba7672 100644 --- a/test/test.js +++ b/test/test.js @@ -4,7 +4,7 @@ var urllib = require('urllib'); var Openpay = require('../lib/openpay'); /*Sandbox*/ -var openpay = new Openpay('m1qp3av1ymcfufkuuoah', 'sk_ed05f1de65fa4a67a3d3056a4efa2905'); +var openpay = new Openpay('m1qp3av1ymcfufkuuoah', 'sk_ed05f1de65fa4a67a3d3056a4efa2905','138.85.61.94'); openpay.setTimeout(10000); var enableLogging = true; @@ -44,7 +44,7 @@ describe('Testing whole API', function(){ var webhook; var webhook_params = { // Update the requestbin url here. Last change: Feb 3, 2021 - 'url' : 'https://opey-requestbin.herokuapp.com/12i2q011', + 'url' : 'https://webhook.site/fbabe962-95c5-475c-9925-9f769ac3bc7e', 'event_types' : [ 'charge.refunded', 'charge.failed', @@ -831,7 +831,7 @@ describe('Testing whole API', function(){ }); describe('Update subscription', function () { it('should return statusCode 200', function (done) { - openpay.customers.subscriptions.update(newlyCreatedCustomerId, newlyCreatedSubscriptionId, {"trial_end_date": "2022-02-11"}, function (error, body, response) { + openpay.customers.subscriptions.update(newlyCreatedCustomerId, newlyCreatedSubscriptionId, {"trial_end_date": "2025-02-11"}, function (error, body, response) { printLog(response.statusCode, body, error); assert.equal(response.statusCode, 200, ''); done(); @@ -897,7 +897,23 @@ describe('Testing whole API', function(){ }); }); }); + describe('Openpay', function() { + describe('constructor', function() { + it('should throw error when publicIp is null', function() { + assert.throws(() => new Openpay('merchantId', 'privateKey', null, 'mx', false), + new Error("Public Ip can't be null or empty")); + }); + + it('should throw error when publicIp is empty', function() { + assert.throws(() => new Openpay('merchantId', 'privateKey', '', 'mx', false), + new Error("Public Ip can't be null or empty")); + }); + it('should not throw error when publicIp is provided', function() { + assert.doesNotThrow(() => new Openpay('merchantId', 'privateKey', '127.0.0.1', 'mx', false)); + }); + }); + }); }); diff --git a/test/transfers.test.js b/test/transfers.test.js index c18481b..c3422b3 100644 --- a/test/transfers.test.js +++ b/test/transfers.test.js @@ -2,7 +2,7 @@ var assert = require('assert'); var _ = require('underscore'); var Openpay = require('../lib/openpay'); /*Sandbox*/ -var openpay = new Openpay('m1qp3av1ymcfufkuuoah', 'sk_ed05f1de65fa4a67a3d3056a4efa2905'); +var openpay = new Openpay('m1qp3av1ymcfufkuuoah', 'sk_ed05f1de65fa4a67a3d3056a4efa2905',"138.85.61.94"); openpay.setTimeout(3000) var enableLogging = true;