ml-testing-toolkit 18.17.0-snapshot.10 → 18.17.0-snapshot.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ml-testing-toolkit",
|
|
3
3
|
"description": "Testing Toolkit for Mojaloop implementations",
|
|
4
|
-
"version": "18.17.0-snapshot.
|
|
4
|
+
"version": "18.17.0-snapshot.12",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "Vijaya Kumar Guthi, ModusBox Inc. ",
|
|
7
7
|
"contributors": [
|
|
@@ -148,29 +148,25 @@ const handleTransferIlp = (context, response) => {
|
|
|
148
148
|
const transferId = response.path.match(pathMatch)[1]
|
|
149
149
|
customLogger.logMessage('debug', 'Fetching stored transfer for fulfilment', { additionalData: { transferId } })
|
|
150
150
|
// Use objectStore to get the stored transfer
|
|
151
|
-
const storedTransfer = objectStore.get('storedTransfers', transferId
|
|
151
|
+
const storedTransfer = objectStore.get('storedTransfers', transferId)
|
|
152
152
|
customLogger.logMessage('debug', 'Stored transfer fetched for fulfilment', { additionalData: { storedTransfer, context } })
|
|
153
153
|
// Check if stored request exists and is within 30 seconds
|
|
154
154
|
if (storedTransfer) {
|
|
155
|
-
if (storedTransfer.request?.ilpPacket) {
|
|
156
|
-
customLogger.logMessage('debug', 'Stored transfer has ilpPacket. Generating fulfilment.', { additionalData: { transferId, ilpPacket: storedTransfer.request.ilpPacket } })
|
|
157
|
-
const generatedFulfilment = ilpObj.calculateFulfil(storedTransfer.request.ilpPacket).replace('"', '')
|
|
155
|
+
if (storedTransfer.data?.request?.ilpPacket) {
|
|
156
|
+
customLogger.logMessage('debug', 'Stored transfer has ilpPacket. Generating fulfilment.', { additionalData: { transferId, ilpPacket: storedTransfer.data.request.ilpPacket } })
|
|
157
|
+
const generatedFulfilment = ilpObj.calculateFulfil(storedTransfer.data.request.ilpPacket).replace('"', '')
|
|
158
158
|
response.body.fulfilment = generatedFulfilment
|
|
159
159
|
customLogger.logMessage('debug', 'Fulfilment set in response body', { additionalData: { transferId, fulfilment: generatedFulfilment } })
|
|
160
|
-
} else if (storedTransfer.request?.CdtTrfTxInf?.VrfctnOfTerms?.IlpV4PrepPacket) {
|
|
161
|
-
customLogger.logMessage('debug', 'Stored transfer has IlpV4PrepPacket. Generating fulfilment.', { additionalData: { transferId, IlpV4PrepPacket: storedTransfer.request.CdtTrfTxInf.VrfctnOfTerms.IlpV4PrepPacket } })
|
|
162
|
-
const generatedFulfilment = ilpV4Obj.calculateFulfil(storedTransfer.request.CdtTrfTxInf.VrfctnOfTerms.IlpV4PrepPacket).replace('"', '')
|
|
160
|
+
} else if (storedTransfer.data?.request?.CdtTrfTxInf?.VrfctnOfTerms?.IlpV4PrepPacket) {
|
|
161
|
+
customLogger.logMessage('debug', 'Stored transfer has IlpV4PrepPacket. Generating fulfilment.', { additionalData: { transferId, IlpV4PrepPacket: storedTransfer.data.request.CdtTrfTxInf.VrfctnOfTerms.IlpV4PrepPacket } })
|
|
162
|
+
const generatedFulfilment = ilpV4Obj.calculateFulfil(storedTransfer.data.request.CdtTrfTxInf.VrfctnOfTerms.IlpV4PrepPacket).replace('"', '')
|
|
163
163
|
response.body.TxInfAndSts.ExctnConf = generatedFulfilment
|
|
164
164
|
customLogger.logMessage('debug', 'ExctnConf set in response body', { additionalData: { transferId, ExctnConf: generatedFulfilment } })
|
|
165
165
|
} else {
|
|
166
166
|
customLogger.logMessage('warn', 'No ILP packet or IlpV4PrepPacket found in stored transfer request', { additionalData: { transferId, storedTransfer } })
|
|
167
167
|
}
|
|
168
168
|
// Remove the stored transfer from objectStore
|
|
169
|
-
objectStore.
|
|
170
|
-
objectStore.set('storedTransfers', {
|
|
171
|
-
...objectStore.get('storedTransfers', undefined, context.request.customInfo?.user),
|
|
172
|
-
[transferId]: undefined
|
|
173
|
-
}, context.request.customInfo?.user)
|
|
169
|
+
objectStore.deleteObject('storedTransfers', transferId)
|
|
174
170
|
} else {
|
|
175
171
|
delete response.body.fulfilment
|
|
176
172
|
}
|
|
@@ -334,7 +334,7 @@ const generateAsyncCallback = async (item, context, req) => {
|
|
|
334
334
|
objectStore.push('storedTransfers', transferId, {
|
|
335
335
|
request: req.payload,
|
|
336
336
|
type: isFxTransfer ? 'fxTransfer' : 'transfer'
|
|
337
|
-
}
|
|
337
|
+
})
|
|
338
338
|
}
|
|
339
339
|
|
|
340
340
|
// Getting callback info from callback map file
|
package/src/lib/objectStore.js
CHANGED
|
@@ -29,6 +29,7 @@
|
|
|
29
29
|
******/
|
|
30
30
|
|
|
31
31
|
const _ = require('lodash')
|
|
32
|
+
const { logger } = require('./logger')
|
|
32
33
|
|
|
33
34
|
const storedObject = {
|
|
34
35
|
data: {
|
|
@@ -77,13 +78,17 @@ const push = (key, item, value, user) => {
|
|
|
77
78
|
}
|
|
78
79
|
|
|
79
80
|
const clear = (object, interval) => {
|
|
80
|
-
|
|
81
|
-
for (const
|
|
82
|
-
const
|
|
83
|
-
|
|
84
|
-
|
|
81
|
+
try {
|
|
82
|
+
for (const context in storedObject) {
|
|
83
|
+
for (const item in storedObject[context][object]) {
|
|
84
|
+
const timeDiff = Date.now() - storedObject[context][object][item].insertedDate
|
|
85
|
+
if (timeDiff > interval) {
|
|
86
|
+
delete storedObject[context][object][item]
|
|
87
|
+
}
|
|
85
88
|
}
|
|
86
89
|
}
|
|
90
|
+
} catch (err) {
|
|
91
|
+
logger.error('Error clearing old objects', err)
|
|
87
92
|
}
|
|
88
93
|
}
|
|
89
94
|
|
|
@@ -97,6 +102,15 @@ const popObject = (key, item, user) => {
|
|
|
97
102
|
return null
|
|
98
103
|
}
|
|
99
104
|
|
|
105
|
+
const deleteObject = (key, item, user) => {
|
|
106
|
+
const context = init(key, user)
|
|
107
|
+
if (Object.prototype.hasOwnProperty.call(storedObject[context][key], item)) {
|
|
108
|
+
delete storedObject[context][key][item]
|
|
109
|
+
return true
|
|
110
|
+
}
|
|
111
|
+
return false
|
|
112
|
+
}
|
|
113
|
+
|
|
100
114
|
const clearOldObjects = () => {
|
|
101
115
|
const interval = 10 * 60 * 1000
|
|
102
116
|
clear('transactions', interval)
|
|
@@ -120,5 +134,6 @@ module.exports = {
|
|
|
120
134
|
initObjectStore,
|
|
121
135
|
push,
|
|
122
136
|
clear,
|
|
123
|
-
popObject
|
|
137
|
+
popObject,
|
|
138
|
+
deleteObject
|
|
124
139
|
}
|