From d1e8dddf47e38810f044a605bc26bb9541b0b799 Mon Sep 17 00:00:00 2001 From: Claudio Viola Date: Wed, 15 Jul 2020 09:31:34 +0200 Subject: [PATCH] OTC-643 using api to create settlement models --- test/integration/helpers/api.js | 7 ++++ .../settlementTransferData.js | 42 ++++++++++++------- 2 files changed, 35 insertions(+), 14 deletions(-) diff --git a/test/integration/helpers/api.js b/test/integration/helpers/api.js index 836293f4..5c8d6ba8 100644 --- a/test/integration/helpers/api.js +++ b/test/integration/helpers/api.js @@ -29,6 +29,12 @@ const axios = require('axios') const Utils = require('./utils') const Logger = require('@mojaloop/central-services-logger') +async function createSettlementModel (settlementModel) { + const url = `${Config.CENTRAL_LEDGER_URL}/settlementModels` + return axios.post(url, settlementModel) +} + + async function getParticipantAccount (currency) { const url = `${Config.CENTRAL_LEDGER_URL}/participants/Hub/accounts?currency=${currency}` const res = await axios.get(url) @@ -137,6 +143,7 @@ module.exports = { addParticipantEndpoint, createNetDebitCapInitialPositionAndLimit, createParticipantAccount, + createSettlementModel, getParticipantAccount, sendTransfer, waitForTransferToBeCommited diff --git a/test/integration/settlement_deferred_net_scenario/settlementTransferData.js b/test/integration/settlement_deferred_net_scenario/settlementTransferData.js index 4eb4ec9b..86966100 100644 --- a/test/integration/settlement_deferred_net_scenario/settlementTransferData.js +++ b/test/integration/settlement_deferred_net_scenario/settlementTransferData.js @@ -38,22 +38,33 @@ const currencies = ['USD', 'TZS'] const settlementModels = [ { - name: 'DEFERRED_NET', - settlementGranularityId: 2, // NET - settlementInterchangeId: 2, // MULTILATERAL - settlementDelayId: 2, // DEFERRED - ledgerAccountTypeId: 1, // POSITION + name: 'DEFERREDNET', + settlementGranularity: 'NET', // NET + settlementInterchange: 'MULTILATERAL', // MULTILATERAL + settlementDelay: 'DEFERRED', // DEFERRED + ledgerAccountType: 'POSITION', // POSITION autoPositionReset: true, - currencyId: null + requireLiquidityCheck: true, }, { - name: 'DEFERRED_NET_USD', - settlementGranularityId: 2, // NET - settlementInterchangeId: 2, // MULTILATERAL - settlementDelayId: 2, // DEFERRED - ledgerAccountTypeId: 1, // POSITION + name: 'DEFERREDNETUSD', + settlementGranularity: 'NET', // NET + settlementInterchange: 'MULTILATERAL', // MULTILATERAL + settlementDelay: 'DEFERRED', // DEFERRED + ledgerAccountType: 'POSITION', // POSITION autoPositionReset: true, - currencyId: 'USD' + currency: 'USD', + requireLiquidityCheck: true, + }, + { + name: 'CONTINUALGROSSUSD', + settlementGranularity: 'GROSS', // NET + settlementInterchange: 'BILATERAL', // MULTILATERAL + settlementDelay: 'IMMEDIATE', // DEFERRED + ledgerAccountType: 'POSITION', // POSITION + autoPositionReset: true, + currency: 'USD', + requireLiquidityCheck: true } ] @@ -105,7 +116,8 @@ async function init () { Logger.info('Initializing transfers') await initTransfers() } catch (err) { - Logger.error(`Error setting up initial settlement data ${err}`) + Logger.error(`Error setting up initial scenario data ${err}`) + process.exit(1) } } @@ -118,7 +130,9 @@ async function initSettlementModels () { await knex.raw('SET FOREIGN_KEY_CHECKS = 0;') await Db.settlementModel.truncate() await knex.raw('SET FOREIGN_KEY_CHECKS = 1;') - await knex.batchInsert('settlementModel', settlementModels) + await Api.createSettlementModel(settlementModels[0]) + await Api.createSettlementModel(settlementModels[1]) + await Api.createSettlementModel(settlementModels[2]) } /**