@mojaloop/sdk-scheme-adapter 12.0.1 → 12.0.2
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/.circleci/config.yml +619 -0
- package/CHANGELOG.md +7 -0
- package/CODEOWNERS +2 -0
- package/Dockerfile +35 -0
- package/LICENSE.md +10 -0
- package/PROXY.md +84 -0
- package/README.md +228 -0
- package/SECURITY.md +18 -0
- package/docker/ml-testing-toolkit/secrets/keygen.sh +5 -0
- package/docker/ml-testing-toolkit/secrets/privatekey.pem +27 -0
- package/docker/ml-testing-toolkit/secrets/publickey.cer +21 -0
- package/docker/ml-testing-toolkit/secrets/tls/createSecrets.sh +29 -0
- package/docker/ml-testing-toolkit/secrets/tls/hub_client.csr +28 -0
- package/docker/ml-testing-toolkit/secrets/tls/hub_client_cacert.pem +32 -0
- package/docker/ml-testing-toolkit/secrets/tls/hub_client_cakey.key +51 -0
- package/docker/ml-testing-toolkit/secrets/tls/hub_client_key.key +51 -0
- package/docker/ml-testing-toolkit/secrets/tls/hub_server.csr +28 -0
- package/docker/ml-testing-toolkit/secrets/tls/hub_server_cacert.pem +32 -0
- package/docker/ml-testing-toolkit/secrets/tls/hub_server_cacert.srl +1 -0
- package/docker/ml-testing-toolkit/secrets/tls/hub_server_cakey.key +51 -0
- package/docker/ml-testing-toolkit/secrets/tls/hub_server_cert.pem +33 -0
- package/docker/ml-testing-toolkit/secrets/tls/hub_server_key.key +51 -0
- package/docker/ml-testing-toolkit/secrets/tls/openssl.conf +17 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/central_admin_9.3/api_spec.yaml +2450 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/central_admin_9.3/response_map.json +96 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/fspiop_1.0/api_spec.yaml +4187 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/fspiop_1.0/callback_map.json +542 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/fspiop_1.0/mockRef.json +83 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/fspiop_1.0/trigger_templates/transaction_request_followup.json +125 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/fspiop_1.1/api_spec.yaml +3703 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/fspiop_1.1/callback_map.json +568 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/fspiop_1.1/mockRef.json +83 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/fspiop_1.1/trigger_templates/transaction_request_followup.json +125 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/settlements_1.0/api_spec.yaml +983 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/settlements_1.0/mockRef.json +38 -0
- package/docker/ml-testing-toolkit/spec_files/api_definitions/settlements_1.0/response_map.json +34 -0
- package/docker/ml-testing-toolkit/spec_files/reports/templates/newman/html_template.html +1074 -0
- package/docker/ml-testing-toolkit/spec_files/reports/templates/newman/pdf_template.html +765 -0
- package/docker/ml-testing-toolkit/spec_files/reports/templates/newman/script.js +98 -0
- package/docker/ml-testing-toolkit/spec_files/rules_callback/config.json +3 -0
- package/docker/ml-testing-toolkit/spec_files/rules_callback/default.json +426 -0
- package/docker/ml-testing-toolkit/spec_files/rules_response/config.json +3 -0
- package/docker/ml-testing-toolkit/spec_files/rules_response/default.json +1623 -0
- package/docker/ml-testing-toolkit/spec_files/rules_response/default_pisp_rules.json +161 -0
- package/docker/ml-testing-toolkit/spec_files/rules_validation/config.json +3 -0
- package/docker/ml-testing-toolkit/spec_files/rules_validation/default.json +672 -0
- package/docker/ml-testing-toolkit/spec_files/system_config.json +62 -0
- package/docker/ml-testing-toolkit/spec_files/user_config.json +45 -0
- package/docker/wait4/setup_hosts_file.sh +25 -0
- package/docker/wait4/wait4.config.js +71 -0
- package/docker/wait4/wait4.js +204 -0
- package/docker-compose.yml +67 -0
- package/docs/Mojaloop - Modusbox Onboarding functionality.pdf +0 -0
- package/docs/dfspInboundApi.yaml +1091 -0
- package/jest.config.js +4 -1
- package/junit.xml +515 -0
- package/package.json +9 -8
- package/secrets/jwsSigningKey.key +27 -0
- package/secrets/jwsVerificationKeys/mojaloop-sdk.pem +9 -0
- package/secrets/jwsVerificationKeys/switch.pem +9 -0
- package/sequences.puml +99 -0
- package/{InboundServer → src/InboundServer}/api.yaml +0 -0
- package/src/InboundServer/api_template.yaml +69 -0
- package/{InboundServer → src/InboundServer}/handlers.js +0 -0
- package/{InboundServer → src/InboundServer}/index.js +0 -0
- package/{InboundServer → src/InboundServer}/middlewares.js +0 -0
- package/{OAuthTestServer → src/OAuthTestServer}/index.js +0 -0
- package/{OAuthTestServer → src/OAuthTestServer}/model.js +0 -0
- package/{OutboundServer → src/OutboundServer}/api.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_interfaces/index.d.ts +0 -0
- package/{OutboundServer → src/OutboundServer}/api_interfaces/openapi.d.ts +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/parameters/bulkQuoteId.yaml +1 -1
- package/{OutboundServer → src/OutboundServer}/api_template/components/parameters/bulkTransferId.yaml +1 -1
- package/{OutboundServer → src/OutboundServer}/api_template/components/parameters/requestToPayTransactionId.yaml +1 -1
- package/{OutboundServer → src/OutboundServer}/api_template/components/parameters/transferId.yaml +1 -1
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/accountsCreationCompleted.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/accountsCreationError.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/accountsCreationTimeout.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/bulkQuoteBadRequest.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/bulkQuoteServerError.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/bulkQuoteSuccess.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/bulkQuoteTimeout.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/bulkTransferBadRequest.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/bulkTransferServerError.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/bulkTransferSuccess.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/bulkTransferTimeout.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/partiesByIdError404.yaml +1 -1
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/partiesByIdSuccess.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/quotesPostSuccess.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/quotesServerError.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/requestToPaySuccess.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/requestToPayTransferBadRequest.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/requestToPayTransferSuccess.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/simpleTransfersPostSuccess.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/simpleTransfersServerError.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/transferBadRequest.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/transferServerError.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/transferSuccess.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/responses/transferTimeout.yaml +0 -0
- package/src/OutboundServer/api_template/components/schemas/accountCreationStatus.yaml +18 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/accountsCreationState.yaml +0 -0
- package/src/OutboundServer/api_template/components/schemas/accountsRequest.yaml +20 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/accountsResponse.yaml +1 -1
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/async2SyncCurrentState.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/bulkQuoteErrorResponse.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/bulkQuoteRequest.yaml +2 -2
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/bulkQuoteResponse.yaml +1 -1
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/bulkQuoteStatus.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/bulkQuoteStatusResponse.yaml +1 -1
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/bulkTransferErrorResponse.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/bulkTransferRequest.yaml +2 -2
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/bulkTransferResponse.yaml +1 -1
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/bulkTransferStatus.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/bulkTransferStatusResponse.yaml +1 -1
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/errorAccountsResponse.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/errorQuotesResponse.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/errorResponse.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/errorSimpleTransfersResponse.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/errorTransferResponse.yaml +0 -0
- package/src/OutboundServer/api_template/components/schemas/extensionListEmptiable.yaml +6 -0
- package/src/OutboundServer/api_template/components/schemas/individualQuote.yaml +32 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/individualQuoteResult.yaml +5 -5
- package/src/OutboundServer/api_template/components/schemas/individualTransfer.yaml +32 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/individualTransferFulfilment.yaml +2 -2
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/individualTransferResult.yaml +6 -6
- package/src/OutboundServer/api_template/components/schemas/mojaloopError.yaml +5 -0
- package/src/OutboundServer/api_template/components/schemas/mojaloopTransactionRequestState.yaml +2 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/partiesByIdResponse.yaml +1 -1
- package/src/OutboundServer/api_template/components/schemas/quote.yaml +3 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/quoteError.yaml +0 -0
- package/src/OutboundServer/api_template/components/schemas/quotesPostRequest.yaml +13 -0
- package/src/OutboundServer/api_template/components/schemas/quotesPostResponse.yaml +48 -0
- package/src/OutboundServer/api_template/components/schemas/requestToPayRequest.yaml +39 -0
- package/src/OutboundServer/api_template/components/schemas/requestToPayResponse.yaml +41 -0
- package/src/OutboundServer/api_template/components/schemas/requestToPayTransferRequest.yaml +42 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/requestToPayTransferResponse.yaml +6 -6
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/simpleTransferServerError.yaml +0 -0
- package/src/OutboundServer/api_template/components/schemas/simpleTransfersPostRequest.yaml +12 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/simpleTransfersPostResponse.yaml +1 -1
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/transactionType.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/transferContinuationAcceptOTP.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/transferContinuationAcceptParty.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/transferContinuationAcceptQuote.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/transferError.yaml +0 -0
- package/src/OutboundServer/api_template/components/schemas/transferFulfilment.yaml +3 -0
- package/src/OutboundServer/api_template/components/schemas/transferParty.yaml +40 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/transferRequest.yaml +4 -4
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/transferResponse.yaml +6 -6
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/transferStatus.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/components/schemas/transferStatusResponse.yaml +1 -1
- package/{OutboundServer → src/OutboundServer}/api_template/health.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/openapi.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/paths/accounts.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/paths/bulkQuotes.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/paths/bulkQuotes_bulkQuoteId.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/paths/bulkTransfers.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/paths/bulkTransfers_bulkTransferId.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/paths/parties_Type_ID.yaml +2 -2
- package/{OutboundServer → src/OutboundServer}/api_template/paths/parties_Type_ID_SubId.yaml +3 -3
- package/{OutboundServer → src/OutboundServer}/api_template/paths/quotes.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/paths/requestToPay.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/paths/requestToPayTransfer.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/paths/requestToPayTransfer_requestToPayTransactionId.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/paths/simpleTransfers.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/paths/transfers.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/api_template/paths/transfers_transferId.yaml +0 -0
- package/{OutboundServer → src/OutboundServer}/handlers.js +0 -0
- package/{OutboundServer → src/OutboundServer}/index.js +0 -0
- package/{OutboundServer → src/OutboundServer}/middlewares.js +0 -0
- package/{TestServer → src/TestServer}/api.yaml +0 -0
- package/{TestServer → src/TestServer}/handlers.js +0 -0
- package/{TestServer → src/TestServer}/index.js +0 -0
- package/{config.js → src/config.js} +0 -0
- package/{index.d.ts → src/index.d.ts} +0 -0
- package/{index.js → src/index.js} +0 -0
- package/{lib → src/lib}/api/index.js +0 -0
- package/{lib → src/lib}/cache.js +0 -0
- package/{lib → src/lib}/check.js +0 -0
- package/{lib → src/lib}/model/AccountsModel.js +0 -0
- package/{lib → src/lib}/model/Async2SyncModel.js +0 -0
- package/{lib → src/lib}/model/InboundTransfersModel.js +0 -0
- package/{lib → src/lib}/model/OutboundBulkQuotesModel.js +0 -0
- package/{lib → src/lib}/model/OutboundBulkTransfersModel.js +0 -0
- package/{lib → src/lib}/model/OutboundRequestToPayModel.js +0 -0
- package/{lib → src/lib}/model/OutboundRequestToPayTransferModel.js +0 -0
- package/{lib → src/lib}/model/OutboundTransfersModel.js +0 -0
- package/{lib → src/lib}/model/PartiesModel.js +0 -0
- package/{lib → src/lib}/model/ProxyModel/MatchRules/Expression.js +0 -0
- package/{lib → src/lib}/model/ProxyModel/MatchRules/Headers.js +0 -0
- package/{lib → src/lib}/model/ProxyModel/MatchRules/MatchRule.js +0 -0
- package/{lib → src/lib}/model/ProxyModel/MatchRules/Path.js +0 -0
- package/{lib → src/lib}/model/ProxyModel/MatchRules/Query.js +0 -0
- package/{lib → src/lib}/model/ProxyModel/MatchRules/index.js +0 -0
- package/{lib → src/lib}/model/ProxyModel/Route.js +0 -0
- package/{lib → src/lib}/model/ProxyModel/configSchema.json +0 -0
- package/{lib → src/lib}/model/ProxyModel/index.js +0 -0
- package/{lib → src/lib}/model/QuotesModel.js +0 -0
- package/{lib → src/lib}/model/TransfersModel.js +0 -0
- package/{lib → src/lib}/model/common/BackendError.js +0 -0
- package/{lib → src/lib}/model/common/PersistentStateMachine.js +0 -0
- package/{lib → src/lib}/model/common/index.js +0 -0
- package/{lib → src/lib}/model/index.js +0 -0
- package/{lib → src/lib}/model/lib/deferredJob.js +0 -0
- package/{lib → src/lib}/model/lib/index.js +0 -0
- package/{lib → src/lib}/model/lib/requests/backendRequests.js +0 -0
- package/{lib → src/lib}/model/lib/requests/common.js +0 -0
- package/{lib → src/lib}/model/lib/requests/index.js +0 -0
- package/{lib → src/lib}/model/lib/shared.js +0 -0
- package/{lib → src/lib}/randomphrase/index.js +0 -0
- package/{lib → src/lib}/randomphrase/words.json +0 -0
- package/{lib → src/lib}/router.js +0 -0
- package/{lib → src/lib}/validate.js +0 -0
- package/test/integration/lib/cache.test.js +3 -3
- package/test/unit/InboundServer.test.js +4 -4
- package/test/unit/TestServer.test.js +5 -5
- package/test/unit/api/utils.js +5 -5
- package/test/unit/config.test.js +9 -9
- package/test/unit/inboundApi/handlers.test.js +6 -6
- package/test/unit/index.test.js +1 -1
- package/test/unit/lib/cache.test.js +1 -1
- package/test/unit/lib/model/AccountsModel.test.js +2 -2
- package/test/unit/lib/model/InboundTransfersModel.test.js +5 -5
- package/test/unit/lib/model/OutboundBulkQuotesModel.test.js +2 -2
- package/test/unit/lib/model/OutboundBulkTransfersModel.test.js +2 -2
- package/test/unit/lib/model/OutboundRequestToPayModel.test.js +3 -3
- package/test/unit/lib/model/OutboundRequestToPayTransferModel.test.js +2 -2
- package/test/unit/lib/model/OutboundTransfersModel.test.js +3 -3
- package/test/unit/lib/model/PartiesModel.test.js +28 -28
- package/test/unit/lib/model/QuotesModel.test.js +31 -31
- package/test/unit/lib/model/TransfersModel.test.js +3 -3
- package/test/unit/lib/model/common/PersistentStateMachine.test.js +13 -13
- package/test/unit/lib/model/mockedLibRequests.js +1 -1
- package/test/unit/outboundApi/handlers.test.js +3 -3
- package/.eslintignore +0 -2
- package/InboundServer/api_template.yaml +0 -69
- package/OutboundServer/api_template/components/schemas/accountCreationStatus.yaml +0 -18
- package/OutboundServer/api_template/components/schemas/accountsRequest.yaml +0 -20
- package/OutboundServer/api_template/components/schemas/extensionListEmptiable.yaml +0 -6
- package/OutboundServer/api_template/components/schemas/individualQuote.yaml +0 -32
- package/OutboundServer/api_template/components/schemas/individualTransfer.yaml +0 -32
- package/OutboundServer/api_template/components/schemas/mojaloopError.yaml +0 -5
- package/OutboundServer/api_template/components/schemas/mojaloopTransactionRequestState.yaml +0 -2
- package/OutboundServer/api_template/components/schemas/quote.yaml +0 -3
- package/OutboundServer/api_template/components/schemas/quotesPostRequest.yaml +0 -13
- package/OutboundServer/api_template/components/schemas/quotesPostResponse.yaml +0 -48
- package/OutboundServer/api_template/components/schemas/requestToPayRequest.yaml +0 -39
- package/OutboundServer/api_template/components/schemas/requestToPayResponse.yaml +0 -41
- package/OutboundServer/api_template/components/schemas/requestToPayTransferRequest.yaml +0 -42
- package/OutboundServer/api_template/components/schemas/simpleTransfersPostRequest.yaml +0 -12
- package/OutboundServer/api_template/components/schemas/transferFulfilment.yaml +0 -3
- package/OutboundServer/api_template/components/schemas/transferParty.yaml +0 -40
|
@@ -14,12 +14,12 @@
|
|
|
14
14
|
jest.mock('@mojaloop/sdk-standard-components');
|
|
15
15
|
|
|
16
16
|
const { uuid } = require('uuidv4');
|
|
17
|
-
const Model = require('
|
|
18
|
-
const PSM = require('
|
|
17
|
+
const Model = require('~/lib/model').QuotesModel;
|
|
18
|
+
const PSM = require('~/lib/model/common').PersistentStateMachine;
|
|
19
19
|
const { MojaloopRequests } = require('@mojaloop/sdk-standard-components');
|
|
20
20
|
const defaultConfig = require('./data/defaultConfig');
|
|
21
21
|
const mockLogger = require('../../mockLogger');
|
|
22
|
-
const deferredJob = require('
|
|
22
|
+
const deferredJob = require('~/lib/model/lib').deferredJob;
|
|
23
23
|
const pt = require('promise-timeout');
|
|
24
24
|
const putQuotesResponse = require('./data/putQuotesResponse.json');
|
|
25
25
|
|
|
@@ -27,7 +27,7 @@ describe('QuotesModel', () => {
|
|
|
27
27
|
let cacheKey;
|
|
28
28
|
let data;
|
|
29
29
|
let modelConfig;
|
|
30
|
-
|
|
30
|
+
|
|
31
31
|
const subId = uuid();
|
|
32
32
|
let handler = null;
|
|
33
33
|
beforeEach(async () => {
|
|
@@ -45,7 +45,7 @@ describe('QuotesModel', () => {
|
|
|
45
45
|
handler = jest.fn(h);
|
|
46
46
|
return subId;
|
|
47
47
|
}),
|
|
48
|
-
|
|
48
|
+
|
|
49
49
|
// mock publish and call stored handler
|
|
50
50
|
publish: jest.fn(async (channel, message) => await handler(channel, message, subId)),
|
|
51
51
|
|
|
@@ -56,7 +56,7 @@ describe('QuotesModel', () => {
|
|
|
56
56
|
data = {
|
|
57
57
|
the: 'mocked data'
|
|
58
58
|
};
|
|
59
|
-
|
|
59
|
+
|
|
60
60
|
cacheKey = `key-quotes-${uuid()}`;
|
|
61
61
|
});
|
|
62
62
|
|
|
@@ -65,7 +65,7 @@ describe('QuotesModel', () => {
|
|
|
65
65
|
const model = await Model.create(data, cacheKey, modelConfig);
|
|
66
66
|
|
|
67
67
|
expect(model.state).toBe('start');
|
|
68
|
-
|
|
68
|
+
|
|
69
69
|
// model's methods layout
|
|
70
70
|
const methods = [
|
|
71
71
|
'run',
|
|
@@ -78,7 +78,7 @@ describe('QuotesModel', () => {
|
|
|
78
78
|
});
|
|
79
79
|
|
|
80
80
|
describe('getResponse', () => {
|
|
81
|
-
|
|
81
|
+
|
|
82
82
|
it('should remap currentState', async () => {
|
|
83
83
|
const model = await Model.create(data, cacheKey, modelConfig);
|
|
84
84
|
const states = model.allStates();
|
|
@@ -88,12 +88,12 @@ describe('QuotesModel', () => {
|
|
|
88
88
|
const result = model.getResponse();
|
|
89
89
|
expect(result.currentState).toEqual(Model.mapCurrentState[state]);
|
|
90
90
|
});
|
|
91
|
-
|
|
91
|
+
|
|
92
92
|
});
|
|
93
93
|
|
|
94
94
|
it('should handle unexpected state', async() => {
|
|
95
95
|
const model = await Model.create(data, cacheKey, modelConfig);
|
|
96
|
-
|
|
96
|
+
|
|
97
97
|
// simulate lack of state by undefined property
|
|
98
98
|
delete model.context.data.currentState;
|
|
99
99
|
|
|
@@ -160,9 +160,9 @@ describe('QuotesModel', () => {
|
|
|
160
160
|
// check that this.context.data is updated
|
|
161
161
|
expect(model.context.data).toEqual({
|
|
162
162
|
quotes: { ...message },
|
|
163
|
-
// current state will be updated by onAfterTransition which isn't called
|
|
163
|
+
// current state will be updated by onAfterTransition which isn't called
|
|
164
164
|
// when manual invocation of transition handler happens
|
|
165
|
-
currentState: 'start'
|
|
165
|
+
currentState: 'start'
|
|
166
166
|
});
|
|
167
167
|
// handler should be called only once
|
|
168
168
|
expect(handler).toBeCalledTimes(1);
|
|
@@ -179,7 +179,7 @@ describe('QuotesModel', () => {
|
|
|
179
179
|
|
|
180
180
|
// ensure that cache.unsubscribe does not happened before fire the message
|
|
181
181
|
expect(cache.unsubscribe).not.toBeCalled();
|
|
182
|
-
|
|
182
|
+
|
|
183
183
|
// fire publication with given message
|
|
184
184
|
const df = deferredJob(cache, channel);
|
|
185
185
|
setImmediate(() => df.trigger(message));
|
|
@@ -205,7 +205,7 @@ describe('QuotesModel', () => {
|
|
|
205
205
|
const onRequestActionPromise = new Promise((resolve, reject) => {
|
|
206
206
|
// manually invoke transition handler
|
|
207
207
|
model.onRequestAction(model.fsm, { quoteId, fspId, quote })
|
|
208
|
-
.then(() => reject())
|
|
208
|
+
.then(() => reject())
|
|
209
209
|
.catch((err) => {
|
|
210
210
|
// subscribe should be called only once
|
|
211
211
|
expect(err instanceof pt.TimeoutError).toBeTruthy();
|
|
@@ -231,10 +231,10 @@ describe('QuotesModel', () => {
|
|
|
231
231
|
|
|
232
232
|
// ensure that cache.unsubscribe does not happened before fire the message
|
|
233
233
|
expect(cache.unsubscribe).not.toBeCalled();
|
|
234
|
-
|
|
234
|
+
|
|
235
235
|
// fire publication with given message
|
|
236
236
|
const df = deferredJob(cache, channel);
|
|
237
|
-
|
|
237
|
+
|
|
238
238
|
setTimeout(
|
|
239
239
|
() => { df.trigger(message); },
|
|
240
240
|
// ensure that publication will be far long after timeout should be auto triggered
|
|
@@ -254,7 +254,7 @@ describe('QuotesModel', () => {
|
|
|
254
254
|
const model = await Model.create(data, cacheKey, modelConfig);
|
|
255
255
|
const { cache } = model.context;
|
|
256
256
|
|
|
257
|
-
// fire publication to channel with invalid message
|
|
257
|
+
// fire publication to channel with invalid message
|
|
258
258
|
// should throw the exception from JSON.parse
|
|
259
259
|
const df = deferredJob(cache, channel);
|
|
260
260
|
setImmediate(() => df.trigger(undefined));
|
|
@@ -305,7 +305,7 @@ describe('QuotesModel', () => {
|
|
|
305
305
|
const quote = { quoteId };
|
|
306
306
|
|
|
307
307
|
const model = await Model.create(data, cacheKey, modelConfig);
|
|
308
|
-
|
|
308
|
+
|
|
309
309
|
model.requestAction = jest.fn();
|
|
310
310
|
model.getResponse = jest.fn(() => Promise.resolve({the: 'response'}));
|
|
311
311
|
|
|
@@ -327,12 +327,12 @@ describe('QuotesModel', () => {
|
|
|
327
327
|
const quote = { quoteId };
|
|
328
328
|
|
|
329
329
|
const model = await Model.create(data, cacheKey, modelConfig);
|
|
330
|
-
|
|
330
|
+
|
|
331
331
|
model.getResponse = jest.fn(() => Promise.resolve({the: 'response'}));
|
|
332
|
-
|
|
332
|
+
|
|
333
333
|
model.context.data.currentState = 'succeeded';
|
|
334
334
|
const result = await model.run({ quoteId, fspId, quote });
|
|
335
|
-
|
|
335
|
+
|
|
336
336
|
expect(result).toEqual({the: 'response'});
|
|
337
337
|
expect(model.getResponse).toBeCalledTimes(1);
|
|
338
338
|
expect(model.context.logger.log).toBeCalledWith('Action called successfully');
|
|
@@ -345,12 +345,12 @@ describe('QuotesModel', () => {
|
|
|
345
345
|
const quote = { quoteId };
|
|
346
346
|
|
|
347
347
|
const model = await Model.create(data, cacheKey, modelConfig);
|
|
348
|
-
|
|
348
|
+
|
|
349
349
|
model.getResponse = jest.fn(() => Promise.resolve({the: 'response'}));
|
|
350
|
-
|
|
350
|
+
|
|
351
351
|
model.context.data.currentState = 'errored';
|
|
352
352
|
const result = await model.run({ quoteId, fspId, quote});
|
|
353
|
-
|
|
353
|
+
|
|
354
354
|
expect(result).toBeFalsy();
|
|
355
355
|
expect(model.getResponse).not.toBeCalled();
|
|
356
356
|
expect(model.context.logger.log).toBeCalledWith('State machine in errored state');
|
|
@@ -363,7 +363,7 @@ describe('QuotesModel', () => {
|
|
|
363
363
|
const quote = { quoteId };
|
|
364
364
|
|
|
365
365
|
const model = await Model.create(data, cacheKey, modelConfig);
|
|
366
|
-
|
|
366
|
+
|
|
367
367
|
model.requestAction = jest.fn(() => { throw new Error('mocked error'); });
|
|
368
368
|
|
|
369
369
|
model.context.data.currentState = 'start';
|
|
@@ -387,7 +387,7 @@ describe('QuotesModel', () => {
|
|
|
387
387
|
const quote = { quoteId };
|
|
388
388
|
|
|
389
389
|
const model = await Model.create(data, cacheKey, modelConfig);
|
|
390
|
-
|
|
390
|
+
|
|
391
391
|
model.requestAction = jest.fn(() => {
|
|
392
392
|
const err = new Error('requestAction failed');
|
|
393
393
|
err.requestActionState = 'some';
|
|
@@ -395,7 +395,7 @@ describe('QuotesModel', () => {
|
|
|
395
395
|
});
|
|
396
396
|
model.error = jest.fn();
|
|
397
397
|
model.context.data.currentState = 'start';
|
|
398
|
-
|
|
398
|
+
|
|
399
399
|
let theError = null;
|
|
400
400
|
try {
|
|
401
401
|
await model.run({ quoteId, fspId, quote });
|
|
@@ -412,7 +412,7 @@ describe('QuotesModel', () => {
|
|
|
412
412
|
|
|
413
413
|
it('should handle input validation for lack of quoteId param', async () => {
|
|
414
414
|
const model = await Model.create(data, cacheKey, modelConfig);
|
|
415
|
-
|
|
415
|
+
|
|
416
416
|
expect(() => model.run({}))
|
|
417
417
|
.rejects.toEqual(
|
|
418
418
|
new Error('QuotesModel args requires \'quoteId\' is nonempty string and mandatory property')
|
|
@@ -422,7 +422,7 @@ describe('QuotesModel', () => {
|
|
|
422
422
|
it('should handle input validation for not quoteId & quote.quoteId be in sync', async () => {
|
|
423
423
|
const quoteId = uuid();
|
|
424
424
|
const model = await Model.create(data, cacheKey, modelConfig);
|
|
425
|
-
|
|
425
|
+
|
|
426
426
|
expect(() => model.run({quoteId, quote: { quoteId: uuid()}}))
|
|
427
427
|
.rejects.toEqual(
|
|
428
428
|
new Error('QuotesModel args requires properties \'quote.quoteId\' and \'quoteId\' to be the equal in value')
|
|
@@ -432,7 +432,7 @@ describe('QuotesModel', () => {
|
|
|
432
432
|
it('should handle input validation for fspId param', async () => {
|
|
433
433
|
const quoteId = uuid();
|
|
434
434
|
const model = await Model.create(data, cacheKey, modelConfig);
|
|
435
|
-
|
|
435
|
+
|
|
436
436
|
expect(() => model.run({quoteId, fspId:'' }))
|
|
437
437
|
.rejects.toEqual(
|
|
438
438
|
new Error('QuotesModel args requires \'fspId\' to be nonempty string')
|
|
@@ -467,4 +467,4 @@ describe('QuotesModel', () => {
|
|
|
467
467
|
);
|
|
468
468
|
});
|
|
469
469
|
});
|
|
470
|
-
});
|
|
470
|
+
});
|
|
@@ -14,12 +14,12 @@
|
|
|
14
14
|
jest.mock('@mojaloop/sdk-standard-components');
|
|
15
15
|
|
|
16
16
|
const { uuid } = require('uuidv4');
|
|
17
|
-
const Model = require('
|
|
18
|
-
const PSM = require('
|
|
17
|
+
const Model = require('~/lib/model').TransfersModel;
|
|
18
|
+
const PSM = require('~/lib/model/common').PersistentStateMachine;
|
|
19
19
|
const { MojaloopRequests } = require('@mojaloop/sdk-standard-components');
|
|
20
20
|
const defaultConfig = require('./data/defaultConfig');
|
|
21
21
|
const mockLogger = require('../../mockLogger');
|
|
22
|
-
const deferredJob = require('
|
|
22
|
+
const deferredJob = require('~/lib/model/lib').deferredJob;
|
|
23
23
|
const pt = require('promise-timeout');
|
|
24
24
|
const putTransfersResponse = require('./data/putTransfersResponse.json');
|
|
25
25
|
|
|
@@ -10,21 +10,21 @@
|
|
|
10
10
|
|
|
11
11
|
'use strict';
|
|
12
12
|
|
|
13
|
-
const Cache = jest.createMockFromModule('
|
|
13
|
+
const Cache = jest.createMockFromModule('~/lib/cache');
|
|
14
14
|
|
|
15
|
-
const PSM = require('
|
|
15
|
+
const PSM = require('~/lib/model').PersistentStateMachine;
|
|
16
16
|
const mockLogger = require('../../../mockLogger');
|
|
17
17
|
describe('PersistentStateMachine', () => {
|
|
18
18
|
let cache;
|
|
19
19
|
let data;
|
|
20
20
|
let smSpec;
|
|
21
21
|
const key = 'cache-key';
|
|
22
|
-
|
|
22
|
+
|
|
23
23
|
const logger = mockLogger({app: 'persistent-state-machine-test'});
|
|
24
24
|
|
|
25
25
|
function checkPSMLayout(psm, optData) {
|
|
26
26
|
expect(psm).toBeTruthy();
|
|
27
|
-
|
|
27
|
+
|
|
28
28
|
expect(psm.state).toEqual((optData && optData.currentState) || smSpec.init || 'none');
|
|
29
29
|
|
|
30
30
|
expect(psm.context).toEqual({
|
|
@@ -54,7 +54,7 @@ describe('PersistentStateMachine', () => {
|
|
|
54
54
|
{ name: 'init', from: 'none', to: 'start'},
|
|
55
55
|
{ name: 'gogo', from: 'start', to: 'end' },
|
|
56
56
|
{ name: 'error', from: '*', to: 'errored' }
|
|
57
|
-
],
|
|
57
|
+
],
|
|
58
58
|
methods: {
|
|
59
59
|
onGogo: async () => {
|
|
60
60
|
return new Promise( (resolved) => {
|
|
@@ -70,7 +70,7 @@ describe('PersistentStateMachine', () => {
|
|
|
70
70
|
|
|
71
71
|
// test data
|
|
72
72
|
data = { the: 'data' };
|
|
73
|
-
|
|
73
|
+
|
|
74
74
|
cache = new Cache({
|
|
75
75
|
host: 'dummycachehost',
|
|
76
76
|
port: 1234,
|
|
@@ -100,20 +100,20 @@ describe('PersistentStateMachine', () => {
|
|
|
100
100
|
expect(psm.state).toEqual('start');
|
|
101
101
|
});
|
|
102
102
|
|
|
103
|
-
describe('onPendingTransition', () => {
|
|
103
|
+
describe('onPendingTransition', () => {
|
|
104
104
|
it('should throw error if not `error` transition', async () => {
|
|
105
105
|
const psm = await PSM.create(data, cache, key, logger, smSpec);
|
|
106
106
|
checkPSMLayout(psm);
|
|
107
107
|
|
|
108
108
|
psm.init();
|
|
109
109
|
expect(() => psm.gogo()).toThrowError('Transition \'gogo\' requested while another transition is in progress');
|
|
110
|
-
|
|
110
|
+
|
|
111
111
|
});
|
|
112
112
|
|
|
113
113
|
it('should not throw error if `error` transition called when `gogo` is pending', (done) => {
|
|
114
114
|
PSM.create(data, cache, key, logger, smSpec).then((psm) => {
|
|
115
115
|
checkPSMLayout(psm);
|
|
116
|
-
|
|
116
|
+
|
|
117
117
|
psm.init()
|
|
118
118
|
.then(() => {
|
|
119
119
|
expect(psm.state).toEqual('start');
|
|
@@ -125,7 +125,7 @@ describe('PersistentStateMachine', () => {
|
|
|
125
125
|
.then(done)
|
|
126
126
|
.catch(shouldNotBeExecuted);
|
|
127
127
|
});
|
|
128
|
-
});
|
|
128
|
+
});
|
|
129
129
|
});
|
|
130
130
|
|
|
131
131
|
describe('loadFromCache', () => {
|
|
@@ -163,10 +163,10 @@ describe('PersistentStateMachine', () => {
|
|
|
163
163
|
describe('saveToCache', () => {
|
|
164
164
|
|
|
165
165
|
it('should rethrow error from cache.set', async () => {
|
|
166
|
-
|
|
166
|
+
|
|
167
167
|
// mock to simulate throwing error
|
|
168
168
|
cache.set = jest.fn(() => { throw new Error('error from cache.set'); });
|
|
169
|
-
|
|
169
|
+
|
|
170
170
|
const psm = await PSM.create(data, cache, key, logger, smSpec);
|
|
171
171
|
checkPSMLayout(psm);
|
|
172
172
|
await psm.init();
|
|
@@ -176,4 +176,4 @@ describe('PersistentStateMachine', () => {
|
|
|
176
176
|
});
|
|
177
177
|
});
|
|
178
178
|
|
|
179
|
-
});
|
|
179
|
+
});
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
'use strict';
|
|
12
12
|
|
|
13
13
|
const util = require('util');
|
|
14
|
-
const { BackendRequests } = jest.requireActual('
|
|
14
|
+
const { BackendRequests } = jest.requireActual('~/lib/model/lib/requests');
|
|
15
15
|
|
|
16
16
|
const respErrSym = Symbol('ResponseErrorDataSym');
|
|
17
17
|
|
|
@@ -24,9 +24,9 @@ const requestToPayTransferRequest = require('./data/requestToPayTransferRequest'
|
|
|
24
24
|
const mockLogger = require('../mockLogger');
|
|
25
25
|
const { uuid } = require('uuidv4');
|
|
26
26
|
|
|
27
|
-
jest.mock('
|
|
27
|
+
jest.mock('~/lib/model');
|
|
28
28
|
|
|
29
|
-
const handlers = require('
|
|
29
|
+
const handlers = require('~/OutboundServer/handlers');
|
|
30
30
|
const {
|
|
31
31
|
OutboundTransfersModel,
|
|
32
32
|
OutboundBulkTransfersModel,
|
|
@@ -36,7 +36,7 @@ const {
|
|
|
36
36
|
PartiesModel,
|
|
37
37
|
QuotesModel,
|
|
38
38
|
TransfersModel
|
|
39
|
-
} = require('
|
|
39
|
+
} = require('~/lib/model');
|
|
40
40
|
|
|
41
41
|
/**
|
|
42
42
|
* Mock the outbound transfer model to simulate throwing errors
|
package/.eslintignore
DELETED
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
openapi: 3.0.0
|
|
2
|
-
info:
|
|
3
|
-
version: '1.1'
|
|
4
|
-
title: Open API for FSP Interoperability (FSPIOP)
|
|
5
|
-
description: >-
|
|
6
|
-
Based on API Definition.docx updated on 2020-05-19 Version 1.1.
|
|
7
|
-
API supports a maximum size of 65536 bytes (64 Kilobytes) in the HTTP
|
|
8
|
-
header.
|
|
9
|
-
license:
|
|
10
|
-
name: Open API for FSP Interoperability (FSPIOP)
|
|
11
|
-
paths:
|
|
12
|
-
'/participants/{ID}/error':
|
|
13
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/participants_ID_error.yaml'
|
|
14
|
-
'/participants/{ID}':
|
|
15
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/participants_ID.yaml'
|
|
16
|
-
'/participants/{Type}/{ID}/error':
|
|
17
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/participants_Type_ID_error.yaml'
|
|
18
|
-
'/participants/{Type}/{ID}/{SubId}/error':
|
|
19
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/participants_Type_ID_SubId_error.yaml'
|
|
20
|
-
'/participants/{Type}/{ID}/{SubId}':
|
|
21
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/participants_Type_ID_SubId.yaml'
|
|
22
|
-
'/participants/{Type}/{ID}':
|
|
23
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/participants_Type_ID.yaml'
|
|
24
|
-
'/participants':
|
|
25
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/participants.yaml'
|
|
26
|
-
'/parties/{Type}/{ID}':
|
|
27
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/parties_Type_ID.yaml'
|
|
28
|
-
'/parties/{Type}/{ID}/error':
|
|
29
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/parties_Type_ID_error.yaml'
|
|
30
|
-
'/parties/{Type}/{ID}/{SubId}':
|
|
31
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/parties_Type_ID_SubId.yaml'
|
|
32
|
-
'/parties/{Type}/{ID}/{SubId}/error':
|
|
33
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/parties_Type_ID_SubId_error.yaml'
|
|
34
|
-
'/transactionRequests/{ID}/error':
|
|
35
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/transactionRequests_ID_error.yaml'
|
|
36
|
-
'/transactionRequests/{ID}':
|
|
37
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/transactionRequests_ID.yaml'
|
|
38
|
-
'/transactionRequests':
|
|
39
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/transactionRequests.yaml'
|
|
40
|
-
'/quotes/{ID}/error':
|
|
41
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/quotes_ID_error.yaml'
|
|
42
|
-
'/quotes/{ID}':
|
|
43
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/quotes_ID.yaml'
|
|
44
|
-
'/quotes':
|
|
45
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/quotes.yaml'
|
|
46
|
-
'/authorizations/{ID}':
|
|
47
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/authorizations_ID.yaml'
|
|
48
|
-
'/authorizations/{ID}/error':
|
|
49
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/authorizations_ID_error.yaml'
|
|
50
|
-
'/transfers/{ID}/error':
|
|
51
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/transfers_ID_error.yaml'
|
|
52
|
-
'/transfers/{ID}':
|
|
53
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/transfers_ID.yaml'
|
|
54
|
-
'/transfers':
|
|
55
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/transfers.yaml'
|
|
56
|
-
'/transactions/{ID}':
|
|
57
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/transactions_ID.yaml'
|
|
58
|
-
'/transactions/{ID}/error':
|
|
59
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/transactions_ID_error.yaml'
|
|
60
|
-
'/bulkQuotes/{ID}/error':
|
|
61
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/bulkQuotes_ID_error.yaml'
|
|
62
|
-
'/bulkQuotes/{ID}':
|
|
63
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/bulkQuotes_ID.yaml'
|
|
64
|
-
'/bulkTransfers/{ID}':
|
|
65
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/bulkTransfers_ID.yaml'
|
|
66
|
-
'/bulkTransfers':
|
|
67
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/bulkTransfers.yaml'
|
|
68
|
-
'/bulkTransfers/{ID}/error':
|
|
69
|
-
$ref: '../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/paths/bulkTransfers_ID_error.yaml'
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
type: array
|
|
2
|
-
items:
|
|
3
|
-
type: object
|
|
4
|
-
required:
|
|
5
|
-
- idType
|
|
6
|
-
- idValue
|
|
7
|
-
properties:
|
|
8
|
-
idType:
|
|
9
|
-
$ref: >-
|
|
10
|
-
../../../../node_modules/@mojaloop/api-snippets/thirdparty/v1_0/openapi3/components/schemas/PartyIdType.yaml
|
|
11
|
-
idValue:
|
|
12
|
-
$ref: >-
|
|
13
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/PartyIdentifier.yaml
|
|
14
|
-
idSubValue:
|
|
15
|
-
$ref: >-
|
|
16
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/PartySubIdOrType.yaml
|
|
17
|
-
error:
|
|
18
|
-
$ref: ./errorResponse.yaml
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
type: array
|
|
2
|
-
items:
|
|
3
|
-
type: object
|
|
4
|
-
required:
|
|
5
|
-
- idType
|
|
6
|
-
- idValue
|
|
7
|
-
- currency
|
|
8
|
-
properties:
|
|
9
|
-
idType:
|
|
10
|
-
$ref: >-
|
|
11
|
-
../../../../node_modules/@mojaloop/api-snippets/thirdparty/v1_0/openapi3/components/schemas/PartyIdType.yaml
|
|
12
|
-
idValue:
|
|
13
|
-
$ref: >-
|
|
14
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/PartyIdentifier.yaml
|
|
15
|
-
idSubValue:
|
|
16
|
-
$ref: >-
|
|
17
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/PartySubIdOrType.yaml
|
|
18
|
-
currency:
|
|
19
|
-
$ref: >-
|
|
20
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/Currency.yaml
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
title: IndividualQuote
|
|
2
|
-
type: object
|
|
3
|
-
description: Data model for the complex type 'individualQuote'.
|
|
4
|
-
properties:
|
|
5
|
-
quoteId:
|
|
6
|
-
$ref: >-
|
|
7
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/CorrelationId.yaml
|
|
8
|
-
to:
|
|
9
|
-
$ref: ./transferParty.yaml
|
|
10
|
-
amountType:
|
|
11
|
-
$ref: >-
|
|
12
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/AmountType.yaml
|
|
13
|
-
currency:
|
|
14
|
-
$ref: >-
|
|
15
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/Currency.yaml
|
|
16
|
-
amount:
|
|
17
|
-
$ref: >-
|
|
18
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/Amount.yaml
|
|
19
|
-
transactionType:
|
|
20
|
-
$ref: ./transactionType.yaml
|
|
21
|
-
note:
|
|
22
|
-
$ref: >-
|
|
23
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/Note.yaml
|
|
24
|
-
extensions:
|
|
25
|
-
$ref: >-
|
|
26
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/ExtensionList.yaml
|
|
27
|
-
required:
|
|
28
|
-
- quoteId
|
|
29
|
-
- to
|
|
30
|
-
- amountType
|
|
31
|
-
- currency
|
|
32
|
-
- transactionType
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
title: IndividualTransfer
|
|
2
|
-
type: object
|
|
3
|
-
description: Data model for the complex type 'individualTransfer'.
|
|
4
|
-
properties:
|
|
5
|
-
transferId:
|
|
6
|
-
$ref: >-
|
|
7
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/CorrelationId.yaml
|
|
8
|
-
to:
|
|
9
|
-
$ref: ./transferParty.yaml
|
|
10
|
-
amountType:
|
|
11
|
-
$ref: >-
|
|
12
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/AmountType.yaml
|
|
13
|
-
currency:
|
|
14
|
-
$ref: >-
|
|
15
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/Currency.yaml
|
|
16
|
-
amount:
|
|
17
|
-
$ref: >-
|
|
18
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/Amount.yaml
|
|
19
|
-
transactionType:
|
|
20
|
-
$ref: ./transactionType.yaml
|
|
21
|
-
note:
|
|
22
|
-
$ref: >-
|
|
23
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/Note.yaml
|
|
24
|
-
extensions:
|
|
25
|
-
$ref: >-
|
|
26
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/ExtensionList.yaml
|
|
27
|
-
required:
|
|
28
|
-
- transferId
|
|
29
|
-
- to
|
|
30
|
-
- amountType
|
|
31
|
-
- currency
|
|
32
|
-
- transactionType
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
title: QuotesPostRequest
|
|
2
|
-
type: object
|
|
3
|
-
properties:
|
|
4
|
-
fspId:
|
|
5
|
-
title: destination DFSP requested to calculate the quote
|
|
6
|
-
$ref: >-
|
|
7
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/FspId.yaml
|
|
8
|
-
quotesPostRequest:
|
|
9
|
-
$ref: >-
|
|
10
|
-
../../../../node_modules/@mojaloop/api-snippets/thirdparty/v1_0/openapi3/components/schemas/QuotesPostRequest.yaml
|
|
11
|
-
required:
|
|
12
|
-
- fspId
|
|
13
|
-
- quotesPostRequest
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
title: QuotesPostResponse
|
|
2
|
-
type: object
|
|
3
|
-
properties:
|
|
4
|
-
quotes:
|
|
5
|
-
title: QuotesIDPutResponse
|
|
6
|
-
type: object
|
|
7
|
-
description: 'The object sent in the PUT /quotes/{ID} callback.'
|
|
8
|
-
properties:
|
|
9
|
-
transferAmount:
|
|
10
|
-
$ref: >-
|
|
11
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/Money.yaml
|
|
12
|
-
payeeReceiveAmount:
|
|
13
|
-
$ref: >-
|
|
14
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/Money.yaml
|
|
15
|
-
payeeFspFee:
|
|
16
|
-
$ref: >-
|
|
17
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/Money.yaml
|
|
18
|
-
payeeFspCommission:
|
|
19
|
-
$ref: >-
|
|
20
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/Money.yaml
|
|
21
|
-
expiration:
|
|
22
|
-
type: string
|
|
23
|
-
description: >-
|
|
24
|
-
Date and time until when the quotation is valid and can be honored when
|
|
25
|
-
used in the subsequent transaction.
|
|
26
|
-
example: '2016-05-24T08:38:08.699-04:00'
|
|
27
|
-
geoCode:
|
|
28
|
-
$ref: >-
|
|
29
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/GeoCode.yaml
|
|
30
|
-
ilpPacket:
|
|
31
|
-
$ref: >-
|
|
32
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/IlpPacket.yaml
|
|
33
|
-
condition:
|
|
34
|
-
$ref: >-
|
|
35
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/IlpCondition.yaml
|
|
36
|
-
extensionList:
|
|
37
|
-
$ref: >-
|
|
38
|
-
../../../../node_modules/@mojaloop/api-snippets/fspiop/v1_1/openapi3/components/schemas/ExtensionList.yaml
|
|
39
|
-
required:
|
|
40
|
-
- transferAmount
|
|
41
|
-
- expiration
|
|
42
|
-
- ilpPacket
|
|
43
|
-
- condition
|
|
44
|
-
currentState:
|
|
45
|
-
$ref: ../schemas/async2SyncCurrentState.yaml
|
|
46
|
-
required:
|
|
47
|
-
- quotes
|
|
48
|
-
- currentState
|