Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/otc 390 implement interchange fee calculation #311

Conversation

lazolalucas
Copy link
Contributor

No description provided.

@ndonnan ndonnan merged commit 35163f7 into mojaloop:feature/OTC Jun 25, 2020
shashi165 added a commit to shashi165/central-settlement that referenced this pull request Jan 22, 2021
* Feature/otc300 consume commit message (mojaloop#303)

* Added handler to monitor topic-notification-event

* Added handler to monitor topic-notification-event

* Added more code to break out vars from the msg on the notification topic

* Finalize code to break out vars from the msg on the notification topic

* Restructured code in the handler

* Renamed fulfill to fulfil

* Added initial code in the Domain to update the DB

* Added Knex version of SQL statement (Promise pending error still)

* Added more knex statements for the changed SQL from Micheal

* Fixed the bindings error

* Fixed the bindings error again

* Add facade and domain code

* Added Error handling

* Fixed index.js

* Removed unwanted code

* Updated the handler register unit test

* Fixed inner select error that magically started to appear

* Added the status parameter

* Added code to unit test transferfulfil facade

* Add more code to facade unit test

* Add unit test for domain/index.js

* Add unit test for domain/index.js

* Added unit tests to the handler

* Added more unit tests to transferfulfil handler

* Full code coverage achieved on the transferfulfil handler

* Removed unit test on facade. TBD later

* updated dependancies

* Changed the port in default.json

* Resolved vulnerabilities

* Made some depnedancy update changes

* Resloved vulnerabilities

* Increased codee coverage on branches to 100% for transferFulfil handler

* Fixed issue with Knex

* Added filter for OTC498

* Renamed functions as per code review request

* Fixed function name chnages in the unit tests

* Added changes to facade unit test

* Added code review change as requested by Rajiv

* Added Ignores for the failing unit test on the facade

* Added ignores for failing test

* Added config changes for python3 dependancy

* Feature/otc300 consume commit message (mojaloop#305)

* Added handler to monitor topic-notification-event

* Added handler to monitor topic-notification-event

* Added more code to break out vars from the msg on the notification topic

* Finalize code to break out vars from the msg on the notification topic

* Restructured code in the handler

* Renamed fulfill to fulfil

* Added initial code in the Domain to update the DB

* Added Knex version of SQL statement (Promise pending error still)

* Added more knex statements for the changed SQL from Micheal

* Fixed the bindings error

* Fixed the bindings error again

* Add facade and domain code

* Added Error handling

* Fixed index.js

* Removed unwanted code

* Updated the handler register unit test

* Fixed inner select error that magically started to appear

* Added the status parameter

* Added code to unit test transferfulfil facade

* Add more code to facade unit test

* Add unit test for domain/index.js

* Add unit test for domain/index.js

* Added unit tests to the handler

* Added more unit tests to transferfulfil handler

* Full code coverage achieved on the transferfulfil handler

* Removed unit test on facade. TBD later

* updated dependancies

* Changed the port in default.json

* Resolved vulnerabilities

* Made some depnedancy update changes

* Resloved vulnerabilities

* Increased codee coverage on branches to 100% for transferFulfil handler

* Fixed issue with Knex

* Added filter for OTC498

* Renamed functions as per code review request

* Fixed function name chnages in the unit tests

* Added changes to facade unit test

* Added code review change as requested by Rajiv

* Added Ignores for the failing unit test on the facade

* Added ignores for failing test

* Added Config.yml chnges for Python 3 depnedancy

* deleted apk -v --purge del py-pip line from config.yml

* Feature/otc300 consume commit message (mojaloop#306)

* Added handler to monitor topic-notification-event

* Added handler to monitor topic-notification-event

* Added more code to break out vars from the msg on the notification topic

* Finalize code to break out vars from the msg on the notification topic

* Restructured code in the handler

* Renamed fulfill to fulfil

* Added initial code in the Domain to update the DB

* Added Knex version of SQL statement (Promise pending error still)

* Added more knex statements for the changed SQL from Micheal

* Fixed the bindings error

* Fixed the bindings error again

* Add facade and domain code

* Added Error handling

* Fixed index.js

* Removed unwanted code

* Updated the handler register unit test

* Fixed inner select error that magically started to appear

* Added the status parameter

* Added code to unit test transferfulfil facade

* Add more code to facade unit test

* Add unit test for domain/index.js

* Add unit test for domain/index.js

* Added unit tests to the handler

* Added more unit tests to transferfulfil handler

* Full code coverage achieved on the transferfulfil handler

* Removed unit test on facade. TBD later

* updated dependancies

* Changed the port in default.json

* Resolved vulnerabilities

* Made some depnedancy update changes

* Resloved vulnerabilities

* Increased codee coverage on branches to 100% for transferFulfil handler

* Fixed issue with Knex

* Added filter for OTC498

* Renamed functions as per code review request

* Fixed function name chnages in the unit tests

* Added changes to facade unit test

* Added code review change as requested by Rajiv

* Added Ignores for the failing unit test on the facade

* Added ignores for failing test

* Added Config.yml chnges for Python 3 depnedancy

* deleted apk -v --purge del py-pip line from config.yml

* Added missing | for command in config.yml

* Feature/301 enhance close settlement window (mojaloop#307)

* Added handler to monitor topic-notification-event

* Added handler to monitor topic-notification-event

* Added more code to break out vars from the msg on the notification topic

* Finalize code to break out vars from the msg on the notification topic

* Restructured code in the handler

* Renamed fulfill to fulfil

* Added initial code in the Domain to update the DB

* Added Knex version of SQL statement (Promise pending error still)

* Added more knex statements for the changed SQL from Micheal

* Fixed the bindings error

* Fixed the bindings error again

* Add facade and domain code

* Added Error handling

* Fixed index.js

* Removed unwanted code

* Updated the handler register unit test

* Fixed inner select error that magically started to appear

* Added the status parameter

* Added code to unit test transferfulfil facade

* Add more code to facade unit test

* Add unit test for domain/index.js

* Add unit test for domain/index.js

* Added unit tests to the handler

* Added more unit tests to transferfulfil handler

* Full code coverage achieved on the transferfulfil handler

* Removed unit test on facade. TBD later

* updated dependancies

* Changed the port in default.json

* Resolved vulnerabilities

* Made some depnedancy update changes

* Resloved vulnerabilities

* Increased codee coverage on branches to 100% for transferFulfil handler

* Fixed issue with Knex

* Added filter for OTC498

* Renamed functions as per code review request

* Fixed function name chnages in the unit tests

* Added changes to facade unit test

* Added code review change as requested by Rajiv

* Added Ignores for the failing unit test on the facade

* Added ignores for failing test

* Added Config.yml chnges for Python 3 depnedancy

* deleted apk -v --purge del py-pip line from config.yml

* Added missing | for command in config.yml

* Added knex statement into settlement handlet facade and index

* Added failure conditions

* Added last code changes

* Increased code coverage with unit tests

* Pushed code coverage up to 100% for the added code

* Updated dependancies

* Removed dependency cache line in ci/config yaml

* Added processing of transfer fulfil message

* Updating integration test config

* Added changes from Neals branch

* Updated settlement integration tests to create settlement models before transfers

* Update package.json withh --production switches

Co-authored-by: Neal Donnan <neal.donnan@modusbox.com>

* Feature/otc 390 implement interchange fee calculation (mojaloop#311)

* Initial commit

* Initial commit

* Added get transaction object feature

* Updated unit tests

* Added get transaction object feature tests

* Updated tests

Co-authored-by: Neal Donnan <neal.donnan@modusbox.com>

* Added scripts directory in Dockerfile

* Fixed persisting of ledger entries

* Changed rounding of interchange fee calculation to 2 decimals, half up

* Fixed integration tests

* Updated test images for ml-api-adapter and central-ledger for integration tests to the latest.

* Made the loading of script engine scripts dynamic

* Feature/otc 624 rework central settlement integration test set up (mojaloop#314)

* OTC-624: refactoring integration tests initial data setup

* OTC-624 fixing and refactoring cleaning up

* OTC-624 refactoring and cleaning up test setup

* Ignoring package updates

* OTC-624 reverting back merge conflict change

* OTC-624 renamed scenario and fixing axios version

* OTC-624 renamed folder due to order of tests

* Feature/otc658 rework cgs handlers (mojaloop#316)

* Added transferParticipantStateChange to cli

* Implemented name change transferParticipantStateChange to transfeSettlement

* Added code to handlers/index.js to increase code coverage

* Commented to be database transaction demarcation

* FIX TransferParticipantStageChange wrong table rename

* Moving script loader to utils

* OTC-676 refactoring and creating transactions

* OTC-676 added scriptsEngine unit tests

* OTC-676 refactoring

* Added missing export in facade

* Fixing tests regex in package.json

* fix lint

* Commit:

- Added unit tests for the scriptsLoader.js
- Renamed transferParticipantStateChange to transferSettlement in the unit tests

* Using apis to create settlement models

* Moved the logic for retrieving script config to a new function : retrieveScriptConfiguration

* OTC: 375 - Fixed swagger def title

* OTC-715 - Implement GitLab CI/CD on the central-settlement TIPS project.

* Removing CGS settlement model

* Updated helm dependency update script

* Fixed docker-compose setup

* Started to update new transfer settlement knexes

* Cleaned up the updateTransferSettlement code.

* Fixed models sqls statement according to Michaels spec

* Temporary change to pipeline to allow deployment to test OTC-649

* Change the sign calculating the difference between PP.value and TR.amount when updating position

* Revert "Temporary change to pipeline to allow deployment to test OTC-649"

This reverts commit 0c97928

* Delete StubInsertPairOfLedgerEntries.js

* OTC-762 setting up jest

* OTC-762 updating local config

* OTC-762 attempting message push

* OTC-762 sending message on kafka queue

* OTC-762 adding transfer before running test

* OTC-762 removed commented code

* Added await for add ledger entry function and fixed CGS insert query for transferParticipant

* OTC-762 updating query logic for participantPosition records

* OTC-762 polishing

* OTC-762 formatting

* OTC-762 only adding fees for committed transfers

* OTC-762 adding more error handling

* OTC-762 removing calls brackets for commit function, unknown error logged

* Fixed a bug in Knex statement and added chnges to knex as per story OTC649

* OTC-777 added unit tests for insert Ledger entry

* Unit test update Caudio

* OTC649 test mocking update

* Claudio added the correct code to cover the nested knex functions

* Add debug output to gitlab-ci.yml

* Update README.md

* Fixed some unit tests and increased coverage

* Updated dependencies

* Run unit test coverage in Gitlab pipeline

* Removed the insert of a SETTLED transfer state record

* Move kubernetes service account configuration into same step as deployment

* Updating dependency

* Update README.md

* Update README.md

* Added try catch to scripts loader function

* Fixed unit test

* Temporary move of scripts

* Fixed unit test coverage

* Added more clever way to load scripts

* Fixed settlement window content response for multiple windows

* Added check for liquidity check before calculating liquidity and adjusting NET_DEBIT_CAP

* Added unit test for liquidity check

* Added filtering for settlementWindowContent when closing settlement windows to only add entries for ledgerAccountTypes linked to NET settlement models

* docker-compose to use personal dockerhub

* test fix

* added check for settlement model in transfersettlement handler

* WIP integration tests not working

* integration tests

* WIP integration tests not working

* WIP integration tests not working

* wip integration tests are failing yet

* WIP integration tests not working

* feat: Continious Gross Settlement

* feat: Continious Gross Settlement

Co-authored-by: deonbotha <deon.botha@modusbox.com>
Co-authored-by: Neal Donnan <neal.donnan@modusbox.com>
Co-authored-by: lazolalucas <lazolalucas@users.noreply.github.com>
Co-authored-by: Claudio Viola <claudio-viola@users.noreply.github.com>
Co-authored-by: Lazola Lucas <lazola.lucas@modusbox.com>
Co-authored-by: Keith Douglas <keith.douglas@modusbox.com>
Co-authored-by: Claudio Viola <claudio.viola@modusbox.com>
Co-authored-by: vgenev <vgenev@gmail.com>
vgenev added a commit that referenced this pull request Feb 3, 2021
* Feature/#1945 cgs2 (#2)

* changes to circleci config

* fixing the circleci thing

* coverage scripts fixes into the package.json file

* added license

* testing circleci (#8)

* Readme slightly updated

* Slight changes to circleCI config yaml

* Changes to circleCI config in coverage tests section

* Testing circleci

* Fixed circleci format issue

* Initial changes as suggested by DA review added to API

* Added unit tests

* Added succesful unit test for /settlementWindows

* Move Happi server as an single instance in the double verb handler

* Added unit tests for Operations on /settlementWindows/{settlementWindowId}

* Added more unit tests

* Added last unit tests

* Increased unit test to 100 percent code coverage

* Added Happi pagination plugin

* Removed console.log statements and added central services shared logging

* Added licence block

* Remove zipped swagger file as per Miguel's review

* Added PR review changes , test coverage and new unit tests

* Added Logger to handlers

* Moved unit tests to unit test directory

* Added POST operation to settlements/

* Remove blnk unit tests created by yeoman

* Fixed incorrect path in handler

* delete swagger-158.json

* Added Dockerfile, and fixed package.json unresolved merge conflict issue. (#12)

* Added Dockerfile, and fixed package.json unresolved merge conflict issue.

1. Fixed package.json unresolved merge conflict issue.
2. Added Dockerfile
3. Added some missing dependencies in package.json for production execution

* added myself as a contributor :D

* Moved swagger from config to interface folder, removed settlemenAPI.json as its a duplicate of swagger.json

* Removed settlementAPI.json from docker file

* Corrections to swagger file (#13)

* Introduce corrections to swagger file
* createSettlement
* Updated createSettlement
* Reverting back version change as per PR review

* Feature/DAO and API for settlementWindows (#14)

*added GET for settlementWindowId

*added handler for GET settlementWindow by id; Added plugin for logging based on central-services.Logger

* added enums loading from Db on server startup

* load ENUMS to server.app.enums

* added domain layer and changed the code structure

* slight change

* getSettlementWindow by filter - DONE

* functionality finished

* removed unnecessary then

* some small changes

* settlementEventTrigger is done

* Added settlemnts get by params endpoint

* merged with docker file

* settlementWindow getById is done

* settlementWindow getByParams & settlementWindow facade get by list of Ids are done

* settlementWindow Close is done

* swagger deffinition aligned to the latest changes and small naming issue fixed

* Added get settlemntById endpoint up to the facde

* updated settlementWindows to latest changes

* Added update settlements by ID (Put) up to dao

* get settlement by id

* Test get settlements by Id made changes to facde

* get settlement by participantId and accountId

* added a file

* DAO does not throw now, if object not found

* settlementWindows tested

* fixed wrong version change in conflict resolution

* Feature/dao and api (#15)

* added GET for settlementWindowId

* added handler for GET settlementWindow by id; Added plugin for logging based on central-services.Logger

* added enums loading from Db on server startup

* load ENUMS to server.app.enums

* added domain layer and changed the code structure

* getSettlementWindow by filter - DONE

* functionality finished

* removed unnecessary then

* some small changes

* settlementEventTrigger is done

* Added settlemnts get by params endpoint

* Added settlemnts get by params endpoint

* merged with docker file

* settlementWindow getById is done

* settlementWindow getByParams & settlementWindow facade get by list of Ids are done

* settlementWindow Close is done

* swagger deffinition aligned to the latest changes and small naming issue fixed

* Added get settlemntById endpoint up to the facde

* updated settlementWindows to latest changes

* Added update settlements by ID (Put) up to dao

* get settlement by id

* Test get settlements by Id made changes to facde

* get settlement by participantId and accountId

* added a file

* DAO does not throw now, if object not found

* settlementWindows tested

* Changes for 6.2.1 -20180830@15H31.

* Settlements - 20180830@22.57.

* fixes for sequence diagram 6.2.4.

* fixes and additions for 6.2.5 but not completed

* added comment

* fixed wrong version change in conflict resolution

* changer for 6.2.5 not completed

* 6.2.1 and 6.2.4 working a little better just some data inconsistency

* trigger sort of working well

* Feature/414 416 DAO and API (#16)

* Applied standard --fix
* Renamed db-model to models
* Manual linter fixes
* Added license information where missing

* Feature/414 416 DAO and API (#17)

* Finished 6.2.2.

* Current dev (#18)

*added GET for settlementWindowId

*added handler for GET settlementWindow by id; Added plugin for logging based on central-services.Logger

*added enums loading from Db on server startup

*load ENUMS to server.app.enums

* added domain layer and changed the code structure

* slight change

* getSettlementWindow by filter - DONE

* functionality finished

* removed unnecessary then

* some small changes

* settlementEventTrigger is done

* Added settlemnts get by params endpoint

* Added settlemnts get by params endpoint

* merged with docker file

* settlementWindow getById is done

* settlementWindow getByParams & settlementWindow facade get by list of Ids are done

* settlementWindow Close is done

* swagger deffinition aligned to the latest changes and small naming issue fixed

* Added get settlemntById endpoint up to the facde

* updated settlementWindows to latest changes

* Added update settlements by ID (Put) up to dao

* get settlement by id

* Test get settlements by Id made changes to facde

* get settlement by participantId and accountId

* added a file

* DAO does not throw now, if object not found

* settlementWindows tested

* Changes for 6.2.1 -20180830@15H31.

* Settlements - 20180830@22.57.

* fixes for sequence diagram 6.2.4.

* fixes and additions for 6.2.5 but not completed

* added comment

* fixed wrong version change in conflict resolution

* changer for 6.2.5 not completed

* 6.2.1 and 6.2.4 working a little better just some data inconsistency

* trigger sort of working well

* fixed get of index list of settlementParticipantCurrency

* changes need to figure out why insert for settlementTransferParticipant doesnt work correctly

* trigger event fixed

* Changes for 3.5.0 release (#19)

* Changes for 3.5.0 release

- Fixed issue with SQL not returning current settlementWindows due to the currentDate comparison of `>` which should be `>=`
- Updated version from 1.0.0 to 3.5.0 to align to our release versioning
- Updated Dockerfile for the current directory and ports

* Added a quick config to make deployments easier

* Fixed issue with Docker file

* Fixed dockerfile, and re-aligned config

* Feature/414 416 dao and api (#20)

* Merging functionality 6.2.2 & 6.2.5. done by @ggrg

* Feature/439 Fix updateSettlementById (#21)

* Resolved first two tasks
* Move all to single transaction and sync with design
* cloneDeep rename

* Added missing changes for default.json (#22)

* Feature/445 Unit Tests for central-settlement (#23)

* Initialize test/
* Dummy .test.js files

* Feature/445 Unit Tests for central-settlement (#24)

* Initialize test/

* Dummy .test.js files

* Restored test/data/ and added rc&sinon modules

* istanbul: 1.1.0-alpha.1 & .istanbul.yml

* Resolved most issues requested by PR review

* Origin/feature/#438 remove date check (#26)

* Feature/#438RemoveDateCheck

* Feature/#438RemoveDateCheck

* Feature/445 Unit Tests for central-settlement (#30)

* Initialize test/

* Dummy .test.js files

* Restored test/data/ and added rc&sinon modules

* istanbul: 1.1.0-alpha.1 & .istanbul.yml

* Resolved most issues requested by PR review

* putById fully covered and tested

* getById and getByParams fully covered and tested

* models/settlement/facade.test.js completed

* Unit tests added

* Settlement Service unit testing completed

* Settlement Window Service unit testing completed

* Feature/449 Unit Tests for central-settlement II (#31)

* participantCurrency & settlement model unit tests
* Unit tests added
* Added unit tests
* Finished unit tests for story 449

* Feature/#445 unit tests for central settlement i (#32)

* settlementWindow handler tested

* handlers are done

* merged develop and handlers tests; coverage 100%

* Feature/#454 investigate settlements api failure (#33)

* fixed few bugs found. try-catch and log all the things. coverage maxed out.

* Incrementing version for central-settlement (#34)

* Fix for issues in building docker image (#35)

* Incrementing version for central-settlement

* Changing docker command to use 'test' folder instead

* Fixed bugs 474 & 480 (#36)

* Fixed bugs 474 & 480
* Fixed unit tests and pushed coverage to 100%

* Added pre-commit hooks (#37)

* Increment version (#38)

* Incrementing version for central-settlement

* Renamed 'test' folder to 'tests' and updated corresponding references in pakage.json

* Reverting the name back to 'test' for uniformity but changing docker command to use 'test' folder instead

* Incrementing to 3.7.0 version

* Feature/461 Settlement Transfer - Prepare & Commit (#40)

* Settlement transfer prepare and commit init
* Finished settelement transfer prepare & commit. Unit tests in progress
* Finished settlement transfer prepare & commit
* Added unit tests and coverage to 100%

* Incrementing version to 3.7.1 (#41)

* Incrementing version of central-settlement to 3.7.1-snapshot

* fixes for circle ci builds (#42)

* fixes for circle ci builds

* removal of backslash

* Feature/#501reformat error message (#43)

* error reformatted

* fixed error format

* removed caret and tilde and upgraded package versions in package.json (#44)

* participantPosition update for settlement account (#45)

* Increment version 3.7.2 (#46)

* Incrementing version to 3.7.2

* added README and APIDefinition (#39)

* Incrementing version to 3.8.0 (#47)

* Incrementing version to 3.8.0

* Bugfix/491 Invalid Response for GetSettlementBySettlementParticipantAccount (#49)

* Fixed demo scripts to run again after changes in ml-api-adapter and central-ledger
* Fix settlementTransfer demo scripts
* Fix settlementTransfer demo scripts (#48)
* Utilise test scripts in sequence
* Implementation aligned to diagram, endpoint added, coverage 100

* Feature/528 risk managed settlement (#50)

* Implemented 6.2.1, 6.3.1 & 6.3.2. Unit test fail
* Implemented 6.3.3, 6.2.5. Unit tests fail
* Updated demo scripts & fixed issues with transfers. Unit tests fail
* Bugfix HMLNS position. Unit tests fail
* Added new lines at the end of the demo scripts. Unit tests fail
* Commented out variable startAfterParticipantPositionChangeId. Unit tests fail
* Fixed all Inspect Code errors and warnings. Unit tests fail
* Fix broken unit tests
* Demo prep
* Coverage to 98%
* Changes according to the review

* Feature/535 Settlement Transfer Abort (#51)

DA review requested change of settlement states

* Bugfix/526 Partial Validation (#52)

* Extended validation for createSettlement operation

* Hotfix for v3.10.0 release (#53)

* Hotfix for v3.10.0 release

- https://github.com/mojaloop/project/issues/539
- Added the package lock file

* - Updated shared lib to 4.1.0 to fix for https://github.com/mojaloop/project/issues/539

* Added HUB_PARTICIPANT config (#54)

* Feature/535 Settlement Transfer Abort Impl (#55)

* Altered /settlements/{id} endpoint to support abort
* Settlement transfer ABORT, part 1. Unit tests fail
* Fixed unit tests
* Prepared demo scripts, fixed minor bug
* Provide full coverage
* Removed .returning knex clause

* feature/481UpdateSettlementBySettlementParticipant

* Feature/566 Notifications for Position Updates (#57)

* Produce message to notificiation topic. Unit tests fail
* Fix code inaccuracy. Unit tests fail
* Remove unused code.
* Added stub for settlementTransferReserve
* Remove unused requires
* Reworked unit tests.
* Corrected unit tests and provide full tests coverage

* Update/update version 4.4.1 (#59)

* Updating version in package.json to 4.4.1

* changed the hub name to be loaded from default.json (#58)

* changed the hub name to be loaded from default.json instead of enums headers value

* config wrongly used

* Version change/upgrade to 5.1.0 (#60)

* Updating version to 5.1.0 for the next release

* Badges ! (#61)

Thanks to Miguel

* Fixed issue when closing unexisting window (#62)

* Version change/upgrade to 5.1.1 (#63)


* Incrementing version in package.json and adding badges (same as central-ledger)

* Feature/507 635 Integration Tests (#64)

* Init integration tests
* Finished populate admin test data
* Added settlements data prep integration tests
* Finished close settlementWindow
* SettlementTransfer to PS_TRANSFERS_RESERVED, no db checks
* Advanced integration tests to PS_TRANSFERS_COMMITTED
* Removed devDependency leaked-handles
* Finished integration and unit tests
* Update package.json and init integration-runner.sh
* Amendments to integration-runner
* integration-runner & circleci
* Enable all in integration-runner.sh
* Clean up integration-runner
* Changes as requested by rmothilal

* #610 announcement notifications (#65)

* Announcement Notifications for Slack channel. Resolve vulnerabilities.

* no message

* Restored package-lock.json file. Updated central-ledger dependency to 5.2.0 to resolve vulnerabilities.

* Increase version to 5.2.1

* Undo updates to .json package. Another team member is addressing the vulnerabilities currently.

* Included vulnerability updates.

* version to 5.2.0

* Feature/628 Node Upgrade (#66)

* Init node upgrade to v10
* Upgrade hapi, install standard, repair integration-runner
* Version to 5.2.1
* Upgrade to NodeJs runtime 10.x and upgrade all dependencies

* fixed the bug with database join (#67)

* fixed the bug with database join

* upgraded the version to 5.3.0

* Bugfix/714 Settlement Transfer Fulfilment Duplicate Check (#68)

* Fixed transferFulfilment issue and settlement ABORT failure. Unit tests fail
* swagger.json update and unit tests fix
* Fix coverage
* Bump up version for next release
* Updated package-lock
* reset cache
* Fix ml-api-adapter start failure

* Updated swagger.json version as referred by documentation (#69)

* Feature/724Db Object Exposed By src/lib

- src/models/index.js to src/lib/db.js

* hotfix/Fixed SQL Error output and improved coverage (#72)

* Fixed SQL Error output and improved coverage
* Updated version
* Restart CI workflow
* interrupt integration runner just before central-ledger health check

* feature/643 Integration Tests Failure (#73)

* Triggering circle CI
* Exit at the beginnizg of integration-runner.sh
* Added setup_remote_docker
* Removed setup_remote_docker
* docker ps
* multiple docker ps trace
* docker logs for central-ledger
* central-ledger no--rm
* Reverted integration-runner.sh and added centralledger-default.json
* remove exit after central-ledger start

* Change the base image to 10.15.3-alpine and optimize Dockerfiles (#74)

* Fix broken central-settlement tests (#77)

* Update central-settlement test runner for new health checks, update integration test config for central-ledger

Test integration tests with v6.2.1 simulator

Test integration tests with v6.2.2 simulator

Try extending timeout

playing around with Makefile config

debugging broken tests

debugging broken tests

change to demo simulator

Test with ml-api-adapter v6.2.1

test with central-ledger  v6.2.5

test with latest simulator

Test with v6.2.5 simulator, v6.3.0-snapshot for central-ledger

test with v7.1.0 central-ledger

Revert back to central-ledger v6.3.0-snapshot

test with ml-api-adapter v6.4.0

test with ml-api-adapter v7.1.0

Updating versions, adding logs to make config, fix double slash in the callback config

double check last working ml-api-adapter is v6.4.0

Update central-ledger default.json config

Fix the ml-api-adapter to use the simulator health check

Make the ml-api-adapter health endpoint point to the central-ledger

test again with latest simulator

Clean and tidy for PR

* Bump package version to 7.1.0, update dependencies

* run `npm audit fix`

* Fix imports for @hapi packages

* fix unit tests for updated imports

* Update catbox-memory to @hapi/catbox-memory

* Change sleepMilliseconds to 1 second to fix flaky integration tests on slower circleCI

* Feature/796 improve health checks (#79)

* 796 implemented new health check endpoint with db check

* finish unit tests for new HealthCheck

* start working on integration tests

* start working on better integration test runner

* Setting up docker-compose to help run integration tests interactively

* Working on local integration test running

* Update central-settlement test runner for new health checks, update integration test config for central-ledger

Test integration tests with v6.2.1 simulator

Test integration tests with v6.2.2 simulator

Try extending timeout

playing around with Makefile config

debugging broken tests

debugging broken tests

change to demo simulator

Test with ml-api-adapter v6.2.1

test with central-ledger  v6.2.5

test with latest simulator

Test with v6.2.5 simulator, v6.3.0-snapshot for central-ledger

test with v7.1.0 central-ledger

Revert back to central-ledger v6.3.0-snapshot

test with ml-api-adapter v6.4.0

test with ml-api-adapter v7.1.0

Updating versions, adding logs to make config, fix double slash in the callback config

double check last working ml-api-adapter is v6.4.0

Update central-ledger default.json config

Fix the ml-api-adapter to use the simulator health check

Make the ml-api-adapter health endpoint point to the central-ledger

test again with latest simulator

Clean and tidy for PR

* Bump package version to 7.1.0, update dependencies

* run `npm audit fix`

* Add setup integration test

* Fix imports for @hapi packages

* Add back health integration tests

* hacking the integration runner

* working on health check

* fixing health imports

* fix unit tests for updated imports

* Update catbox-memory to @hapi/catbox-memory

* Fix linter issues

* Fixing invalid integration tests

* feature/801-update-ci-license-and-audit (#80)

* Add npm-run-audit and license-scanner step to circleci config

* Ignore minor vulnerabilities

* Fixing up cache restore

* testing with removing defaults step

* Bugfix/894 896 hardening swagger interface (#81)

* Fixing issues described by #894 and #896
* Fix standard issues (auto + manual)

* #908 - Apply new FSPIOP error handling to central settlement code base (#83)

* Add onboarding page

* Update onboarding page per Lewis comments

* Issue #908 - Apply FSPIOP error handling

-update circlci config run cmd
-remove package-lock.json from .gitignore
-added nycrc.yml
-update package.json depdendencies and scripts
-update existing error handling with FSPIOPError framework
-update unit tests as required by update to existing error handling with FSPIOPError framework
-TODO - fix setup.test.js 2 unit tests commented out to perform commit and id.test.js 1 unit tests equal asserts commented out

* Update to Story #908

Updating the ml-api-adapter configuration for integration tests based in changes made in PI 7.3

* Update to Story #908

-fix setup.test.js unit tests

* Update to Story #908

-fix last broken unit test at handlers/settlements/{id}.tests.js
-remove a comment

* 915-Update error from internal to validation, package json versions

* Add --silent flag to npm run audit:check to ensure we print valid JSON, bump package version to 7.2.1 (#82)

* feature/904 Request Duplicate Check update (#96)

* Settlement transfer fulfilment insert update

* Fix standard and other issues

* Preparing snapshot release

* Bugfix/956 Settlements API errors format (#110)

* Registered server plugins and fixed getSettlemendBy Id error. Unit tests fail

* Change internal server errors to validation errors where applicable

* Fix unit tests and add ncu pre-commit hook

* Improve unit tests coverage

* Remove unnecessary export

* hotfix/Resolve Caching Issue

Change package.json to reset cache and set as public (#113)

* Updates to most dependencies, central-ledger still needs to be publis… (#142)

* Updates to most dependencies, central-ledger still needs to be published.
Hapi version is at 18.3.2 because of new joi changes that are breaking hapi openapi swagger import
Added new logger

* updated ml-api-adapter config integration test

* reverted to previous joi version

* updated ml-api integration test json

* updated dependency versions

* updated config that was missing and needed for new ml-api image

* tests now run but are failing because of a data issue

* updates to fix integration issues not working still

* central-ledger update

* 795-SetEndpointDescriptionAndUpdateSummary (#139)

* feature/952 Implement ML Number Library (#149)

* Implement MlNumber. Adjust tests. Fix integration-runner == issue. Upgrade deps. Bump up version
* Refactor to uppercase L in MLNumber
* Upgrade to latest ml-number

* Updated to use the latest central-services-database with a connection… (#157)

* Updated to use the latest central-services-database with a connection object
Updated dependencies and new central-ledger-dependency
Fixed tests

* change password for integration tests as per @ggrg request

* updated dependencies (#165)

* Issue934-FixSetEnvVarRCAsBooleanInsteadOfString-UpdateDepsPackageVer (#176)

* Issue934-FixSetEnvVarRCAsBooleanInsteadOfString-UpdateDepsPackageVer

* Issue934-AddParseStringInObjectDependencyAndUpdateDeps

* Issue934-ResolveVulnerabilityUpdateDependencies

* Feature/1003 container scan policy (#195)

* update all dependencies, bump package version to 8.5.0

* Update circleci to 2.1, work on anchore scanning and refactor

* fix circleci config

* add back the envs to the deploy step

* remove unneeded circleci config

* handle file based logging in Dockerfile, update dependencies (#199)

* Add anchore summary report upload, bump package version to 8.8.0 (#230)

* #1175: Upgrade to Node 12.16.0 LTS (#244)

* Update CircleCI and docker scripts to use Node 12.16.0 LTS
* Update dependencies and lock versions for hapi-related libraries. Resolve audit issue
* Bump version
* Fix integeration test
* Fix unit test
* Restore test npm script
* Restore integration dockerfile

* Settlement-v2 merge into master (#259)

* feature/1095 Close Settlement Window Changes (#220)

* Refactor scripts tree structure

* Dependencies upgrade

* Changed server setup and init. Registered Settlement Window Handler. Added CLI handler management. Shortened {id} paths. Window to PROCESSING state. Settlement window producer. Settlement window consumer. Default config added. Updated package.json scripts

* Added broker service health check

* SettlementWindowHandler ErrorHandling and async-retry

* Fix unit tests. Coverage fails at 91.32%

* SettlementWindowHandler Processing

* Fix integration tests

* Switched the latest release of central-services-shared

* Added unit test for API index.js . Code coverage now 89.5 percent

* Removed unnecessary commented lines from test

* Added unit tests for lib/healthcheck

* feature/1096 Create Settlement Changes #1 (#224)

* Changed swagger definition

* Settlement model validation. Unit tests fail

* select distinct

* Settlement window content validation. Fixed unit tests

* Deleted code to fix the two plugin issues and unit test for Handler - index.js

* feature/1097 Create Settlement Changes #2 (#225)

* Implemented inserts (not tested). Changed response definition. Unit tests fail

* Generate response. Validate proper implementation. Disable failing unit tests to be adjusted

* feature/1099 Update Settlement by ID Changes (#229)

* Implement updateSettlementByIdChanges enhancement

* Entire settlement process verified using various scenarios. Corrections made where applicable

* feature/1165 Unit tests for central-settlement part1

* Completed the unit test for register handlers code.

* Domain settlement windows close , added unit test

* Added more unit testing code to the settlement  windows models facade

* Added unit tests and fixed existing ones  to cover unhappy lines in process

* Added unit tests to shared/setup to cope with the service types

* Added unit test for shared setup : handler service type - and run handler true without any modules.

* Added unit test for settlement window with a handler list

* Added unit test to increase code coverage for settlement window facade

* Add unit test testing the settlement window state "not Processing"

* Added unit test to roll back settlement window facade when error occurs

* Added unit test on process to cover rollback on critical error and updated the version on central services shared to "8.8.2",

* Added unit testcode to close window

* Fixed the knex raw and .join isn't a function errors

* Changes:

- Added a unit test file and unit tests for SettlementWindow handler
- Made some fixes on the SettlementWindow handler

* Added last unit test on the facade. the tests are being ran in isolation still.

* Added last knex builder stubs to facade unit tests

* Combined the Stubs for the facade

* Worked on branches to increase covereage

Co-authored-by: lazolalucas <lazolalucas@users.noreply.github.com>

* feature/1100 Settlement By Currency Wrap Up (#231)

* Fixed and extended integration testing for settlement-v2

* Add anchore summary report upload, bump package version to 8.8.0 (#230)

* Full coverage for domain/settlement/index & models/lib/enums

* Full coverage for inculded scripts

* Integration testing config to run properly

* Finilize unit tests and full coverage

Co-authored-by: Lewis Daly <lewisdaly@me.com>

* Feature/1180 enhance get settlement windows by (#238)

* Added code changes to DAO and handler to include settlementwindow content

* Added code changes to DAO and handler to include settlementwindow content

* Added code changes to unit test to increase code coverage

* Changed code to fix the integration error

* Code review changes : added  SettlementWindowContentModel.getBySettlementWindowId function. Unit tests are still failing

* Code review changes : Added unit test and fixed unit tests to increase code coverage.

* Code review II : Removed settlement window id from response object and added settlement id to it.

* Trigger a rebuild. Previous commit failed due to internet failure

* Updated swagger definition with the settlementId as integer on the settlementWindowContent

* Fixed vulnerabilities

* feature/1211 Auto position reset (#240)

* Auto position reset functionality

* Re-run integration tests

* Use newest central-ledger snapshot release for integration tests

* feature/1209 Restrict Create Settlement (#249)

* Forbid GROSS/IMMEDATE models, when creating new settlement

* Corrected typo as per PR request

* Feature/926 enhanced get settlement windows by params (#254)

*  feature/926-EnhancegetSettlementWindowsByParams

 - Enhanced getSettlementWindowsByParams to query with currency param
 - Updated the response object to include content

*  feature/926-EnhancegetSettlementWindowsByParams

 - Enhanced getSettlementWindowsByParams to query with currency param
 - Updated the response object to include content

*  feature/926-EnhancegetSettlementWindowsByParams

 - Enhanced getSettlementWindowsByParams to query with currency param
 - Updated the response object to include content

* Added async-retry

* - Update the facade to be able to query using currency
- removed the caret sign ^ from package.json

* - Trigger rebuild

* Prepare version for PR against master

* Trigger circle CI re-run

* Downgrade @mojaloop/central-services-database due to integration tests failure

* Address PR review request and update dependencies

Co-authored-by: deonbotha <deon.botha@modusbox.com>
Co-authored-by: lazolalucas <lazolalucas@users.noreply.github.com>
Co-authored-by: Lewis Daly <lewis@vesselstech.com>

* Fix/1107 circleci deploy (#261)

* update deploy config, bump package

* bump package version

* update hapi to 18.4.1

* Settlement v2 (#271)

* feature/1095 Close Settlement Window Changes (#220)

* Refactor scripts tree structure

* Dependencies upgrade

* Changed server setup and init. Registered Settlement Window Handler. Added CLI handler management. Shortened {id} paths. Window to PROCESSING state. Settlement window producer. Settlement window consumer. Default config added. Updated package.json scripts

* Added broker service health check

* SettlementWindowHandler ErrorHandling and async-retry

* Fix unit tests. Coverage fails at 91.32%

* SettlementWindowHandler Processing

* Fix integration tests

* Switched the latest release of central-services-shared

* Added unit test for API index.js . Code coverage now 89.5 percent

* Removed unnecessary commented lines from test

* Added unit tests for lib/healthcheck

* feature/1096 Create Settlement Changes #1 (#224)

* Changed swagger definition

* Settlement model validation. Unit tests fail

* select distinct

* Settlement window content validation. Fixed unit tests

* Deleted code to fix the two plugin issues and unit test for Handler - index.js

* feature/1097 Create Settlement Changes #2 (#225)

* Implemented inserts (not tested). Changed response definition. Unit tests fail

* Generate response. Validate proper implementation. Disable failing unit tests to be adjusted

* feature/1099 Update Settlement by ID Changes (#229)

* Implement updateSettlementByIdChanges enhancement

* Entire settlement process verified using various scenarios. Corrections made where applicable

* feature/1165 Unit tests for central-settlement part1

* Completed the unit test for register handlers code.

* Domain settlement windows close , added unit test

* Added more unit testing code to the settlement  windows models facade

* Added unit tests and fixed existing ones  to cover unhappy lines in process

* Added unit tests to shared/setup to cope with the service types

* Added unit test for shared setup : handler service type - and run handler true without any modules.

* Added unit test for settlement window with a handler list

* Added unit test to increase code coverage for settlement window facade

* Add unit test testing the settlement window state "not Processing"

* Added unit test to roll back settlement window facade when error occurs

* Added unit test on process to cover rollback on critical error and updated the version on central services shared to "8.8.2",

* Added unit testcode to close window

* Fixed the knex raw and .join isn't a function errors

* Changes:

- Added a unit test file and unit tests for SettlementWindow handler
- Made some fixes on the SettlementWindow handler

* Added last unit test on the facade. the tests are being ran in isolation still.

* Added last knex builder stubs to facade unit tests

* Combined the Stubs for the facade

* Worked on branches to increase covereage

Co-authored-by: lazolalucas <lazolalucas@users.noreply.github.com>

* feature/1100 Settlement By Currency Wrap Up (#231)

* Fixed and extended integration testing for settlement-v2

* Add anchore summary report upload, bump package version to 8.8.0 (#230)

* Full coverage for domain/settlement/index & models/lib/enums

* Full coverage for inculded scripts

* Integration testing config to run properly

* Finilize unit tests and full coverage

Co-authored-by: Lewis Daly <lewisdaly@me.com>

* Feature/1180 enhance get settlement windows by (#238)

* Added code changes to DAO and handler to include settlementwindow content

* Added code changes to DAO and handler to include settlementwindow content

* Added code changes to unit test to increase code coverage

* Changed code to fix the integration error

* Code review changes : added  SettlementWindowContentModel.getBySettlementWindowId function. Unit tests are still failing

* Code review changes : Added unit test and fixed unit tests to increase code coverage.

* Code review II : Removed settlement window id from response object and added settlement id to it.

* Trigger a rebuild. Previous commit failed due to internet failure

* Updated swagger definition with the settlementId as integer on the settlementWindowContent

* Fixed vulnerabilities

* feature/1211 Auto position reset (#240)

* Auto position reset functionality

* Re-run integration tests

* Use newest central-ledger snapshot release for integration tests

* feature/1209 Restrict Create Settlement (#249)

* Forbid GROSS/IMMEDATE models, when creating new settlement

* Corrected typo as per PR request

* Feature/926 enhanced get settlement windows by params (#254)

*  feature/926-EnhancegetSettlementWindowsByParams

 - Enhanced getSettlementWindowsByParams to query with currency param
 - Updated the response object to include content

*  feature/926-EnhancegetSettlementWindowsByParams

 - Enhanced getSettlementWindowsByParams to query with currency param
 - Updated the response object to include content

*  feature/926-EnhancegetSettlementWindowsByParams

 - Enhanced getSettlementWindowsByParams to query with currency param
 - Updated the response object to include content

* Added async-retry

* - Update the facade to be able to query using currency
- removed the caret sign ^ from package.json

* - Trigger rebuild

* Prepare version for PR against master

* Trigger circle CI re-run

* Downgrade @mojaloop/central-services-database due to integration tests failure

* Address PR review request and update dependencies

* Updated dependancy

* Another test for integration tests

* Feature/1241 get settlements by params to include currency (#268)

* Re-do code changes to the updated settlements v2

* Added async-retry

* Remove caret in package.json

* Fixed the filtering on the settlement window(s) per settlement id, added unit test

* Fixed the filtering on the settlement window(s) per settlement id, added unit test

* Fixed vulnerabilities

* Removed the settlement model line in the response object

* Removed the settlement model line in the response object

* update central ledger

* Fix vulnerability

* attempt to fix vulnerability

* Updated Happi to version 19.1.1

* Fixed the filtering on the settlement window(s) per settlement id, added unit test

* Crazy shit happening

* test commit

* Fixed code review changes

* Re-trigger pull request

* Revert Recreate DB script

* Updated Hapi to LTS version

* * Fixed get settlement by params
* Included content on the response object

* * Fixed Circle ci tests failing

* Trigger a rebuild

* Removed cache for dependencies under unit test/coverage

* Updated circle ci config.yml

* Updated circle ci config.yml

Co-authored-by: deonbotha <deon.botha@modusbox.com>

* Enhance central-settlement : Return settlement window content for every settlement window when getting settlements by id. (#263)

* Re-do code changes to the updated settlements v2

* Added async-retry

* Remove caret in package.json

* Fixed the filtering on the settlement window(s) per settlement id, added unit test

* Fixed the filtering on the settlement window(s) per settlement id, added unit test

* Fixed vulnerabilities

* Removed the settlement model line in the response object

* Removed the settlement model line in the response object

* update central ledger

* Fix vulnerability

* attempt to fix vulnerability

* Updated Happi to version 19.1.1

* Fixed the filtering on the settlement window(s) per settlement id, added unit test

* Crazy shit happening

* test commit

* Fixed code review changes

* Re-trigger pull request

* Revert Recreate DB script

* Updated Hapi to LTS version

* Added Neal's code review changes for pull request 263

* Update vulnerability issue

* Replaced the recursive delete object logic by a "map over"

* Ignore the vulnerablity rewire > eslint > espree > acorn for a week

Co-authored-by: Georgi Georgiev <georgi.georgiev@modusbox.com>
Co-authored-by: Deon Botha <darkwingduck@Deons-MacBook-Pro.local>
Co-authored-by: lazolalucas <lazolalucas@users.noreply.github.com>
Co-authored-by: Lewis Daly <lewisdaly@me.com>

* Fixed release issues(#272)

Updated package.json with the version to 9.3.0
Updated circle ci config.yml

* Fixed Dockerfile to have the correct run command for the new module structure (#274)

Co-authored-by: Neal Donnan <neal.donnan@modusbox.com>

* Added updated Mojaloop license (#247)

**Force merging as this is a license change only**

* Feature/1223 anchore policy (#292)

* Add custom mojaloop policy for evaluating anchore-cli scans

* run audit resolver, and ignore issues for devDependencies

* updated central-services dependencies (#294)

Co-authored-by: Valentin <valentin.genev@modusbox.com>

* Release/v9.5.0 (#295)

* ignoring some dependencies updates due to failing tests

* sorted contribs list alphabetically

Co-authored-by: Valentin <valentin.genev@modusbox.com>

* Updated versions for error-handler, etc... (#302)

* Updated versions for error-handler, etc...

* Touched file

* Touch to retrigger build

* Fixed typo

* Update to package.json

* Added JWS tag

* Changes required to get integration tests working

* Feature/otc300 consume commit message (#303)

* Added handler to monitor topic-notification-event

* Added handler to monitor topic-notification-event

* Added more code to break out vars from the msg on the notification topic

* Finalize code to break out vars from the msg on the notification topic

* Restructured code in the handler

* Renamed fulfill to fulfil

* Added initial code in the Domain to update the DB

* Added Knex version of SQL statement (Promise pending error still)

* Added more knex statements for the changed SQL from Micheal

* Fixed the bindings error

* Fixed the bindings error again

* Add facade and domain code

* Added Error handling

* Fixed index.js

* Removed unwanted code

* Updated the handler register unit test

* Fixed inner select error that magically started to appear

* Added the status parameter

* Added code to unit test transferfulfil facade

* Add more code to facade unit test

* Add unit test for domain/index.js

* Add unit test for domain/index.js

* Added unit tests to the handler

* Added more unit tests to transferfulfil handler

* Full code coverage achieved on the transferfulfil handler

* Removed unit test on facade. TBD later

* updated dependancies

* Changed the port in default.json

* Resolved vulnerabilities

* Made some depnedancy update changes

* Resloved vulnerabilities

* Increased codee coverage on branches to 100% for transferFulfil handler

* Fixed issue with Knex

* Added filter for OTC498

* Renamed functions as per code review request

* Fixed function name chnages in the unit tests

* Added changes to facade unit test

* Added code review change as requested by Rajiv

* Added Ignores for the failing unit test on the facade

* Added ignores for failing test

* Added config changes for python3 dependancy

* Feature/otc300 consume commit message (#305)

* Added handler to monitor topic-notification-event

* Added handler to monitor topic-notification-event

* Added more code to break out vars from the msg on the notification topic

* Finalize code to break out vars from the msg on the notification topic

* Restructured code in the handler

* Renamed fulfill to fulfil

* Added initial code in the Domain to update the DB

* Added Knex version of SQL statement (Promise pending error still)

* Added more knex statements for the changed SQL from Micheal

* Fixed the bindings error

* Fixed the bindings error again

* Add facade and domain code

* Added Error handling

* Fixed index.js

* Removed unwanted code

* Updated the handler register unit test

* Fixed inner select error that magically started to appear

* Added the status parameter

* Added code to unit test transferfulfil facade

* Add more code to facade unit test

* Add unit test for domain/index.js

* Add unit test for domain/index.js

* Added unit tests to the handler

* Added more unit tests to transferfulfil handler

* Full code coverage achieved on the transferfulfil handler

* Removed unit test on facade. TBD later

* updated dependancies

* Changed the port in default.json

* Resolved vulnerabilities

* Made some depnedancy update changes

* Resloved vulnerabilities

* Increased codee coverage on branches to 100% for transferFulfil handler

* Fixed issue with Knex

* Added filter for OTC498

* Renamed functions as per code review request

* Fixed function name chnages in the unit tests

* Added changes to facade unit test

* Added code review change as requested by Rajiv

* Added Ignores for the failing unit test on the facade

* Added ignores for failing test

* Added Config.yml chnges for Python 3 depnedancy

* deleted apk -v --purge del py-pip line from config.yml

* Feature/otc300 consume commit message (#306)

* Added handler to monitor topic-notification-event

* Added handler to monitor topic-notification-event

* Added more code to break out vars from the msg on the notification topic

* Finalize code to break out vars from the msg on the notification topic

* Restructured code in the handler

* Renamed fulfill to fulfil

* Added initial code in the Domain to update the DB

* Added Knex version of SQL statement (Promise pending error still)

* Added more knex statements for the changed SQL from Micheal

* Fixed the bindings error

* Fixed the bindings error again

* Add facade and domain code

* Added Error handling

* Fixed index.js

* Removed unwanted code

* Updated the handler register unit test

* Fixed inner select error that magically started to appear

* Added the status parameter

* Added code to unit test transferfulfil facade

* Add more code to facade unit test

* Add unit test for domain/index.js

* Add unit test for domain/index.js

* Added unit tests to the handler

* Added more unit tests to transferfulfil handler

* Full code coverage achieved on the transferfulfil handler

* Removed unit test on facade. TBD later

* updated dependancies

* Changed the port in default.json

* Resolved vulnerabilities

* Made some depnedancy update changes

* Resloved vulnerabilities

* Increased codee coverage on branches to 100% for transferFulfil handler

* Fixed issue with Knex

* Added filter for OTC498

* Renamed functions as per code review request

* Fixed function name chnages in the unit tests

* Added changes to facade unit test

* Added code review change as requested by Rajiv

* Added Ignores for the failing unit test on the facade

* Added ignores for failing test

* Added Config.yml chnges for Python 3 depnedancy

* deleted apk -v --purge del py-pip line from config.yml

* Added missing | for command in config.yml

* Updated dependencies for issue: https://github.com/mojaloop/project/issues/1378 (#308)

* Fix CircleCi/Python (#309)

* Fixed cache issue with checksum calculation (#310)

* Feature/301 enhance close settlement window (#307)

* Added handler to monitor topic-notification-event

* Added handler to monitor topic-notification-event

* Added more code to break out vars from the msg on the notification topic

* Finalize code to break out vars from the msg on the notification topic

* Restructured code in the handler

* Renamed fulfill to fulfil

* Added initial code in the Domain to update the DB

* Added Knex version of SQL statement (Promise pending error still)

* Added more knex statements for the changed SQL from Micheal

* Fixed the bindings error

* Fixed the bindings error again

* Add facade and domain code

* Added Error handling

* Fixed index.js

* Removed unwanted code

* Updated the handler register unit test

* Fixed inner select error that magically started to appear

* Added the status parameter

* Added code to unit test transferfulfil facade

* Add more code to facade unit test

* Add unit test for domain/index.js

* Add unit test for domain/index.js

* Added unit tests to the handler

* Added more unit tests to transferfulfil handler

* Full code coverage achieved on the transferfulfil handler

* Removed unit test on facade. TBD later

* updated dependancies

* Changed the port in default.json

* Resolved vulnerabilities

* Made some depnedancy update changes

* Resloved vulnerabilities

* Increased codee coverage on branches to 100% for transferFulfil handler

* Fixed issue with Knex

* Added filter for OTC498

* Renamed functions as per code review request

* Fixed function name chnages in the unit tests

* Added changes to facade unit test

* Added code review change as requested by Rajiv

* Added Ignores for the failing unit test on the facade

* Added ignores for failing test

* Added Config.yml chnges for Python 3 depnedancy

* deleted apk -v --purge del py-pip line from config.yml

* Added missing | for command in config.yml

* Added knex statement into settlement handlet facade and index

* Added failure conditions

* Added last code changes

* Increased code coverage with unit tests

* Pushed code coverage up to 100% for the added code

* Updated dependancies

* Removed dependency cache line in ci/config yaml

* Added processing of transfer fulfil message

* Updating integration test config

* Added changes from Neals branch

* Updated settlement integration tests to create settlement models before transfers

* Update package.json withh --production switches

Co-authored-by: Neal Donnan <neal.donnan@modusbox.com>

* Feature/otc 390 implement interchange fee calculation (#311)

* Initial commit

* Initial commit

* Added get transaction object feature

* Updated unit tests

* Added get transaction object feature tests

* Updated tests

Co-authored-by: Neal Donnan <neal.donnan@modusbox.com>

* Added scripts directory in Dockerfile

* Fixed persisting of ledger entries

* Changed rounding of interchange fee calculation to 2 decimals, half up

* Fixed integration tests

* fix for integration tests failing on latest version of simulator (#312)

* Updated test images for ml-api-adapter and central-ledger for integration tests to the latest.

* Made the loading of script engine scripts dynamic

* Upgraded central-services-shared library to 10.5.3, bump version (#313)

Co-authored-by: Claudio <claudio.viola@happycog.com>

* Feature/otc 624 rework central settlement integration test set up (#314)

* OTC-624: refactoring integration tests initial data setup

* OTC-624 fixing and refactoring cleaning up

* OTC-624 refactoring and cleaning up test setup

* Ignoring package updates

* OTC-624 reverting back merge conflict change

* OTC-624 renamed scenario and fixing axios version

* OTC-624 renamed folder due to order of tests

* Feature/otc658 rework cgs handlers (#316)

* Added transferParticipantStateChange to cli

* Implemented name change transferParticipantStateChange to transfeSettlement

* Added code to handlers/index.js to increase code coverage

* Commented to be database transaction demarcation

* FIX TransferParticipantStageChange wrong table rename

* Moving script loader to utils

* OTC-676 refactoring and creating transactions

* OTC-676 added scriptsEngine unit tests

* OTC-676 refactoring

* Added missing export in facade

* Fixing tests regex in package.json

* fix lint

* Commit:

- Added unit tests for the scriptsLoader.js
- Renamed transferParticipantStateChange to transferSettlement in the unit tests

* Using apis to create settlement models

* Moved the logic for retrieving script config to a new function : retrieveScriptConfiguration

* OTC: 375 - Fixed swagger def title

* OTC-715 - Implement GitLab CI/CD on the central-settlement TIPS project.

* Removing CGS settlement model

* Updated helm dependency update script

* Fixed docker-compose setup

* Started to update new transfer settlement knexes

* Cleaned up the updateTransferSettlement code.

* Fixed models sqls statement according to Michaels spec

* Temporary change to pipeline to allow deployment to test OTC-649

* Change the sign calculating the difference between PP.value and TR.amount when updating position

* #1484: Update FSPIOP API version (#321)

* Update FSPIOP API version

* Update package version and resolve audit issues

* Temporarily resolve audit issues

* Resolve audit issues

* Reset package versions

* Reset swagger version

* Temporarily disable docker images removal after integration tests

* Fix integration test config for central-ledger

* Resolve audit issues. Restore integration runner

* Temporarily disable docker images removal after integration test

* Update dependencies, resolve audit issues, revert central-services-database to v9.2.0

* Revert hapi-openapi to v1.2.6

* Restore integration runner

* Update FSPIOP API version

* Bump basePath to v2, update tests

* Revert "Temporary change to pipeline to allow deployment to test OTC-649"

This reverts commit 0c97928a22138741e06854264574d10e04049546

* Delete StubInsertPairOfLedgerEntries.js

* OTC-762 setting up jest

* OTC-762 updating local config

* OTC-762 attempting message push

* OTC-762 sending message on kafka queue

* OTC-762 adding transfer before running test

* OTC-762 removed commented code

* Added await for add ledger entry function and fixed CGS insert query for transferParticipant

* OTC-762 updating query logic for participantPosition records

* OTC-762 polishing

* OTC-762 formatting

* OTC-762 only adding fees for committed transfers

* OTC-762 adding more error handling

* OTC-762 removing calls brackets for commit function, unknown error logged

* Fixed a bug in Knex statement and added chnges to knex as per story OTC649

* OTC-777 added unit tests for insert Ledger entry

* Unit test update Caudio

* OTC649 test mocking update

* Claudio added the correct code to cover the nested knex functions

* Add debug output to gitlab-ci.yml

* Update README.md

* Resolve audit issues (#322)

* Fixed some unit tests and increased coverage

* Updated dependencies

* Run unit test coverage in Gitlab pipeline

* Removed the insert of a SETTLED transfer state record

* Move kubernetes service account configuration into same step as deployment

* Updating dependency

* Update README.md

* Update README.md

* Added try catch to scripts loader function

* Fixed unit test

* Temporary move of scripts

* Fixed unit test coverage

* Added more clever way to load scripts

* Fixed settlement window content response for multiple windows

* Added check for liquidity check before calculating liquidity and adjusting NET_DEBIT_CAP

* Added unit test for liquidity check

* Added filtering for settlementWindowContent when closing settlement windows to only add entries for ledgerAccountTypes linked to NET settlement models

* #1885: Update API documentation (#330)

* Update API documentation

* Fix audit issues

* Add unit tests

* Fix integration test

* Resolve audit issues

* Fix audit

* Remove hapi-swagger

* Update deps

* Minor fix

* docker-compose to use personal dockerhub

* test fix

* chore: update license file (#329)

* [Security] Bump urijs from 1.19.2 to 1.19.5 (#331)

Bumps [urijs](https://github.com/medialize/URI.js) from 1.19.2 to 1.19.5. **This update includes a security fix.**
- [Release notes](https://github.com/medialize/URI.js/releases)
- [Changelog](https://github.com/medialize/URI.js/blob/gh-pages/CHANGELOG.md)
- [Commits](https://github.com/medialize/URI.js/compare/v1.19.2...v1.19.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* added check for settlement model in transfersettlement handler

* feat: Continious Gross Settlement

* dependencies update

* deleted gitlab-ci.yaml

Co-authored-by: Miguel de Barros <miguel@debarros.me>
Co-authored-by: Georgi Georgiev <georgi.georgiev@modusbox.com>
Co-authored-by: HenkKodde <36304517+HenkKodde@users.noreply.github.com>
Co-authored-by: Rajiv Mothilal <rajivmothilal@gmail.com>
Co-authored-by: Sam <elnyry@users.noreply.github.com>
Co-authored-by: shashi165 <33355509+shashi165@users.noreply.github.com>
Co-authored-by: Georgi Georgiev <g.georgi@gmail.com>
Co-authored-by: Lewis Daly <lewisdaly@me.com>
Co-authored-by: Lewis Daly <lewis@vesselstech.com>
Co-authored-by: Juan Correa <gibaros@users.noreply.github.com>
Co-authored-by: Steven Oderayi <oderayi@gmail.com>
Co-authored-by: deonbotha <deon.botha@modusbox.com>
Co-authored-by: lazolalucas <lazolalucas@users.noreply.github.com>
Co-authored-by: Deon Botha <darkwingduck@Deons-MacBook-Pro.local>
Co-authored-by: ndonnan <neal.donnan@gmail.com>
Co-authored-by: Neal Donnan <neal.donnan@modusbox.com>
Co-authored-by: Valentin <valentin.genev@modusbox.com>
Co-authored-by: Adrian Enns <ennsak@gmail.com>
Co-authored-by: vijayg10 <33152110+vijayg10@users.noreply.github.com>
Co-authored-by: Claudio <claudio.viola@happycog.com>
Co-authored-by: Lazola Lucas <lazola.lucas@modusbox.com>
Co-authored-by: Keith Douglas <keith.douglas@modusbox.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Shashikant Hirugade <shashi.pioneer@gmail.com>

* docker-compose.yaml and integration-runner.env fixed

* addressed some pr comments

* fix: vulnerability checks

Co-authored-by: Miguel de Barros <miguel@debarros.me>
Co-authored-by: Georgi Georgiev <georgi.georgiev@modusbox.com>
Co-authored-by: HenkKodde <36304517+HenkKodde@users.noreply.github.com>
Co-authored-by: Rajiv Mothilal <rajivmothilal@gmail.com>
Co-authored-by: Sam <elnyry@users.noreply.github.com>
Co-authored-by: shashi165 <33355509+shashi165@users.noreply.github.com>
Co-authored-by: Georgi Georgiev <g.georgi@gmail.com>
Co-authored-by: Lewis Daly <lewisdaly@me.com>
Co-authored-by: Lewis Daly <lewis@vesselstech.com>
Co-authored-by: Juan Correa <gibaros@users.noreply.github.com>
Co-authored-by: Steven Oderayi <oderayi@gmail.com>
Co-authored-by: deonbotha <deon.botha@modusbox.com>
Co-authored-by: lazolalucas <lazolalucas@users.noreply.github.com>
Co-authored-by: Deon Botha <darkwingduck@Deons-MacBook-Pro.local>
Co-authored-by: ndonnan <neal.donnan@gmail.com>
Co-authored-by: Neal Donnan <neal.donnan@modusbox.com>
Co-authored-by: Valentin <valentin.genev@modusbox.com>
Co-authored-by: Adrian Enns <ennsak@gmail.com>
Co-authored-by: vijayg10 <33152110+vijayg10@users.noreply.github.com>
Co-authored-by: Claudio <claudio.viola@happycog.com>
Co-authored-by: Lazola Lucas <lazola.lucas@modusbox.com>
Co-authored-by: Keith Douglas <keith.douglas@modusbox.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Shashikant Hirugade <shashi.pioneer@gmail.com>
vgenev added a commit that referenced this pull request Feb 4, 2021
* Feature/#1945 cgs2 (#2)

* changes to circleci config

* fixing the circleci thing

* coverage scripts fixes into the package.json file

* added license

* testing circleci (#8)

* Readme slightly updated

* Slight changes to circleCI config yaml

* Changes to circleCI config in coverage tests section

* Testing circleci

* Fixed circleci format issue

* Initial changes as suggested by DA review added to API

* Added unit tests

* Added succesful unit test for /settlementWindows

* Move Happi server as an single instance in the double verb handler

* Added unit tests for Operations on /settlementWindows/{settlementWindowId}

* Added more unit tests

* Added last unit tests

* Increased unit test to 100 percent code coverage

* Added Happi pagination plugin

* Removed console.log statements and added central services shared logging

* Added licence block

* Remove zipped swagger file as per Miguel's review

* Added PR review changes , test coverage and new unit tests

* Added Logger to handlers

* Moved unit tests to unit test directory

* Added POST operation to settlements/

* Remove blnk unit tests created by yeoman

* Fixed incorrect path in handler

* delete swagger-158.json

* Added Dockerfile, and fixed package.json unresolved merge conflict issue. (#12)

* Added Dockerfile, and fixed package.json unresolved merge conflict issue.

1. Fixed package.json unresolved merge conflict issue.
2. Added Dockerfile
3. Added some missing dependencies in package.json for production execution

* added myself as a contributor :D

* Moved swagger from config to interface folder, removed settlemenAPI.json as its a duplicate of swagger.json

* Removed settlementAPI.json from docker file

* Corrections to swagger file (#13)

* Introduce corrections to swagger file
* createSettlement
* Updated createSettlement
* Reverting back version change as per PR review

* Feature/DAO and API for settlementWindows (#14)

* WIP added GET for settlementWindowId

* WIP added handler for GET settlementWindow by id; Added plugin for logging based on central-services.Logger

* WIP added enums loading from Db on server startup

* WIP load ENUMS to server.app.enums

* added domain layer and changed the code structure

* WIP slight change

* WIP

* WIP getSettlementWindow by filter - DONE

* functionality finished

* removed unnecessary then

* some small changes

* WIP

* settlementEventTrigger is done

* Added settlemnts get by params endpoint

* Added settlemnts get by params endpoint

* wip

* merged with docker file

* WIP

* WIP

* settlementWindow getById is done

* settlementWindow getByParams & settlementWindow facade get by list of Ids are done

* settlementWindow Close is done

* wip

* swagger deffinition aligned to the latest changes and small naming issue fixed

* Added get settlemntById endpoint up to the facde

* updated settlementWindows to latest changes

* Added update settlements by ID (Put) up to dao

* get settlement by id

* Test get settlements by Id made changes to facde

* WIP

* get settlement by participantId and accountId

* added a file

* DAO does not throw now, if object not found

* settlementWindows tested

* fixed wrong version change in conflict resolution

* Feature/dao and api (#15)

* WIP added GET for settlementWindowId

* WIP added handler for GET settlementWindow by id; Added plugin for logging based on central-services.Logger

* WIP added enums loading from Db on server startup

* WIP load ENUMS to server.app.enums

* added domain layer and changed the code structure

* WIP slight change

* WIP

* WIP getSettlementWindow by filter - DONE

* functionality finished

* removed unnecessary then

* some small changes

* WIP

* settlementEventTrigger is done

* Added settlemnts get by params endpoint

* Added settlemnts get by params endpoint

* wip

* merged with docker file

* WIP

* WIP

* settlementWindow getById is done

* settlementWindow getByParams & settlementWindow facade get by list of Ids are done

* settlementWindow Close is done

* wip

* swagger deffinition aligned to the latest changes and small naming issue fixed

* Added get settlemntById endpoint up to the facde

* updated settlementWindows to latest changes

* Added update settlements by ID (Put) up to dao

* get settlement by id

* Test get settlements by Id made changes to facde

* WIP

* get settlement by participantId and accountId

* added a file

* DAO does not throw now, if object not found

* settlementWindows tested

* Changes for 6.2.1 -20180830@15H31.

* Settlements - 20180830@22.57.

* fixes for sequence diagram 6.2.4.

* fixes and additions for 6.2.5 but not completed

* added comment

* fixed wrong version change in conflict resolution

* changer for 6.2.5 not completed

* 6.2.1 and 6.2.4 working a little better just some data inconsistency

* trigger sort of working well

* Feature/414 416 DAO and API (#16)

* Applied standard --fix
* Renamed db-model to models
* Manual linter fixes
* Added license information where missing

* Feature/414 416 DAO and API (#17)

* Finished 6.2.2.

* Current dev (#18)

* WIP added GET for settlementWindowId

* WIP added handler for GET settlementWindow by id; Added plugin for logging based on central-services.Logger

* WIP added enums loading from Db on server startup

* WIP load ENUMS to server.app.enums

* added domain layer and changed the code structure

* WIP slight change

* WIP

* WIP getSettlementWindow by filter - DONE

* functionality finished

* removed unnecessary then

* some small changes

* WIP

* settlementEventTrigger is done

* Added settlemnts get by params endpoint

* Added settlemnts get by params endpoint

* wip

* merged with docker file

* WIP

* WIP

* settlementWindow getById is done

* settlementWindow getByParams & settlementWindow facade get by list of Ids are done

* settlementWindow Close is done

* wip

* swagger deffinition aligned to the latest changes and small naming issue fixed

* Added get settlemntById endpoint up to the facde

* updated settlementWindows to latest changes

* Added update settlements by ID (Put) up to dao

* get settlement by id

* Test get settlements by Id made changes to facde

* WIP

* get settlement by participantId and accountId

* added a file

* DAO does not throw now, if object not found

* settlementWindows tested

* Changes for 6.2.1 -20180830@15H31.

* Settlements - 20180830@22.57.

* fixes for sequence diagram 6.2.4.

* fixes and additions for 6.2.5 but not completed

* added comment

* fixed wrong version change in conflict resolution

* changer for 6.2.5 not completed

* 6.2.1 and 6.2.4 working a little better just some data inconsistency

* trigger sort of working well

* fixed get of index list of settlementParticipantCurrency

* changes need to figure out why insert for settlementTransferParticipant doesnt work correctly

* trigger event fixed

* Changes for 3.5.0 release (#19)

* Changes for 3.5.0 release

- Fixed issue with SQL not returning current settlementWindows due to the currentDate comparison of `>` which should be `>=`
- Updated version from 1.0.0 to 3.5.0 to align to our release versioning
- Updated Dockerfile for the current directory and ports

* Added a quick config to make deployments easier

* Fixed issue with Docker file

* Fixed dockerfile, and re-aligned config

* Feature/414 416 dao and api (#20)

* Merging functionality 6.2.2 & 6.2.5. done by @ggrg

* Feature/439 Fix updateSettlementById (#21)

* Resolved first two tasks
* Move all to single transaction and sync with design
* cloneDeep rename

* Added missing changes for default.json (#22)

* Feature/445 Unit Tests for central-settlement (#23)

* Initialize test/
* Dummy .test.js files

* Feature/445 Unit Tests for central-settlement (#24)

* Initialize test/

* Dummy .test.js files

* Restored test/data/ and added rc&sinon modules

* istanbul: 1.1.0-alpha.1 & .istanbul.yml

* Resolved most issues requested by PR review

* Origin/feature/#438 remove date check (#26)

* Feature/#438RemoveDateCheck

* Feature/#438RemoveDateCheck

* Feature/445 Unit Tests for central-settlement (#30)

* Initialize test/

* Dummy .test.js files

* Restored test/data/ and added rc&sinon modules

* istanbul: 1.1.0-alpha.1 & .istanbul.yml

* Resolved most issues requested by PR review

* putById fully covered and tested

* getById and getByParams fully covered and tested

* models/settlement/facade.test.js completed

* Unit tests added

* Settlement Service unit testing completed

* Settlement Window Service unit testing completed

* Feature/449 Unit Tests for central-settlement II (#31)

* participantCurrency & settlement model unit tests
* Unit tests added
* Added unit tests
* Finished unit tests for story 449

* Feature/#445 unit tests for central settlement i (#32)

* settlementWindow handler tested

* handlers are done

* merged develop and handlers tests; coverage 100%

* Feature/#454 investigate settlements api failure (#33)

* fixed few bugs found. try-catch and log all the things. coverage maxed out.

* Incrementing version for central-settlement (#34)

* Fix for issues in building docker image (#35)

* Incrementing version for central-settlement

* Changing docker command to use 'test' folder instead

* Fixed bugs 474 & 480 (#36)

* Fixed bugs 474 & 480
* Fixed unit tests and pushed coverage to 100%

* Added pre-commit hooks (#37)

* Increment version (#38)

* Incrementing version for central-settlement

* Renamed 'test' folder to 'tests' and updated corresponding references in pakage.json

* Reverting the name back to 'test' for uniformity but changing docker command to use 'test' folder instead

* Incrementing to 3.7.0 version

* Feature/461 Settlement Transfer - Prepare & Commit (#40)

* Settlement transfer prepare and commit init
* Finished settelement transfer prepare & commit. Unit tests in progress
* Finished settlement transfer prepare & commit
* Added unit tests and coverage to 100%

* Incrementing version to 3.7.1 (#41)

* Incrementing version of central-settlement to 3.7.1-snapshot

* fixes for circle ci builds (#42)

* fixes for circle ci builds

* removal of backslash

* Feature/#501reformat error message (#43)

* WIP

* error reformatted

* fixed error format

* removed caret and tilde and upgraded package versions in package.json (#44)

* participantPosition update for settlement account (#45)

* Increment version 3.7.2 (#46)

* Incrementing version to 3.7.2

* added README and APIDefinition (#39)

* Incrementing version to 3.8.0 (#47)

* Incrementing version to 3.8.0

* Bugfix/491 Invalid Response for GetSettlementBySettlementParticipantAccount (#49)

* Fixed demo scripts to run again after changes in ml-api-adapter and central-ledger
* Fix settlementTransfer demo scripts
* Fix settlementTransfer demo scripts (#48)
* Utilise test scripts in sequence
* Implementation aligned to diagram, endpoint added, coverage 100

* Feature/528 risk managed settlement (#50)

* Implemented 6.2.1, 6.3.1 & 6.3.2. Unit test fail
* Implemented 6.3.3, 6.2.5. Unit tests fail
* Updated demo scripts & fixed issues with transfers. Unit tests fail
* Bugfix HMLNS position. Unit tests fail
* Added new lines at the end of the demo scripts. Unit tests fail
* Commented out variable startAfterParticipantPositionChangeId. Unit tests fail
* Fixed all Inspect Code errors and warnings. Unit tests fail
* Fix broken unit tests
* Demo prep
* Coverage to 98%
* Changes according to the review

* Feature/535 Settlement Transfer Abort (#51)

DA review requested change of settlement states

* Bugfix/526 Partial Validation (#52)

* Extended validation for createSettlement operation

* Hotfix for v3.10.0 release (#53)

* Hotfix for v3.10.0 release

- https://github.com/mojaloop/project/issues/539
- Added the package lock file

* - Updated shared lib to 4.1.0 to fix for https://github.com/mojaloop/project/issues/539

* Added HUB_PARTICIPANT config (#54)

* Feature/535 Settlement Transfer Abort Impl (#55)

* Altered /settlements/{id} endpoint to support abort
* Settlement transfer ABORT, part 1. Unit tests fail
* Fixed unit tests
* Prepared demo scripts, fixed minor bug
* Provide full coverage
* Removed .returning knex clause

* feature/481UpdateSettlementBySettlementParticipant

* Feature/566 Notifications for Position Updates (#57)

* Produce message to notificiation topic. Unit tests fail
* Fix code inaccuracy. Unit tests fail
* Remove unused code.
* Added stub for settlementTransferReserve
* Remove unused requires
* Reworked unit tests.
* Corrected unit tests and provide full tests coverage

* Update/update version 4.4.1 (#59)

* Updating version in package.json to 4.4.1

* changed the hub name to be loaded from default.json (#58)

* changed the hub name to be loaded from default.json instead of enums headers value

* config wrongly used

* Version change/upgrade to 5.1.0 (#60)

* Updating version to 5.1.0 for the next release

* Badges ! (#61)

Thanks to Miguel

* Fixed issue when closing unexisting window (#62)

* Version change/upgrade to 5.1.1 (#63)


* Incrementing version in package.json and adding badges (same as central-ledger)

* Feature/507 635 Integration Tests (#64)

* Init integration tests
* Finished populate admin test data
* Added settlements data prep integration tests
* Finished close settlementWindow
* SettlementTransfer to PS_TRANSFERS_RESERVED, no db checks
* Advanced integration tests to PS_TRANSFERS_COMMITTED
* Removed devDependency leaked-handles
* Finished integration and unit tests
* Update package.json and init integration-runner.sh
* Amendments to integration-runner
* integration-runner & circleci
* Enable all in integration-runner.sh
* Clean up integration-runner
* Changes as requested by rmothilal

* #610 announcement notifications (#65)

* Announcement Notifications for Slack channel. Resolve vulnerabilities.

* no message

* Restored package-lock.json file. Updated central-ledger dependency to 5.2.0 to resolve vulnerabilities.

* Increase version to 5.2.1

* Undo updates to .json package. Another team member is addressing the vulnerabilities currently.

* Included vulnerability updates.

* version to 5.2.0

* Feature/628 Node Upgrade (#66)

* Init node upgrade to v10
* Upgrade hapi, install standard, repair integration-runner
* Version to 5.2.1
* Upgrade to NodeJs runtime 10.x and upgrade all dependencies

* fixed the bug with database join (#67)

* fixed the bug with database join

* upgraded the version to 5.3.0

* Bugfix/714 Settlement Transfer Fulfilment Duplicate Check (#68)

* Fixed transferFulfilment issue and settlement ABORT failure. Unit tests fail
* swagger.json update and unit tests fix
* Fix coverage
* Bump up version for next release
* Updated package-lock
* reset cache
* Fix ml-api-adapter start failure

* Updated swagger.json version as referred by documentation (#69)

* Feature/724Db Object Exposed By src/lib

- src/models/index.js to src/lib/db.js

* hotfix/Fixed SQL Error output and improved coverage (#72)

* Fixed SQL Error output and improved coverage
* Updated version
* Restart CI workflow
* interrupt integration runner just before central-ledger health check

* feature/643 Integration Tests Failure (#73)

* Triggering circle CI
* Exit at the beginnizg of integration-runner.sh
* Added setup_remote_docker
* Removed setup_remote_docker
* docker ps
* multiple docker ps trace
* docker logs for central-ledger
* central-ledger no--rm
* Reverted integration-runner.sh and added centralledger-default.json
* remove exit after central-ledger start

* Change the base image to 10.15.3-alpine and optimize Dockerfiles (#74)

* Fix broken central-settlement tests (#77)

* Update central-settlement test runner for new health checks, update integration test config for central-ledger

Test integration tests with v6.2.1 simulator

Test integration tests with v6.2.2 simulator

Try extending timeout

playing around with Makefile config

debugging broken tests

debugging broken tests

change to demo simulator

Test with ml-api-adapter v6.2.1

test with central-ledger  v6.2.5

test with latest simulator

Test with v6.2.5 simulator, v6.3.0-snapshot for central-ledger

test with v7.1.0 central-ledger

Revert back to central-ledger v6.3.0-snapshot

test with ml-api-adapter v6.4.0

test with ml-api-adapter v7.1.0

Updating versions, adding logs to make config, fix double slash in the callback config

double check last working ml-api-adapter is v6.4.0

Update central-ledger default.json config

Fix the ml-api-adapter to use the simulator health check

Make the ml-api-adapter health endpoint point to the central-ledger

test again with latest simulator

Clean and tidy for PR

* Bump package version to 7.1.0, update dependencies

* run `npm audit fix`

* Fix imports for @hapi packages

* fix unit tests for updated imports

* Update catbox-memory to @hapi/catbox-memory

* Change sleepMilliseconds to 1 second to fix flaky integration tests on slower circleCI

* Feature/796 improve health checks (#79)

* 796 implemented new health check endpoint with db check

* finish unit tests for new HealthCheck

* start working on integration tests

* start working on better integration test runner

* Setting up docker-compose to help run integration tests interactively

* Working on local integration test running

* Update central-settlement test runner for new health checks, update integration test config for central-ledger

Test integration tests with v6.2.1 simulator

Test integration tests with v6.2.2 simulator

Try extending timeout

playing around with Makefile config

debugging broken tests

debugging broken tests

change to demo simulator

Test with ml-api-adapter v6.2.1

test with central-ledger  v6.2.5

test with latest simulator

Test with v6.2.5 simulator, v6.3.0-snapshot for central-ledger

test with v7.1.0 central-ledger

Revert back to central-ledger v6.3.0-snapshot

test with ml-api-adapter v6.4.0

test with ml-api-adapter v7.1.0

Updating versions, adding logs to make config, fix double slash in the callback config

double check last working ml-api-adapter is v6.4.0

Update central-ledger default.json config

Fix the ml-api-adapter to use the simulator health check

Make the ml-api-adapter health endpoint point to the central-ledger

test again with latest simulator

Clean and tidy for PR

* Bump package version to 7.1.0, update dependencies

* run `npm audit fix`

* Add setup integration test

* Fix imports for @hapi packages

* Add back health integration tests

* hacking the integration runner

* working on health check

* fixing health imports

* fix unit tests for updated imports

* Update catbox-memory to @hapi/catbox-memory

* Fix linter issues

* Fixing invalid integration tests

* feature/801-update-ci-license-and-audit (#80)

* Add npm-run-audit and license-scanner step to circleci config

* Ignore minor vulnerabilities

* Fixing up cache restore

* testing with removing defaults step

* Bugfix/894 896 hardening swagger interface (#81)

* Fixing issues described by #894 and #896
* Fix standard issues (auto + manual)

* #908 - Apply new FSPIOP error handling to central settlement code base (#83)

* Add onboarding page

* Update onboarding page per Lewis comments

* Issue #908 - Apply FSPIOP error handling

-update circlci config run cmd
-remove package-lock.json from .gitignore
-added nycrc.yml
-update package.json depdendencies and scripts
-update existing error handling with FSPIOPError framework
-update unit tests as required by update to existing error handling with FSPIOPError framework
-TODO - fix setup.test.js 2 unit tests commented out to perform commit and id.test.js 1 unit tests equal asserts commented out

* Update to Story #908

Updating the ml-api-adapter configuration for integration tests based in changes made in PI 7.3

* Update to Story #908

-fix setup.test.js unit tests

* Update to Story #908

-fix last broken unit test at handlers/settlements/{id}.tests.js
-remove a comment

* 915-Update error from internal to validation, package json versions

* Add --silent flag to npm run audit:check to ensure we print valid JSON, bump package version to 7.2.1 (#82)

* feature/904 Request Duplicate Check update (#96)

* Settlement transfer fulfilment insert update

* Fix standard and other issues

* Preparing snapshot release

* Bugfix/956 Settlements API errors format (#110)

* Registered server plugins and fixed getSettlemendBy Id error. Unit tests fail

* Change internal server errors to validation errors where applicable

* Fix unit tests and add ncu pre-commit hook

* Improve unit tests coverage

* Remove unnecessary export

* hotfix/Resolve Caching Issue

Change package.json to reset cache and set as public (#113)

* Updates to most dependencies, central-ledger still needs to be publis… (#142)

* Updates to most dependencies, central-ledger still needs to be published.
Hapi version is at 18.3.2 because of new joi changes that are breaking hapi openapi swagger import
Added new logger

* updated ml-api-adapter config integration test

* reverted to previous joi version

* updated ml-api integration test json

* updated dependency versions

* updated config that was missing and needed for new ml-api image

* tests now run but are failing because of a data issue

* updates to fix integration issues not working still

* central-ledger update

* 795-SetEndpointDescriptionAndUpdateSummary (#139)

* feature/952 Implement ML Number Library (#149)

* Implement MlNumber. Adjust tests. Fix integration-runner == issue. Upgrade deps. Bump up version
* Refactor to uppercase L in MLNumber
* Upgrade to latest ml-number

* Updated to use the latest central-services-database with a connection… (#157)

* Updated to use the latest central-services-database with a connection object
Updated dependencies and new central-ledger-dependency
Fixed tests

* change password for integration tests as per @ggrg request

* updated dependencies (#165)

* Issue934-FixSetEnvVarRCAsBooleanInsteadOfString-UpdateDepsPackageVer (#176)

* Issue934-FixSetEnvVarRCAsBooleanInsteadOfString-UpdateDepsPackageVer

* Issue934-AddParseStringInObjectDependencyAndUpdateDeps

* Issue934-ResolveVulnerabilityUpdateDependencies

* Feature/1003 container scan policy (#195)

* update all dependencies, bump package version to 8.5.0

* Update circleci to 2.1, work on anchore scanning and refactor

* fix circleci config

* add back the envs to the deploy step

* remove unneeded circleci config

* handle file based logging in Dockerfile, update dependencies (#199)

* Add anchore summary report upload, bump package version to 8.8.0 (#230)

* #1175: Upgrade to Node 12.16.0 LTS (#244)

* Update CircleCI and docker scripts to use Node 12.16.0 LTS
* Update dependencies and lock versions for hapi-related libraries. Resolve audit issue
* Bump version
* Fix integeration test
* Fix unit test
* Restore test npm script
* Restore integration dockerfile

* Settlement-v2 merge into master (#259)

* feature/1095 Close Settlement Window Changes (#220)

* Refactor scripts tree structure

* Dependencies upgrade

* Changed server setup and init. Registered Settlement Window Handler. Added CLI handler management. Shortened {id} paths. Window to PROCESSING state. Settlement window producer. Settlement window consumer. Default config added. Updated package.json scripts

* Added broker service health check

* SettlementWindowHandler ErrorHandling and async-retry

* Fix unit tests. Coverage fails at 91.32%

* SettlementWindowHandler Processing

* Fix integration tests

* Switched the latest release of central-services-shared

* Added unit test for API index.js . Code coverage now 89.5 percent

* Removed unnecessary commented lines from test

* Added unit tests for lib/healthcheck

* feature/1096 Create Settlement Changes #1 (#224)

* Changed swagger definition

* Settlement model validation. Unit tests fail

* select distinct

* Settlement window content validation. Fixed unit tests

* Deleted code to fix the two plugin issues and unit test for Handler - index.js

* feature/1097 Create Settlement Changes #2 (#225)

* Implemented inserts (not tested). Changed response definition. Unit tests fail

* Generate response. Validate proper implementation. Disable failing unit tests to be adjusted

* feature/1099 Update Settlement by ID Changes (#229)

* Implement updateSettlementByIdChanges enhancement

* Entire settlement process verified using various scenarios. Corrections made where applicable

* feature/1165 Unit tests for central-settlement part1

* Completed the unit test for register handlers code.

* Domain settlement windows close , added unit test

* Added more unit testing code to the settlement  windows models facade

* Added unit tests and fixed existing ones  to cover unhappy lines in process

* Added unit tests to shared/setup to cope with the service types

* Added unit test for shared setup : handler service type - and run handler true without any modules.

* Added unit test for settlement window with a handler list

* Added unit test to increase code coverage for settlement window facade

* Add unit test testing the settlement window state "not Processing"

* Added unit test to roll back settlement window facade when error occurs

* Added unit test on process to cover rollback on critical error and updated the version on central services shared to "8.8.2",

* Added unit testcode to close window

* Fixed the knex raw and .join isn't a function errors

* Changes:

- Added a unit test file and unit tests for SettlementWindow handler
- Made some fixes on the SettlementWindow handler

* Added last unit test on the facade. the tests are being ran in isolation still.

* Added last knex builder stubs to facade unit tests

* Combined the Stubs for the facade

* Worked on branches to increase covereage

Co-authored-by: lazolalucas <lazolalucas@users.noreply.github.com>

* feature/1100 Settlement By Currency Wrap Up (#231)

* Fixed and extended integration testing for settlement-v2

* Add anchore summary report upload, bump package version to 8.8.0 (#230)

* Full coverage for domain/settlement/index & models/lib/enums

* Full coverage for inculded scripts

* Integration testing config to run properly

* Finilize unit tests and full coverage

Co-authored-by: Lewis Daly <lewisdaly@me.com>

* Feature/1180 enhance get settlement windows by (#238)

* Added code changes to DAO and handler to include settlementwindow content

* Added code changes to DAO and handler to include settlementwindow content

* Added code changes to unit test to increase code coverage

* Changed code to fix the integration error

* Code review changes : added  SettlementWindowContentModel.getBySettlementWindowId function. Unit tests are still failing

* Code review changes : Added unit test and fixed unit tests to increase code coverage.

* Code review II : Removed settlement window id from response object and added settlement id to it.

* Trigger a rebuild. Previous commit failed due to internet failure

* Updated swagger definition with the settlementId as integer on the settlementWindowContent

* Fixed vulnerabilities

* feature/1211 Auto position reset (#240)

* Auto position reset functionality

* Re-run integration tests

* Use newest central-ledger snapshot release for integration tests

* feature/1209 Restrict Create Settlement (#249)

* Forbid GROSS/IMMEDATE models, when creating new settlement

* Corrected typo as per PR request

* Feature/926 enhanced get settlement windows by params (#254)

*  feature/926-EnhancegetSettlementWindowsByParams

 - Enhanced getSettlementWindowsByParams to query with currency param
 - Updated the response object to include content

*  feature/926-EnhancegetSettlementWindowsByParams

 - Enhanced getSettlementWindowsByParams to query with currency param
 - Updated the response object to include content

*  feature/926-EnhancegetSettlementWindowsByParams

 - Enhanced getSettlementWindowsByParams to query with currency param
 - Updated the response object to include content

* Added async-retry

* - Update the facade to be able to query using currency
- removed the caret sign ^ from package.json

* - Trigger rebuild

* Prepare version for PR against master

* Trigger circle CI re-run

* Downgrade @mojaloop/central-services-database due to integration tests failure

* Address PR review request and update dependencies

Co-authored-by: deonbotha <deon.botha@modusbox.com>
Co-authored-by: lazolalucas <lazolalucas@users.noreply.github.com>
Co-authored-by: Lewis Daly <lewis@vesselstech.com>

* Fix/1107 circleci deploy (#261)

* update deploy config, bump package

* bump package version

* update hapi to 18.4.1

* Settlement v2 (#271)

* feature/1095 Close Settlement Window Changes (#220)

* Refactor scripts tree structure

* Dependencies upgrade

* Changed server setup and init. Registered Settlement Window Handler. Added CLI handler management. Shortened {id} paths. Window to PROCESSING state. Settlement window producer. Settlement window consumer. Default config added. Updated package.json scripts

* Added broker service health check

* SettlementWindowHandler ErrorHandling and async-retry

* Fix unit tests. Coverage fails at 91.32%

* SettlementWindowHandler Processing

* Fix integration tests

* Switched the latest release of central-services-shared

* Added unit test for API index.js . Code coverage now 89.5 percent

* Removed unnecessary commented lines from test

* Added unit tests for lib/healthcheck

* feature/1096 Create Settlement Changes #1 (#224)

* Changed swagger definition

* Settlement model validation. Unit tests fail

* select distinct

* Settlement window content validation. Fixed unit tests

* Deleted code to fix the two plugin issues and unit test for Handler - index.js

* feature/1097 Create Settlement Changes #2 (#225)

* Implemented inserts (not tested). Changed response definition. Unit tests fail

* Generate response. Validate proper implementation. Disable failing unit tests to be adjusted

* feature/1099 Update Settlement by ID Changes (#229)

* Implement updateSettlementByIdChanges enhancement

* Entire settlement process verified using various scenarios. Corrections made where applicable

* feature/1165 Unit tests for central-settlement part1

* Completed the unit test for register handlers code.

* Domain settlement windows close , added unit test

* Added more unit testing code to the settlement  windows models facade

* Added unit tests and fixed existing ones  to cover unhappy lines in process

* Added unit tests to shared/setup to cope with the service types

* Added unit test for shared setup : handler service type - and run handler true without any modules.

* Added unit test for settlement window with a handler list

* Added unit test to increase code coverage for settlement window facade

* Add unit test testing the settlement window state "not Processing"

* Added unit test to roll back settlement window facade when error occurs

* Added unit test on process to cover rollback on critical error and updated the version on central services shared to "8.8.2",

* Added unit testcode to close window

* Fixed the knex raw and .join isn't a function errors

* Changes:

- Added a unit test file and unit tests for SettlementWindow handler
- Made some fixes on the SettlementWindow handler

* Added last unit test on the facade. the tests are being ran in isolation still.

* Added last knex builder stubs to facade unit tests

* Combined the Stubs for the facade

* Worked on branches to increase covereage

Co-authored-by: lazolalucas <lazolalucas@users.noreply.github.com>

* feature/1100 Settlement By Currency Wrap Up (#231)

* Fixed and extended integration testing for settlement-v2

* Add anchore summary report upload, bump package version to 8.8.0 (#230)

* Full coverage for domain/settlement/index & models/lib/enums

* Full coverage for inculded scripts

* Integration testing config to run properly

* Finilize unit tests and full coverage

Co-authored-by: Lewis Daly <lewisdaly@me.com>

* Feature/1180 enhance get settlement windows by (#238)

* Added code changes to DAO and handler to include settlementwindow content

* Added code changes to DAO and handler to include settlementwindow content

* Added code changes to unit test to increase code coverage

* Changed code to fix the integration error

* Code review changes : added  SettlementWindowContentModel.getBySettlementWindowId function. Unit tests are still failing

* Code review changes : Added unit test and fixed unit tests to increase code coverage.

* Code review II : Removed settlement window id from response object and added settlement id to it.

* Trigger a rebuild. Previous commit failed due to internet failure

* Updated swagger definition with the settlementId as integer on the settlementWindowContent

* Fixed vulnerabilities

* feature/1211 Auto position reset (#240)

* Auto position reset functionality

* Re-run integration tests

* Use newest central-ledger snapshot release for integration tests

* feature/1209 Restrict Create Settlement (#249)

* Forbid GROSS/IMMEDATE models, when creating new settlement

* Corrected typo as per PR request

* Feature/926 enhanced get settlement windows by params (#254)

*  feature/926-EnhancegetSettlementWindowsByParams

 - Enhanced getSettlementWindowsByParams to query with currency param
 - Updated the response object to include content

*  feature/926-EnhancegetSettlementWindowsByParams

 - Enhanced getSettlementWindowsByParams to query with currency param
 - Updated the response object to include content

*  feature/926-EnhancegetSettlementWindowsByParams

 - Enhanced getSettlementWindowsByParams to query with currency param
 - Updated the response object to include content

* Added async-retry

* - Update the facade to be able to query using currency
- removed the caret sign ^ from package.json

* - Trigger rebuild

* Prepare version for PR against master

* Trigger circle CI re-run

* Downgrade @mojaloop/central-services-database due to integration tests failure

* Address PR review request and update dependencies

* Updated dependancy

* Another test for integration tests

* Feature/1241 get settlements by params to include currency (#268)

* Re-do code changes to the updated settlements v2

* Added async-retry

* Remove caret in package.json

* Fixed the filtering on the settlement window(s) per settlement id, added unit test

* Fixed the filtering on the settlement window(s) per settlement id, added unit test

* Fixed vulnerabilities

* Removed the settlement model line in the response object

* Removed the settlement model line in the response object

* update central ledger

* Fix vulnerability

* attempt to fix vulnerability

* Updated Happi to version 19.1.1

* Fixed the filtering on the settlement window(s) per settlement id, added unit test

* Crazy shit happening

* test commit

* Fixed code review changes

* Re-trigger pull request

* Revert Recreate DB script

* Updated Hapi to LTS version

* * Fixed get settlement by params
* Included content on the response object

* * Fixed Circle ci tests failing

* Trigger a rebuild

* Removed cache for dependencies under unit test/coverage

* Updated circle ci config.yml

* Updated circle ci config.yml

Co-authored-by: deonbotha <deon.botha@modusbox.com>

* Enhance central-settlement : Return settlement window content for every settlement window when getting settlements by id. (#263)

* Re-do code changes to the updated settlements v2

* Added async-retry

* Remove caret in package.json

* Fixed the filtering on the settlement window(s) per settlement id, added unit test

* Fixed the filtering on the settlement window(s) per settlement id, added unit test

* Fixed vulnerabilities

* Removed the settlement model line in the response object

* Removed the settlement model line in the response object

* update central ledger

* Fix vulnerability

* attempt to fix vulnerability

* Updated Happi to version 19.1.1

* Fixed the filtering on the settlement window(s) per settlement id, added unit test

* Crazy shit happening

* test commit

* Fixed code review changes

* Re-trigger pull request

* Revert Recreate DB script

* Updated Hapi to LTS version

* Added Neal's code review changes for pull request 263

* Update vulnerability issue

* Replaced the recursive delete object logic by a "map over"

* Ignore the vulnerablity rewire > eslint > espree > acorn for a week

Co-authored-by: Georgi Georgiev <georgi.georgiev@modusbox.com>
Co-authored-by: Deon Botha <darkwingduck@Deons-MacBook-Pro.local>
Co-authored-by: lazolalucas <lazolalucas@users.noreply.github.com>
Co-authored-by: Lewis Daly <lewisdaly@me.com>

* Fixed release issues(#272)

Updated package.json with the version to 9.3.0
Updated circle ci config.yml

* Fixed Dockerfile to have the correct run command for the new module structure (#274)

Co-authored-by: Neal Donnan <neal.donnan@modusbox.com>

* Added updated Mojaloop license (#247)

**Force merging as this is a license change only**

* Feature/1223 anchore policy (#292)

* Add custom mojaloop policy for evaluating anchore-cli scans

* run audit resolver, and ignore issues for devDependencies

* updated central-services dependencies (#294)

Co-authored-by: Valentin <valentin.genev@modusbox.com>

* Release/v9.5.0 (#295)

* ignoring some dependencies updates due to failing tests

* sorted contribs list alphabetically

Co-authored-by: Valentin <valentin.genev@modusbox.com>

* Updated versions for error-handler, etc... (#302)

* Updated versions for error-handler, etc...

* Touched file

* Touch to retrigger build

* Fixed typo

* Update to package.json

* Added JWS tag

* Changes required to get integration tests working

* Feature/otc300 consume commit message (#303)

* Added handler to monitor topic-notification-event

* Added handler to monitor topic-notification-event

* Added more code to break out vars from the msg on the notification topic

* Finalize code to break out vars from the msg on the notification topic

* Restructured code in the handler

* Renamed fulfill to fulfil

* Added initial code in the Domain to update the DB

* Added Knex version of SQL statement (Promise pending error still)

* Added more knex statements for the changed SQL from Micheal

* Fixed the bindings error

* Fixed the bindings error again

* Add facade and domain code

* Added Error handling

* Fixed index.js

* Removed unwanted code

* Updated the handler register unit test

* Fixed inner select error that magically started to appear

* Added the status parameter

* Added code to unit test transferfulfil facade

* Add more code to facade unit test

* Add unit test for domain/index.js

* Add unit test for domain/index.js

* Added unit tests to the handler

* Added more unit tests to transferfulfil handler

* Full code coverage achieved on the transferfulfil handler

* Removed unit test on facade. TBD later

* updated dependancies

* Changed the port in default.json

* Resolved vulnerabilities

* Made some depnedancy update changes

* Resloved vulnerabilities

* Increased codee coverage on branches to 100% for transferFulfil handler

* Fixed issue with Knex

* Added filter for OTC498

* Renamed functions as per code review request

* Fixed function name chnages in the unit tests

* Added changes to facade unit test

* Added code review change as requested by Rajiv

* Added Ignores for the failing unit test on the facade

* Added ignores for failing test

* Added config changes for python3 dependancy

* Feature/otc300 consume commit message (#305)

* Added handler to monitor topic-notification-event

* Added handler to monitor topic-notification-event

* Added more code to break out vars from the msg on the notification topic

* Finalize code to break out vars from the msg on the notification topic

* Restructured code in the handler

* Renamed fulfill to fulfil

* Added initial code in the Domain to update the DB

* Added Knex version of SQL statement (Promise pending error still)

* Added more knex statements for the changed SQL from Micheal

* Fixed the bindings error

* Fixed the bindings error again

* Add facade and domain code

* Added Error handling

* Fixed index.js

* Removed unwanted code

* Updated the handler register unit test

* Fixed inner select error that magically started to appear

* Added the status parameter

* Added code to unit test transferfulfil facade

* Add more code to facade unit test

* Add unit test for domain/index.js

* Add unit test for domain/index.js

* Added unit tests to the handler

* Added more unit tests to transferfulfil handler

* Full code coverage achieved on the transferfulfil handler

* Removed unit test on facade. TBD later

* updated dependancies

* Changed the port in default.json

* Resolved vulnerabilities

* Made some depnedancy update changes

* Resloved vulnerabilities

* Increased codee coverage on branches to 100% for transferFulfil handler

* Fixed issue with Knex

* Added filter for OTC498

* Renamed functions as per code review request

* Fixed function name chnages in the unit tests

* Added changes to facade unit test

* Added code review change as requested by Rajiv

* Added Ignores for the failing unit test on the facade

* Added ignores for failing test

* Added Config.yml chnges for Python 3 depnedancy

* deleted apk -v --purge del py-pip line from config.yml

* Feature/otc300 consume commit message (#306)

* Added handler to monitor topic-notification-event

* Added handler to monitor topic-notification-event

* Added more code to break out vars from the msg on the notification topic

* Finalize code to break out vars from the msg on the notification topic

* Restructured code in the handler

* Renamed fulfill to fulfil

* Added initial code in the Domain to update the DB

* Added Knex version of SQL statement (Promise pending error still)

* Added more knex statements for the changed SQL from Micheal

* Fixed the bindings error

* Fixed the bindings error again

* Add facade and domain code

* Added Error handling

* Fixed index.js

* Removed unwanted code

* Updated the handler register unit test

* Fixed inner select error that magically started to appear

* Added the status parameter

* Added code to unit test transferfulfil facade

* Add more code to facade unit test

* Add unit test for domain/index.js

* Add unit test for domain/index.js

* Added unit tests to the handler

* Added more unit tests to transferfulfil handler

* Full code coverage achieved on the transferfulfil handler

* Removed unit test on facade. TBD later

* updated dependancies

* Changed the port in default.json

* Resolved vulnerabilities

* Made some depnedancy update changes

* Resloved vulnerabilities

* Increased codee coverage on branches to 100% for transferFulfil handler

* Fixed issue with Knex

* Added filter for OTC498

* Renamed functions as per code review request

* Fixed function name chnages in the unit tests

* Added changes to facade unit test

* Added code review change as requested by Rajiv

* Added Ignores for the failing unit test on the facade

* Added ignores for failing test

* Added Config.yml chnges for Python 3 depnedancy

* deleted apk -v --purge del py-pip line from config.yml

* Added missing | for command in config.yml

* Updated dependencies for issue: https://github.com/mojaloop/project/issues/1378 (#308)

* Fix CircleCi/Python (#309)

* Fixed cache issue with checksum calculation (#310)

* Feature/301 enhance close settlement window (#307)

* Added handler to monitor topic-notification-event

* Added handler to monitor topic-notification-event

* Added more code to break out vars from the msg on the notification topic

* Finalize code to break out vars from the msg on the notification topic

* Restructured code in the handler

* Renamed fulfill to fulfil

* Added initial code in the Domain to update the DB

* Added Knex version of SQL statement (Promise pending error still)

* Added more knex statements for the changed SQL from Micheal

* Fixed the bindings error

* Fixed the bindings error again

* Add facade and domain code

* Added Error handling

* Fixed index.js

* Removed unwanted code

* Updated the handler register unit test

* Fixed inner select error that magically started to appear

* Added the status parameter

* Added code to unit test transferfulfil facade

* Add more code to facade unit test

* Add unit test for domain/index.js

* Add unit test for domain/index.js

* Added unit tests to the handler

* Added more unit tests to transferfulfil handler

* Full code coverage achieved on the transferfulfil handler

* Removed unit test on facade. TBD later

* updated dependancies

* Changed the port in default.json

* Resolved vulnerabilities

* Made some depnedancy update changes

* Resloved vulnerabilities

* Increased codee coverage on branches to 100% for transferFulfil handler

* Fixed issue with Knex

* Added filter for OTC498

* Renamed functions as per code review request

* Fixed function name chnages in the unit tests

* Added changes to facade unit test

* Added code review change as requested by Rajiv

* Added Ignores for the failing unit test on the facade

* Added ignores for failing test

* Added Config.yml chnges for Python 3 depnedancy

* deleted apk -v --purge del py-pip line from config.yml

* Added missing | for command in config.yml

* Added knex statement into settlement handlet facade and index

* Added failure conditions

* Added last code changes

* Increased code coverage with unit tests

* Pushed code coverage up to 100% for the added code

* Updated dependancies

* Removed dependency cache line in ci/config yaml

* Added processing of transfer fulfil message

* Updating integration test config

* Added changes from Neals branch

* Updated settlement integration tests to create settlement models before transfers

* Update package.json withh --production switches

Co-authored-by: Neal Donnan <neal.donnan@modusbox.com>

* Feature/otc 390 implement interchange fee calculation (#311)

* Initial commit

* Initial commit

* Added get transaction object feature

* Updated unit tests

* Added get transaction object feature tests

* Updated tests

Co-authored-by: Neal Donnan <neal.donnan@modusbox.com>

* Added scripts directory in Dockerfile

* Fixed persisting of ledger entries

* Changed rounding of interchange fee calculation to 2 decimals, half up

* Fixed integration tests

* fix for integration tests failing on latest version of simulator (#312)

* Updated test images for ml-api-adapter and central-ledger for integration tests to the latest.

* Made the loading of script engine scripts dynamic

* Upgraded central-services-shared library to 10.5.3, bump version (#313)

Co-authored-by: Claudio <claudio.viola@happycog.com>

* Feature/otc 624 rework central settlement integration test set up (#314)

* OTC-624: refactoring integration tests initial data setup

* OTC-624 fixing and refactoring cleaning up

* OTC-624 refactoring and cleaning up test setup

* Ignoring package updates

* OTC-624 reverting back merge conflict change

* OTC-624 renamed scenario and fixing axios version

* OTC-624 renamed folder due to order of tests

* Feature/otc658 rework cgs handlers (#316)

* Added transferParticipantStateChange to cli

* Implemented name change transferParticipantStateChange to transfeSettlement

* Added code to handlers/index.js to increase code coverage

* Commented to be database transaction demarcation

* FIX TransferParticipantStageChange wrong table rename

* Moving script loader to utils

* OTC-676 refactoring and creating transactions

* OTC-676 added scriptsEngine unit tests

* OTC-676 refactoring

* Added missing export in facade

* Fixing tests regex in package.json

* fix lint

* Commit:

- Added unit tests for the scriptsLoader.js
- Renamed transferParticipantStateChange to transferSettlement in the unit tests

* Using apis to create settlement models

* Moved the logic for retrieving script config to a new function : retrieveScriptConfiguration

* OTC: 375 - Fixed swagger def title

* OTC-715 - Implement GitLab CI/CD on the central-settlement TIPS project.

* Removing CGS settlement model

* Updated helm dependency update script

* Fixed docker-compose setup

* Started to update new transfer settlement knexes

* Cleaned up the updateTransferSettlement code.

* Fixed models sqls statement according to Michaels spec

* Temporary change to pipeline to allow deployment to test OTC-649

* Change the sign calculating the difference between PP.value and TR.amount when updating position

* #1484: Update FSPIOP API version (#321)

* Update FSPIOP API version

* Update package version and resolve audit issues

* Temporarily resolve audit issues

* Resolve audit issues

* Reset package versions

* Reset swagger version

* Temporarily disable docker images removal after integration tests

* Fix integration test config for central-ledger

* Resolve audit issues. Restore integration runner

* Temporarily disable docker images removal after integration test

* Update dependencies, resolve audit issues, revert central-services-database to v9.2.0

* Revert hapi-openapi to v1.2.6

* Restore integration runner

* Update FSPIOP API version

* Bump basePath to v2, update tests

* Revert "Temporary change to pipeline to allow deployment to test OTC-649"

This reverts commit 0c97928a22138741e06854264574d10e04049546

* Delete StubInsertPairOfLedgerEntries.js

* OTC-762 setting up jest

* OTC-762 updating local config

* OTC-762 attempting message push

* OTC-762 sending message on kafka queue

* OTC-762 adding transfer before running test

* OTC-762 removed commented code

* Added await for add ledger entry function and fixed CGS insert query for transferParticipant

* OTC-762 updating query logic for participantPosition records

* OTC-762 polishing

* OTC-762 formatting

* OTC-762 only adding fees for committed transfers

* OTC-762 adding more error handling

* OTC-762 removing calls brackets for commit function, unknown error logged

* Fixed a bug in Knex statement and added chnges to knex as per story OTC649

* OTC-777 added unit tests for insert Ledger entry

* Unit test update Caudio

* OTC649 test mocking update

* Claudio added the correct code to cover the nested knex functions

* Add debug output to gitlab-ci.yml

* Update README.md

* Resolve audit issues (#322)

* Fixed some unit tests and increased coverage

* Updated dependencies

* Run unit test coverage in Gitlab pipeline

* Removed the insert of a SETTLED transfer state record

* Move kubernetes service account configuration into same step as deployment

* Updating dependency

* Update README.md

* Update README.md

* Added try catch to scripts loader function

* Fixed unit test

* Temporary move of scripts

* Fixed unit test coverage

* Added more clever way to load scripts

* Fixed settlement window content response for multiple windows

* Added check for liquidity check before calculating liquidity and adjusting NET_DEBIT_CAP

* Added unit test for liquidity check

* Added filtering for settlementWindowContent when closing settlement windows to only add entries for ledgerAccountTypes linked to NET settlement models

* #1885: Update API documentation (#330)

* Update API documentation

* Fix audit issues

* Add unit tests

* Fix integration test

* Resolve audit issues

* Fix audit

* Remove hapi-swagger

* Update deps

* Minor fix

* docker-compose to use personal dockerhub

* test fix

* chore: update license file (#329)

* [Security] Bump urijs from 1.19.2 to 1.19.5 (#331)

Bumps [urijs](https://github.com/medialize/URI.js) from 1.19.2 to 1.19.5. **This update includes a security fix.**
- [Release notes](https://github.com/medialize/URI.js/releases)
- [Changelog](https://github.com/medialize/URI.js/blob/gh-pages/CHANGELOG.md)
- [Commits](https://github.com/medialize/URI.js/compare/v1.19.2...v1.19.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* added check for settlement model in transfersettlement handler

* feat: Continious Gross Settlement

* dependencies update

* deleted gitlab-ci.yaml

Co-authored-by: Miguel de Barros <miguel@debarros.me>
Co-authored-by: Georgi Georgiev <georgi.georgiev@modusbox.com>
Co-authored-by: HenkKodde <36304517+HenkKodde@users.noreply.github.com>
Co-authored-by: Rajiv Mothilal <rajivmothilal@gmail.com>
Co-authored-by: Sam <elnyry@users.noreply.github.com>
Co-authored-by: shashi165 <33355509+shashi165@users.noreply.github.com>
Co-authored-by: Georgi Georgiev <g.georgi@gmail.com>
Co-authored-by: Lewis Daly <lewisdaly@me.com>
Co-authored-by: Lewis Daly <lewis@vesselstech.com>
Co-authored-by: Juan Correa <gibaros@users.noreply.github.com>
Co-authored-by: Steven Oderayi <oderayi@gmail.com>
Co-authored-by: deonbotha <deon.botha@modusbox.com>
Co-authored-by: lazolalucas <lazolalucas@users.noreply.github.com>
Co-authored-by: Deon Botha <darkwingduck@Deons-MacBook-Pro.local>
Co-authored-by: ndonnan <neal.donnan@gmail.com>
Co-authored-by: Neal Donnan <neal.donnan@modusbox.com>
Co-authored-by: Valentin <valentin.genev@modusbox.com>
Co-authored-by: Adrian Enns <ennsak@gmail.com>
Co-authored-by: vijayg10 <33152110+vijayg10@users.noreply.github.com>
Co-authored-by: Claudio <claudio.viola@happycog.com>
Co-authored-by: Lazola Lucas <lazola.lucas@modusbox.com>
Co-authored-by: Keith Douglas <keith.douglas@modusbox.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Shashikant Hirugade <shashi.pioneer@gmail.com>

* docker-compose.yaml and integration-runner.env fixed

* addressed some pr comments

* fix: vulnerability checks

* fix: updated central-ledger dependency to address security vunlerability

* fix: dependencies update

Co-authored-by: Miguel de Barros <miguel@debarros.me>
Co-authored-by: Georgi Georgiev <georgi.georgiev@modusbox.com>
Co-authored-by: HenkKodde <36304517+HenkKodde@users.noreply.github.com>
Co-authored-by: Rajiv Mothilal <rajivmothilal@gmail.com>
Co-authored-by: Sam <elnyry@users.noreply.github.com>
Co-authored-by: shashi165 <33355509+shashi165@users.noreply.github.com>
Co-authored-by: Georgi Georgiev <g.georgi@gmail.com>
Co-authored-by: Lewis Daly <lewisdaly@me.com>
Co-authored-by: Lewis Daly <lewis@vesselstech.com>
Co-authored-by: Juan Correa <gibaros@users.noreply.github.com>
Co-authored-by: Steven Oderayi <oderayi@gmail.com>
Co-authored-by: deonbotha <deon.botha@modusbox.com>
Co-authored-by: lazolalucas <lazolalucas@users.noreply.github.com>
Co-authored-by: Deon Botha <darkwingduck@Deons-MacBook-Pro.local>
Co-authored-by: ndonnan <neal.donnan@gmail.com>
Co-authored-by: Neal Donnan <neal.donnan@modusbox.com>
Co-authored-by: Valentin <valentin.genev@modusbox.com>
Co-authored-by: Adrian Enns <ennsak@gmail.com>
Co-authored-by: vijayg10 <33152110+vijayg10@users.noreply.github.com>
Co-authored-by: Claudio <claudio.viola@happycog.com>
Co-authored-by: Lazola Lucas <lazola.lucas@modusbox.com>
Co-authored-by: Keith Douglas <keith.douglas@modusbox.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Shashikant Hirugade <shashi.pioneer@gmail.com>
vgenev added a commit that referenced this pull request Feb 9, 2021
* Feature/#1945 cgs2 (#2)

* changes to circleci config

* fixing the circleci thing

* coverage scripts fixes into the package.json file

* added license

* testing circleci (#8)

* Readme slightly updated

* Slight changes to circleCI config yaml

* Changes to circleCI config in coverage tests section

* Testing circleci

* Fixed circleci format issue

* Initial changes as suggested by DA review added to API

* Added unit tests

* Added succesful unit test for /settlementWindows

* Move Happi server as an single instance in the double verb handler

* Added unit tests for Operations on /settlementWindows/{settlementWindowId}

* Added more unit tests

* Added last unit tests

* Increased unit test to 100 percent code coverage

* Added Happi pagination plugin

* Removed console.log statements and added central services shared logging

* Added licence block

* Remove zipped swagger file as per Miguel's review

* Added PR review changes , test coverage and new unit tests

* Added Logger to handlers

* Moved unit tests to unit test directory

* Added POST operation to settlements/

* Remove blnk unit tests created by yeoman

* Fixed incorrect path in handler

* delete swagger-158.json

* Added Dockerfile, and fixed package.json unresolved merge conflict issue. (#12)

* Added Dockerfile, and fixed package.json unresolved merge conflict issue.

1. Fixed package.json unresolved merge conflict issue.
2. Added Dockerfile
3. Added some missing dependencies in package.json for production execution

* added myself as a contributor :D

* Moved swagger from config to interface folder, removed settlemenAPI.json as its a duplicate of swagger.json

* Removed settlementAPI.json from docker file

* Corrections to swagger file (#13)

* Introduce corrections to swagger file
* createSettlement
* Updated createSettlement
* Reverting back version change as per PR review

* Feature/DAO and API for settlementWindows (#14)

* WIP added GET for settlementWindowId

* WIP added handler for GET settlementWindow by id; Added plugin for logging based on central-services.Logger

* WIP added enums loading from Db on server startup

* WIP load ENUMS to server.app.enums

* added domain layer and changed the code structure

* WIP slight change

* WIP

* WIP getSettlementWindow by filter - DONE

* functionality finished

* removed unnecessary then

* some small changes

* WIP

* settlementEventTrigger is done

* Added settlemnts get by params endpoint

* Added settlemnts get by params endpoint

* wip

* merged with docker file

* WIP

* WIP

* settlementWindow getById is done

* settlementWindow getByParams & settlementWindow facade get by list of Ids are done

* settlementWindow Close is done

* wip

* swagger deffinition aligned to the latest changes and small naming issue fixed

* Added get settlemntById endpoint up to the facde

* updated settlementWindows to latest changes

* Added update settlements by ID (Put) up to dao

* get settlement by id

* Test get settlements by Id made changes to facde

* WIP

* get settlement by participantId and accountId

* added a file

* DAO does not throw now, if object not found

* settlementWindows tested

* fixed wrong version change in conflict resolution

* Feature/dao and api (#15)

* WIP added GET for settlementWindowId

* WIP added handler for GET settlementWindow by id; Added plugin for logging based on central-services.Logger

* WIP added enums loading from Db on server startup

* WIP load ENUMS to server.app.enums

* added domain layer and changed the code structure

* WIP slight change

* WIP

* WIP getSettlementWindow by filter - DONE

* functionality finished

* removed unnecessary then

* some small changes

* WIP

* settlementEventTrigger is done

* Added settlemnts get by params endpoint

* Added settlemnts get by params endpoint

* wip

* merged with docker file

* WIP

* WIP

* settlementWindow getById is done

* settlementWindow getByParams & settlementWindow facade get by list of Ids are done

* settlementWindow Close is done

* wip

* swagger deffinition aligned to the latest changes and small naming issue fixed

* Added get settlemntById endpoint up to the facde

* updated settlementWindows to latest changes

* Added update settlements by ID (Put) up to dao

* get settlement by id

* Test get settlements by Id made changes to facde

* WIP

* get settlement by participantId and accountId

* added a file

* DAO does not throw now, if object not found

* settlementWindows tested

* Changes for 6.2.1 -20180830@15H31.

* Settlements - 20180830@22.57.

* fixes for sequence diagram 6.2.4.

* fixes and additions for 6.2.5 but not completed

* added comment

* fixed wrong version change in conflict resolution

* changer for 6.2.5 not completed

* 6.2.1 and 6.2.4 working a little better just some data inconsistency

* trigger sort of working well

* Feature/414 416 DAO and API (#16)

* Applied standard --fix
* Renamed db-model to models
* Manual linter fixes
* Added license information where missing

* Feature/414 416 DAO and API (#17)

* Finished 6.2.2.

* Current dev (#18)

* WIP added GET for settlementWindowId

* WIP added handler for GET settlementWindow by id; Added plugin for logging based on central-services.Logger

* WIP added enums loading from Db on server startup

* WIP load ENUMS to server.app.enums

* added domain layer and changed the code structure

* WIP slight change

* WIP

* WIP getSettlementWindow by filter - DONE

* functionality finished

* removed unnecessary then

* some small changes

* WIP

* settlementEventTrigger is done

* Added settlemnts get by params endpoint

* Added settlemnts get by params endpoint

* wip

* merged with docker file

* WIP

* WIP

* settlementWindow getById is done

* settlementWindow getByParams & settlementWindow facade get by list of Ids are done

* settlementWindow Close is done

* wip

* swagger deffinition aligned to the latest changes and small naming issue fixed

* Added get settlemntById endpoint up to the facde

* updated settlementWindows to latest changes

* Added update settlements by ID (Put) up to dao

* get settlement by id

* Test get settlements by Id made changes to facde

* WIP

* get settlement by participantId and accountId

* added a file

* DAO does not throw now, if object not found

* settlementWindows tested

* Changes for 6.2.1 -20180830@15H31.

* Settlements - 20180830@22.57.

* fixes for sequence diagram 6.2.4.

* fixes and additions for 6.2.5 but not completed

* added comment

* fixed wrong version change in conflict resolution

* changer for 6.2.5 not completed

* 6.2.1 and 6.2.4 working a little better just some data inconsistency

* trigger sort of working well

* fixed get of index list of settlementParticipantCurrency

* changes need to figure out why insert for settlementTransferParticipant doesnt work correctly

* trigger event fixed

* Changes for 3.5.0 release (#19)

* Changes for 3.5.0 release

- Fixed issue with SQL not returning current settlementWindows due to the currentDate comparison of `>` which should be `>=`
- Updated version from 1.0.0 to 3.5.0 to align to our release versioning
- Updated Dockerfile for the current directory and ports

* Added a quick config to make deployments easier

* Fixed issue with Docker file

* Fixed dockerfile, and re-aligned config

* Feature/414 416 dao and api (#20)

* Merging functionality 6.2.2 & 6.2.5. done by @ggrg

* Feature/439 Fix updateSettlementById (#21)

* Resolved first two tasks
* Move all to single transaction and sync with design
* cloneDeep rename

* Added missing changes for default.json (#22)

* Feature/445 Unit Tests for central-settlement (#23)

* Initialize test/
* Dummy .test.js files

* Feature/445 Unit Tests for central-settlement (#24)

* Initialize test/

* Dummy .test.js files

* Restored test/data/ and added rc&sinon modules

* istanbul: 1.1.0-alpha.1 & .istanbul.yml

* Resolved most issues requested by PR review

* Origin/feature/#438 remove date check (#26)

* Feature/#438RemoveDateCheck

* Feature/#438RemoveDateCheck

* Feature/445 Unit Tests for central-settlement (#30)

* Initialize test/

* Dummy .test.js files

* Restored test/data/ and added rc&sinon modules

* istanbul: 1.1.0-alpha.1 & .istanbul.yml

* Resolved most issues requested by PR review

* putById fully covered and tested

* getById and getByParams fully covered and tested

* models/settlement/facade.test.js completed

* Unit tests added

* Settlement Service unit testing completed

* Settlement Window Service unit testing completed

* Feature/449 Unit Tests for central-settlement II (#31)

* participantCurrency & settlement model unit tests
* Unit tests added
* Added unit tests
* Finished unit tests for story 449

* Feature/#445 unit tests for central settlement i (#32)

* settlementWindow handler tested

* handlers are done

* merged develop and handlers tests; coverage 100%

* Feature/#454 investigate settlements api failure (#33)

* fixed few bugs found. try-catch and log all the things. coverage maxed out.

* Incrementing version for central-settlement (#34)

* Fix for issues in building docker image (#35)

* Incrementing version for central-settlement

* Changing docker command to use 'test' folder instead

* Fixed bugs 474 & 480 (#36)

* Fixed bugs 474 & 480
* Fixed unit tests and pushed coverage to 100%

* Added pre-commit hooks (#37)

* Increment version (#38)

* Incrementing version for central-settlement

* Renamed 'test' folder to 'tests' and updated corresponding references in pakage.json

* Reverting the name back to 'test' for uniformity but changing docker command to use 'test' folder instead

* Incrementing to 3.7.0 version

* Feature/461 Settlement Transfer - Prepare & Commit (#40)

* Settlement transfer prepare and commit init
* Finished settelement transfer prepare & commit. Unit tests in progress
* Finished settlement transfer prepare & commit
* Added unit tests and coverage to 100%

* Incrementing version to 3.7.1 (#41)

* Incrementing version of central-settlement to 3.7.1-snapshot

* fixes for circle ci builds (#42)

* fixes for circle ci builds

* removal of backslash

* Feature/#501reformat error message (#43)

* WIP

* error reformatted

* fixed error format

* removed caret and tilde and upgraded package versions in package.json (#44)

* participantPosition update for settlement account (#45)

* Increment version 3.7.2 (#46)

* Incrementing version to 3.7.2

* added README and APIDefinition (#39)

* Incrementing version to 3.8.0 (#47)

* Incrementing version to 3.8.0

* Bugfix/491 Invalid Response for GetSettlementBySettlementParticipantAccount (#49)

* Fixed demo scripts to run again after changes in ml-api-adapter and central-ledger
* Fix settlementTransfer demo scripts
* Fix settlementTransfer demo scripts (#48)
* Utilise test scripts in sequence
* Implementation aligned to diagram, endpoint added, coverage 100

* Feature/528 risk managed settlement (#50)

* Implemented 6.2.1, 6.3.1 & 6.3.2. Unit test fail
* Implemented 6.3.3, 6.2.5. Unit tests fail
* Updated demo scripts & fixed issues with transfers. Unit tests fail
* Bugfix HMLNS position. Unit tests fail
* Added new lines at the end of the demo scripts. Unit tests fail
* Commented out variable startAfterParticipantPositionChangeId. Unit tests fail
* Fixed all Inspect Code errors and warnings. Unit tests fail
* Fix broken unit tests
* Demo prep
* Coverage to 98%
* Changes according to the review

* Feature/535 Settlement Transfer Abort (#51)

DA review requested change of settlement states

* Bugfix/526 Partial Validation (#52)

* Extended validation for createSettlement operation

* Hotfix for v3.10.0 release (#53)

* Hotfix for v3.10.0 release

- https://github.com/mojaloop/project/issues/539
- Added the package lock file

* - Updated shared lib to 4.1.0 to fix for https://github.com/mojaloop/project/issues/539

* Added HUB_PARTICIPANT config (#54)

* Feature/535 Settlement Transfer Abort Impl (#55)

* Altered /settlements/{id} endpoint to support abort
* Settlement transfer ABORT, part 1. Unit tests fail
* Fixed unit tests
* Prepared demo scripts, fixed minor bug
* Provide full coverage
* Removed .returning knex clause

* feature/481UpdateSettlementBySettlementParticipant

* Feature/566 Notifications for Position Updates (#57)

* Produce message to notificiation topic. Unit tests fail
* Fix code inaccuracy. Unit tests fail
* Remove unused code.
* Added stub for settlementTransferReserve
* Remove unused requires
* Reworked unit tests.
* Corrected unit tests and provide full tests coverage

* Update/update version 4.4.1 (#59)

* Updating version in package.json to 4.4.1

* changed the hub name to be loaded from default.json (#58)

* changed the hub name to be loaded from default.json instead of enums headers value

* config wrongly used

* Version change/upgrade to 5.1.0 (#60)

* Updating version to 5.1.0 for the next release

* Badges ! (#61)

Thanks to Miguel

* Fixed issue when closing unexisting window (#62)

* Version change/upgrade to 5.1.1 (#63)


* Incrementing version in package.json and adding badges (same as central-ledger)

* Feature/507 635 Integration Tests (#64)

* Init integration tests
* Finished populate admin test data
* Added settlements data prep integration tests
* Finished close settlementWindow
* SettlementTransfer to PS_TRANSFERS_RESERVED, no db checks
* Advanced integration tests to PS_TRANSFERS_COMMITTED
* Removed devDependency leaked-handles
* Finished integration and unit tests
* Update package.json and init integration-runner.sh
* Amendments to integration-runner
* integration-runner & circleci
* Enable all in integration-runner.sh
* Clean up integration-runner
* Changes as requested by rmothilal

* #610 announcement notifications (#65)

* Announcement Notifications for Slack channel. Resolve vulnerabilities.

* no message

* Restored package-lock.json file. Updated central-ledger dependency to 5.2.0 to resolve vulnerabilities.

* Increase version to 5.2.1

* Undo updates to .json package. Another team member is addressing the vulnerabilities currently.

* Included vulnerability updates.

* version to 5.2.0

* Feature/628 Node Upgrade (#66)

* Init node upgrade to v10
* Upgrade hapi, install standard, repair integration-runner
* Version to 5.2.1
* Upgrade to NodeJs runtime 10.x and upgrade all dependencies

* fixed the bug with database join (#67)

* fixed the bug with database join

* upgraded the version to 5.3.0

* Bugfix/714 Settlement Transfer Fulfilment Duplicate Check (#68)

* Fixed transferFulfilment issue and settlement ABORT failure. Unit tests fail
* swagger.json update and unit tests fix
* Fix coverage
* Bump up version for next release
* Updated package-lock
* reset cache
* Fix ml-api-adapter start failure

* Updated swagger.json version as referred by documentation (#69)

* Feature/724Db Object Exposed By src/lib

- src/models/index.js to src/lib/db.js

* hotfix/Fixed SQL Error output and improved coverage (#72)

* Fixed SQL Error output and improved coverage
* Updated version
* Restart CI workflow
* interrupt integration runner just before central-ledger health check

* feature/643 Integration Tests Failure (#73)

* Triggering circle CI
* Exit at the beginnizg of integration-runner.sh
* Added setup_remote_docker
* Removed setup_remote_docker
* docker ps
* multiple docker ps trace
* docker logs for central-ledger
* central-ledger no--rm
* Reverted integration-runner.sh and added centralledger-default.json
* remove exit after central-ledger start

* Change the base image to 10.15.3-alpine and optimize Dockerfiles (#74)

* Fix broken central-settlement tests (#77)

* Update central-settlement test runner for new health checks, update integration test config for central-ledger

Test integration tests with v6.2.1 simulator

Test integration tests with v6.2.2 simulator

Try extending timeout

playing around with Makefile config

debugging broken tests

debugging broken tests

change to demo simulator

Test with ml-api-adapter v6.2.1

test with central-ledger  v6.2.5

test with latest simulator

Test with v6.2.5 simulator, v6.3.0-snapshot for central-ledger

test with v7.1.0 central-ledger

Revert back to central-ledger v6.3.0-snapshot

test with ml-api-adapter v6.4.0

test with ml-api-adapter v7.1.0

Updating versions, adding logs to make config, fix double slash in the callback config

double check last working ml-api-adapter is v6.4.0

Update central-ledger default.json config

Fix the ml-api-adapter to use the simulator health check

Make the ml-api-adapter health endpoint point to the central-ledger

test again with latest simulator

Clean and tidy for PR

* Bump package version to 7.1.0, update dependencies

* run `npm audit fix`

* Fix imports for @hapi packages

* fix unit tests for updated imports

* Update catbox-memory to @hapi/catbox-memory

* Change sleepMilliseconds to 1 second to fix flaky integration tests on slower circleCI

* Feature/796 improve health checks (#79)

* 796 implemented new health check endpoint with db check

* finish unit tests for new HealthCheck

* start working on integration tests

* start working on better integration test runner

* Setting up docker-compose to help run integration tests interactively

* Working on local integration test running

* Update central-settlement test runner for new health checks, update integration test config for central-ledger

Test integration tests with v6.2.1 simulator

Test integration tests with v6.2.2 simulator

Try extending timeout

playing around with Makefile config

debugging broken tests

debugging broken tests

change to demo simulator

Test with ml-api-adapter v6.2.1

test with central-ledger  v6.2.5

test with latest simulator

Test with v6.2.5 simulator, v6.3.0-snapshot for central-ledger

test with v7.1.0 central-ledger

Revert back to central-ledger v6.3.0-snapshot

test with ml-api-adapter v6.4.0

test with ml-api-adapter v7.1.0

Updating versions, adding logs to make config, fix double slash in the callback config

double check last working ml-api-adapter is v6.4.0

Update central-ledger default.json config

Fix the ml-api-adapter to use the simulator health check

Make the ml-api-adapter health endpoint point to the central-ledger

test again with latest simulator

Clean and tidy for PR

* Bump package version to 7.1.0, update dependencies

* run `npm audit fix`

* Add setup integration test

* Fix imports for @hapi packages

* Add back health integration tests

* hacking the integration runner

* working on health check

* fixing health imports

* fix unit tests for updated imports

* Update catbox-memory to @hapi/catbox-memory

* Fix linter issues

* Fixing invalid integration tests

* feature/801-update-ci-license-and-audit (#80)

* Add npm-run-audit and license-scanner step to circleci config

* Ignore minor vulnerabilities

* Fixing up cache restore

* testing with removing defaults step

* Bugfix/894 896 hardening swagger interface (#81)

* Fixing issues described by #894 and #896
* Fix standard issues (auto + manual)

* #908 - Apply new FSPIOP error handling to central settlement code base (#83)

* Add onboarding page

* Update onboarding page per Lewis comments

* Issue #908 - Apply FSPIOP error handling

-update circlci config run cmd
-remove package-lock.json from .gitignore
-added nycrc.yml
-update package.json depdendencies and scripts
-update existing error handling with FSPIOPError framework
-update unit tests as required by update to existing error handling with FSPIOPError framework
-TODO - fix setup.test.js 2 unit tests commented out to perform commit and id.test.js 1 unit tests equal asserts commented out

* Update to Story #908

Updating the ml-api-adapter configuration for integration tests based in changes made in PI 7.3

* Update to Story #908

-fix setup.test.js unit tests

* Update to Story #908

-fix last broken unit test at handlers/settlements/{id}.tests.js
-remove a comment

* 915-Update error from internal to validation, package json versions

* Add --silent flag to npm run audit:check to ensure we print valid JSON, bump package version to 7.2.1 (#82)

* feature/904 Request Duplicate Check update (#96)

* Settlement transfer fulfilment insert update

* Fix standard and other issues

* Preparing snapshot release

* Bugfix/956 Settlements API errors format (#110)

* Registered server plugins and fixed getSettlemendBy Id error. Unit tests fail

* Change internal server errors to validation errors where applicable

* Fix unit tests and add ncu pre-commit hook

* Improve unit tests coverage

* Remove unnecessary export

* hotfix/Resolve Caching Issue

Change package.json to reset cache and set as public (#113)

* Updates to most dependencies, central-ledger still needs to be publis… (#142)

* Updates to most dependencies, central-ledger still needs to be published.
Hapi version is at 18.3.2 because of new joi changes that are breaking hapi openapi swagger import
Added new logger

* updated ml-api-adapter config integration test

* reverted to previous joi version

* updated ml-api integration test json

* updated dependency versions

* updated config that was missing and needed for new ml-api image

* tests now run but are failing because of a data issue

* updates to fix integration issues not working still

* central-ledger update

* 795-SetEndpointDescriptionAndUpdateSummary (#139)

* feature/952 Implement ML Number Library (#149)

* Implement MlNumber. Adjust tests. Fix integration-runner == issue. Upgrade deps. Bump up version
* Refactor to uppercase L in MLNumber
* Upgrade to latest ml-number

* Updated to use the latest central-services-database with a connection… (#157)

* Updated to use the latest central-services-database with a connection object
Updated dependencies and new central-ledger-dependency
Fixed tests

* change password for integration tests as per @ggrg request

* updated dependencies (#165)

* Issue934-FixSetEnvVarRCAsBooleanInsteadOfString-UpdateDepsPackageVer (#176)

* Issue934-FixSetEnvVarRCAsBooleanInsteadOfString-UpdateDepsPackageVer

* Issue934-AddParseStringInObjectDependencyAndUpdateDeps

* Issue934-ResolveVulnerabilityUpdateDependencies

* Feature/1003 container scan policy (#195)

* update all dependencies, bump package version to 8.5.0

* Update circleci to 2.1, work on anchore scanning and refactor

* fix circleci config

* add back the envs to the deploy step

* remove unneeded circleci config

* handle file based logging in Dockerfile, update dependencies (#199)

* Add anchore summary report upload, bump package version to 8.8.0 (#230)

* #1175: Upgrade to Node 12.16.0 LTS (#244)

* Update CircleCI and docker scripts to use Node 12.16.0 LTS
* Update dependencies and lock versions for hapi-related libraries. Resolve audit issue
* Bump version
* Fix integeration test
* Fix unit test
* Restore test npm script
* Restore integration dockerfile

* Settlement-v2 merge into master (#259)

* feature/1095 Close Settlement Window Changes (#220)

* Refactor scripts tree structure

* Dependencies upgrade

* Changed server setup and init. Registered Settlement Window Handler. Added CLI handler management. Shortened {id} paths. Window to PROCESSING state. Settlement window producer. Settlement window consumer. Default config added. Updated package.json scripts

* Added broker service health check

* SettlementWindowHandler ErrorHandling and async-retry

* Fix unit tests. Coverage fails at 91.32%

* SettlementWindowHandler Processing

* Fix integration tests

* Switched the latest release of central-services-shared

* Added unit test for API index.js . Code coverage now 89.5 percent

* Removed unnecessary commented lines from test

* Added unit tests for lib/healthcheck

* feature/1096 Create Settlement Changes #1 (#224)

* Changed swagger definition

* Settlement model validation. Unit tests fail

* select distinct

* Settlement window content validation. Fixed unit tests

* Deleted code to fix the two plugin issues and unit test for Handler - index.js

* feature/1097 Create Settlement Changes #2 (#225)

* Implemented inserts (not tested). Changed response definition. Unit tests fail

* Generate response. Validate proper implementation. Disable failing unit tests to be adjusted

* feature/1099 Update Settlement by ID Changes (#229)

* Implement updateSettlementByIdChanges enhancement

* Entire settlement process verified using various scenarios. Corrections made where applicable

* feature/1165 Unit tests for central-settlement part1

* Completed the unit test for register handlers code.

* Domain settlement windows close , added unit test

* Added more unit testing code to the settlement  windows models facade

* Added unit tests and fixed existing ones  to cover unhappy lines in process

* Added unit tests to shared/setup to cope with the service types

* Added unit test for shared setup : handler service type - and run handler true without any modules.

* Added unit test for settlement window with a handler list

* Added unit test to increase code coverage for settlement window facade

* Add unit test testing the settlement window state "not Processing"

* Added unit test to roll back settlement window facade when error occurs

* Added unit test on process to cover rollback on critical error and updated the version on central services shared to "8.8.2",

* Added unit testcode to close window

* Fixed the knex raw and .join isn't a function errors

* Changes:

- Added a unit test file and unit tests for SettlementWindow handler
- Made some fixes on the SettlementWindow handler

* Added last unit test on the facade. the tests are being ran in isolation still.

* Added last knex builder stubs to facade unit tests

* Combined the Stubs for the facade

* Worked on branches to increase covereage

Co-authored-by: lazolalucas <lazolalucas@users.noreply.github.com>

* feature/1100 Settlement By Currency Wrap Up (#231)

* Fixed and extended integration testing for settlement-v2

* Add anchore summary report upload, bump package version to 8.8.0 (#230)

* Full coverage for domain/settlement/index & models/lib/enums

* Full coverage for inculded scripts

* Integration testing config to run properly

* Finilize unit tests and full coverage

Co-authored-by: Lewis Daly <lewisdaly@me.com>

* Feature/1180 enhance get settlement windows by (#238)

* Added code changes to DAO and handler to include settlementwindow content

* Added code changes to DAO and handler to include settlementwindow content

* Added code changes to unit test to increase code coverage

* Changed code to fix the integration error

* Code review changes : added  SettlementWindowContentModel.getBySettlementWindowId function. Unit tests are still failing

* Code review changes : Added unit test and fixed unit tests to increase code coverage.

* Code review II : Removed settlement window id from response object and added settlement id to it.

* Trigger a rebuild. Previous commit failed due to internet failure

* Updated swagger definition with the settlementId as integer on the settlementWindowContent

* Fixed vulnerabilities

* feature/1211 Auto position reset (#240)

* Auto position reset functionality

* Re-run integration tests

* Use newest central-ledger snapshot release for integration tests

* feature/1209 Restrict Create Settlement (#249)

* Forbid GROSS/IMMEDATE models, when creating new settlement

* Corrected typo as per PR request

* Feature/926 enhanced get settlement windows by params (#254)

*  feature/926-EnhancegetSettlementWindowsByParams

 - Enhanced getSettlementWindowsByParams to query with currency param
 - Updated the response object to include content

*  feature/926-EnhancegetSettlementWindowsByParams

 - Enhanced getSettlementWindowsByParams to query with currency param
 - Updated the response object to include content

*  feature/926-EnhancegetSettlementWindowsByParams

 - Enhanced getSettlementWindowsByParams to query with currency param
 - Updated the response object to include content

* Added async-retry

* - Update the facade to be able to query using currency
- removed the caret sign ^ from package.json

* - Trigger rebuild

* Prepare version for PR against master

* Trigger circle CI re-run

* Downgrade @mojaloop/central-services-database due to integration tests failure

* Address PR review request and update dependencies

Co-authored-by: deonbotha <deon.botha@modusbox.com>
Co-authored-by: lazolalucas <lazolalucas@users.noreply.github.com>
Co-authored-by: Lewis Daly <lewis@vesselstech.com>

* Fix/1107 circleci deploy (#261)

* update deploy config, bump package

* bump package version

* update hapi to 18.4.1

* Settlement v2 (#271)

* feature/1095 Close Settlement Window Changes (#220)

* Refactor scripts tree structure

* Dependencies upgrade

* Changed server setup and init. Registered Settlement Window Handler. Added CLI handler management. Shortened {id} paths. Window to PROCESSING state. Settlement window producer. Settlement window consumer. Default config added. Updated package.json scripts

* Added broker service health check

* SettlementWindowHandler ErrorHandling and async-retry

* Fix unit tests. Coverage fails at 91.32%

* SettlementWindowHandler Processing

* Fix integration tests

* Switched the latest release of central-services-shared

* Added unit test for API index.js . Code coverage now 89.5 percent

* Removed unnecessary commented lines from test

* Added unit tests for lib/healthcheck

* feature/1096 Create Settlement Changes #1 (#224)

* Changed swagger definition

* Settlement model validation. Unit tests fail

* select distinct

* Settlement window content validation. Fixed unit tests

* Deleted code to fix the two plugin issues and unit test for Handler - index.js

* feature/1097 Create Settlement Changes #2 (#225)

* Implemented inserts (not tested). Changed response definition. Unit tests fail

* Generate response. Validate proper implementation. Disable failing unit tests to be adjusted

* feature/1099 Update Settlement by ID Changes (#229)

* Implement updateSettlementByIdChanges enhancement

* Entire settlement process verified using various scenarios. Corrections made where applicable

* feature/1165 Unit tests for central-settlement part1

* Completed the unit test for register handlers code.

* Domain settlement windows close , added unit test

* Added more unit testing code to the settlement  windows models facade

* Added unit tests and fixed existing ones  to cover unhappy lines in process

* Added unit tests to shared/setup to cope with the service types

* Added unit test for shared setup : handler service type - and run handler true without any modules.

* Added unit test for settlement window with a handler list

* Added unit test to increase code coverage for settlement window facade

* Add unit test testing the settlement window state "not Processing"

* Added unit test to roll back settlement window facade when error occurs

* Added unit test on process to cover rollback on critical error and updated the version on central services shared to "8.8.2",

* Added unit testcode to close window

* Fixed the knex raw and .join isn't a function errors

* Changes:

- Added a unit test file and unit tests for SettlementWindow handler
- Made some fixes on the SettlementWindow handler

* Added last unit test on the facade. the tests are being ran in isolation still.

* Added last knex builder stubs to facade unit tests

* Combined the Stubs for the facade

* Worked on branches to increase covereage

Co-authored-by: lazolalucas <lazolalucas@users.noreply.github.com>

* feature/1100 Settlement By Currency Wrap Up (#231)

* Fixed and extended integration testing for settlement-v2

* Add anchore summary report upload, bump package version to 8.8.0 (#230)

* Full coverage for domain/settlement/index & models/lib/enums

* Full coverage for inculded scripts

* Integration testing config to run properly

* Finilize unit tests and full coverage

Co-authored-by: Lewis Daly <lewisdaly@me.com>

* Feature/1180 enhance get settlement windows by (#238)

* Added code changes to DAO and handler to include settlementwindow content

* Added code changes to DAO and handler to include settlementwindow content

* Added code changes to unit test to increase code coverage

* Changed code to fix the integration error

* Code review changes : added  SettlementWindowContentModel.getBySettlementWindowId function. Unit tests are still failing

* Code review changes : Added unit test and fixed unit tests to increase code coverage.

* Code review II : Removed settlement window id from response object and added settlement id to it.

* Trigger a rebuild. Previous commit failed due to internet failure

* Updated swagger definition with the settlementId as integer on the settlementWindowContent

* Fixed vulnerabilities

* feature/1211 Auto position reset (#240)

* Auto position reset functionality

* Re-run integration tests

* Use newest central-ledger snapshot release for integration tests

* feature/1209 Restrict Create Settlement (#249)

* Forbid GROSS/IMMEDATE models, when creating new settlement

* Corrected typo as per PR request

* Feature/926 enhanced get settlement windows by params (#254)

*  feature/926-EnhancegetSettlementWindowsByParams

 - Enhanced getSettlementWindowsByParams to query with currency param
 - Updated the response object to include content

*  feature/926-EnhancegetSettlementWindowsByParams

 - Enhanced getSettlementWindowsByParams to query with currency param
 - Updated the response object to include content

*  feature/926-EnhancegetSettlementWindowsByParams

 - Enhanced getSettlementWindowsByParams to query with currency param
 - Updated the response object to include content

* Added async-retry

* - Update the facade to be able to query using currency
- removed the caret sign ^ from package.json

* - Trigger rebuild

* Prepare version for PR against master

* Trigger circle CI re-run

* Downgrade @mojaloop/central-services-database due to integration tests failure

* Address PR review request and update dependencies

* Updated dependancy

* Another test for integration tests

* Feature/1241 get settlements by params to include currency (#268)

* Re-do code changes to the updated settlements v2

* Added async-retry

* Remove caret in package.json

* Fixed the filtering on the settlement window(s) per settlement id, added unit test

* Fixed the filtering on the settlement window(s) per settlement id, added unit test

* Fixed vulnerabilities

* Removed the settlement model line in the response object

* Removed the settlement model line in the response object

* update central ledger

* Fix vulnerability

* attempt to fix vulnerability

* Updated Happi to version 19.1.1

* Fixed the filtering on the settlement window(s) per settlement id, added unit test

* Crazy shit happening

* test commit

* Fixed code review changes

* Re-trigger pull request

* Revert Recreate DB script

* Updated Hapi to LTS version

* * Fixed get settlement by params
* Included content on the response object

* * Fixed Circle ci tests failing

* Trigger a rebuild

* Removed cache for dependencies under unit test/coverage

* Updated circle ci config.yml

* Updated circle ci config.yml

Co-authored-by: deonbotha <deon.botha@modusbox.com>

* Enhance central-settlement : Return settlement window content for every settlement window when getting settlements by id. (#263)

* Re-do code changes to the updated settlements v2

* Added async-retry

* Remove caret in package.json

* Fixed the filtering on the settlement window(s) per settlement id, added unit test

* Fixed the filtering on the settlement window(s) per settlement id, added unit test

* Fixed vulnerabilities

* Removed the settlement model line in the response object

* Removed the settlement model line in the response object

* update central ledger

* Fix vulnerability

* attempt to fix vulnerability

* Updated Happi to version 19.1.1

* Fixed the filtering on the settlement window(s) per settlement id, added unit test

* Crazy shit happening

* test commit

* Fixed code review changes

* Re-trigger pull request

* Revert Recreate DB script

* Updated Hapi to LTS version

* Added Neal's code review changes for pull request 263

* Update vulnerability issue

* Replaced the recursive delete object logic by a "map over"

* Ignore the vulnerablity rewire > eslint > espree > acorn for a week

Co-authored-by: Georgi Georgiev <georgi.georgiev@modusbox.com>
Co-authored-by: Deon Botha <darkwingduck@Deons-MacBook-Pro.local>
Co-authored-by: lazolalucas <lazolalucas@users.noreply.github.com>
Co-authored-by: Lewis Daly <lewisdaly@me.com>

* Fixed release issues(#272)

Updated package.json with the version to 9.3.0
Updated circle ci config.yml

* Fixed Dockerfile to have the correct run command for the new module structure (#274)

Co-authored-by: Neal Donnan <neal.donnan@modusbox.com>

* Added updated Mojaloop license (#247)

**Force merging as this is a license change only**

* Feature/1223 anchore policy (#292)

* Add custom mojaloop policy for evaluating anchore-cli scans

* run audit resolver, and ignore issues for devDependencies

* updated central-services dependencies (#294)

Co-authored-by: Valentin <valentin.genev@modusbox.com>

* Release/v9.5.0 (#295)

* ignoring some dependencies updates due to failing tests

* sorted contribs list alphabetically

Co-authored-by: Valentin <valentin.genev@modusbox.com>

* Updated versions for error-handler, etc... (#302)

* Updated versions for error-handler, etc...

* Touched file

* Touch to retrigger build

* Fixed typo

* Update to package.json

* Added JWS tag

* Changes required to get integration tests working

* Feature/otc300 consume commit message (#303)

* Added handler to monitor topic-notification-event

* Added handler to monitor topic-notification-event

* Added more code to break out vars from the msg on the notification topic

* Finalize code to break out vars from the msg on the notification topic

* Restructured code in the handler

* Renamed fulfill to fulfil

* Added initial code in the Domain to update the DB

* Added Knex version of SQL statement (Promise pending error still)

* Added more knex statements for the changed SQL from Micheal

* Fixed the bindings error

* Fixed the bindings error again

* Add facade and domain code

* Added Error handling

* Fixed index.js

* Removed unwanted code

* Updated the handler register unit test

* Fixed inner select error that magically started to appear

* Added the status parameter

* Added code to unit test transferfulfil facade

* Add more code to facade unit test

* Add unit test for domain/index.js

* Add unit test for domain/index.js

* Added unit tests to the handler

* Added more unit tests to transferfulfil handler

* Full code coverage achieved on the transferfulfil handler

* Removed unit test on facade. TBD later

* updated dependancies

* Changed the port in default.json

* Resolved vulnerabilities

* Made some depnedancy update changes

* Resloved vulnerabilities

* Increased codee coverage on branches to 100% for transferFulfil handler

* Fixed issue with Knex

* Added filter for OTC498

* Renamed functions as per code review request

* Fixed function name chnages in the unit tests

* Added changes to facade unit test

* Added code review change as requested by Rajiv

* Added Ignores for the failing unit test on the facade

* Added ignores for failing test

* Added config changes for python3 dependancy

* Feature/otc300 consume commit message (#305)

* Added handler to monitor topic-notification-event

* Added handler to monitor topic-notification-event

* Added more code to break out vars from the msg on the notification topic

* Finalize code to break out vars from the msg on the notification topic

* Restructured code in the handler

* Renamed fulfill to fulfil

* Added initial code in the Domain to update the DB

* Added Knex version of SQL statement (Promise pending error still)

* Added more knex statements for the changed SQL from Micheal

* Fixed the bindings error

* Fixed the bindings error again

* Add facade and domain code

* Added Error handling

* Fixed index.js

* Removed unwanted code

* Updated the handler register unit test

* Fixed inner select error that magically started to appear

* Added the status parameter

* Added code to unit test transferfulfil facade

* Add more code to facade unit test

* Add unit test for domain/index.js

* Add unit test for domain/index.js

* Added unit tests to the handler

* Added more unit tests to transferfulfil handler

* Full code coverage achieved on the transferfulfil handler

* Removed unit test on facade. TBD later

* updated dependancies

* Changed the port in default.json

* Resolved vulnerabilities

* Made some depnedancy update changes

* Resloved vulnerabilities

* Increased codee coverage on branches to 100% for transferFulfil handler

* Fixed issue with Knex

* Added filter for OTC498

* Renamed functions as per code review request

* Fixed function name chnages in the unit tests

* Added changes to facade unit test

* Added code review change as requested by Rajiv

* Added Ignores for the failing unit test on the facade

* Added ignores for failing test

* Added Config.yml chnges for Python 3 depnedancy

* deleted apk -v --purge del py-pip line from config.yml

* Feature/otc300 consume commit message (#306)

* Added handler to monitor topic-notification-event

* Added handler to monitor topic-notification-event

* Added more code to break out vars from the msg on the notification topic

* Finalize code to break out vars from the msg on the notification topic

* Restructured code in the handler

* Renamed fulfill to fulfil

* Added initial code in the Domain to update the DB

* Added Knex version of SQL statement (Promise pending error still)

* Added more knex statements for the changed SQL from Micheal

* Fixed the bindings error

* Fixed the bindings error again

* Add facade and domain code

* Added Error handling

* Fixed index.js

* Removed unwanted code

* Updated the handler register unit test

* Fixed inner select error that magically started to appear

* Added the status parameter

* Added code to unit test transferfulfil facade

* Add more code to facade unit test

* Add unit test for domain/index.js

* Add unit test for domain/index.js

* Added unit tests to the handler

* Added more unit tests to transferfulfil handler

* Full code coverage achieved on the transferfulfil handler

* Removed unit test on facade. TBD later

* updated dependancies

* Changed the port in default.json

* Resolved vulnerabilities

* Made some depnedancy update changes

* Resloved vulnerabilities

* Increased codee coverage on branches to 100% for transferFulfil handler

* Fixed issue with Knex

* Added filter for OTC498

* Renamed functions as per code review request

* Fixed function name chnages in the unit tests

* Added changes to facade unit test

* Added code review change as requested by Rajiv

* Added Ignores for the failing unit test on the facade

* Added ignores for failing test

* Added Config.yml chnges for Python 3 depnedancy

* deleted apk -v --purge del py-pip line from config.yml

* Added missing | for command in config.yml

* Updated dependencies for issue: https://github.com/mojaloop/project/issues/1378 (#308)

* Fix CircleCi/Python (#309)

* Fixed cache issue with checksum calculation (#310)

* Feature/301 enhance close settlement window (#307)

* Added handler to monitor topic-notification-event

* Added handler to monitor topic-notification-event

* Added more code to break out vars from the msg on the notification topic

* Finalize code to break out vars from the msg on the notification topic

* Restructured code in the handler

* Renamed fulfill to fulfil

* Added initial code in the Domain to update the DB

* Added Knex version of SQL statement (Promise pending error still)

* Added more knex statements for the changed SQL from Micheal

* Fixed the bindings error

* Fixed the bindings error again

* Add facade and domain code

* Added Error handling

* Fixed index.js

* Removed unwanted code

* Updated the handler register unit test

* Fixed inner select error that magically started to appear

* Added the status parameter

* Added code to unit test transferfulfil facade

* Add more code to facade unit test

* Add unit test for domain/index.js

* Add unit test for domain/index.js

* Added unit tests to the handler

* Added more unit tests to transferfulfil handler

* Full code coverage achieved on the transferfulfil handler

* Removed unit test on facade. TBD later

* updated dependancies

* Changed the port in default.json

* Resolved vulnerabilities

* Made some depnedancy update changes

* Resloved vulnerabilities

* Increased codee coverage on branches to 100% for transferFulfil handler

* Fixed issue with Knex

* Added filter for OTC498

* Renamed functions as per code review request

* Fixed function name chnages in the unit tests

* Added changes to facade unit test

* Added code review change as requested by Rajiv

* Added Ignores for the failing unit test on the facade

* Added ignores for failing test

* Added Config.yml chnges for Python 3 depnedancy

* deleted apk -v --purge del py-pip line from config.yml

* Added missing | for command in config.yml

* Added knex statement into settlement handlet facade and index

* Added failure conditions

* Added last code changes

* Increased code coverage with unit tests

* Pushed code coverage up to 100% for the added code

* Updated dependancies

* Removed dependency cache line in ci/config yaml

* Added processing of transfer fulfil message

* Updating integration test config

* Added changes from Neals branch

* Updated settlement integration tests to create settlement models before transfers

* Update package.json withh --production switches

Co-authored-by: Neal Donnan <neal.donnan@modusbox.com>

* Feature/otc 390 implement interchange fee calculation (#311)

* Initial commit

* Initial commit

* Added get transaction object feature

* Updated unit tests

* Added get transaction object feature tests

* Updated tests

Co-authored-by: Neal Donnan <neal.donnan@modusbox.com>

* Added scripts directory in Dockerfile

* Fixed persisting of ledger entries

* Changed rounding of interchange fee calculation to 2 decimals, half up

* Fixed integration tests

* fix for integration tests failing on latest version of simulator (#312)

* Updated test images for ml-api-adapter and central-ledger for integration tests to the latest.

* Made the loading of script engine scripts dynamic

* Upgraded central-services-shared library to 10.5.3, bump version (#313)

Co-authored-by: Claudio <claudio.viola@happycog.com>

* Feature/otc 624 rework central settlement integration test set up (#314)

* OTC-624: refactoring integration tests initial data setup

* OTC-624 fixing and refactoring cleaning up

* OTC-624 refactoring and cleaning up test setup

* Ignoring package updates

* OTC-624 reverting back merge conflict change

* OTC-624 renamed scenario and fixing axios version

* OTC-624 renamed folder due to order of tests

* Feature/otc658 rework cgs handlers (#316)

* Added transferParticipantStateChange to cli

* Implemented name change transferParticipantStateChange to transfeSettlement

* Added code to handlers/index.js to increase code coverage

* Commented to be database transaction demarcation

* FIX TransferParticipantStageChange wrong table rename

* Moving script loader to utils

* OTC-676 refactoring and creating transactions

* OTC-676 added scriptsEngine unit tests

* OTC-676 refactoring

* Added missing export in facade

* Fixing tests regex in package.json

* fix lint

* Commit:

- Added unit tests for the scriptsLoader.js
- Renamed transferParticipantStateChange to transferSettlement in the unit tests

* Using apis to create settlement models

* Moved the logic for retrieving script config to a new function : retrieveScriptConfiguration

* OTC: 375 - Fixed swagger def title

* OTC-715 - Implement GitLab CI/CD on the central-settlement TIPS project.

* Removing CGS settlement model

* Updated helm dependency update script

* Fixed docker-compose setup

* Started to update new transfer settlement knexes

* Cleaned up the updateTransferSettlement code.

* Fixed models sqls statement according to Michaels spec

* Temporary change to pipeline to allow deployment to test OTC-649

* Change the sign calculating the difference between PP.value and TR.amount when updating position

* #1484: Update FSPIOP API version (#321)

* Update FSPIOP API version

* Update package version and resolve audit issues

* Temporarily resolve audit issues

* Resolve audit issues

* Reset package versions

* Reset swagger version

* Temporarily disable docker images removal after integration tests

* Fix integration test config for central-ledger

* Resolve audit issues. Restore integration runner

* Temporarily disable docker images removal after integration test

* Update dependencies, resolve audit issues, revert central-services-database to v9.2.0

* Revert hapi-openapi to v1.2.6

* Restore integration runner

* Update FSPIOP API version

* Bump basePath to v2, update tests

* Revert "Temporary change to pipeline to allow deployment to test OTC-649"

This reverts commit 0c97928a22138741e06854264574d10e04049546

* Delete StubInsertPairOfLedgerEntries.js

* OTC-762 setting up jest

* OTC-762 updating local config

* OTC-762 attempting message push

* OTC-762 sending message on kafka queue

* OTC-762 adding transfer before running test

* OTC-762 removed commented code

* Added await for add ledger entry function and fixed CGS insert query for transferParticipant

* OTC-762 updating query logic for participantPosition records

* OTC-762 polishing

* OTC-762 formatting

* OTC-762 only adding fees for committed transfers

* OTC-762 adding more error handling

* OTC-762 removing calls brackets for commit function, unknown error logged

* Fixed a bug in Knex statement and added chnges to knex as per story OTC649

* OTC-777 added unit tests for insert Ledger entry

* Unit test update Caudio

* OTC649 test mocking update

* Claudio added the correct code to cover the nested knex functions

* Add debug output to gitlab-ci.yml

* Update README.md

* Resolve audit issues (#322)

* Fixed some unit tests and increased coverage

* Updated dependencies

* Run unit test coverage in Gitlab pipeline

* Removed the insert of a SETTLED transfer state record

* Move kubernetes service account configuration into same step as deployment

* Updating dependency

* Update README.md

* Update README.md

* Added try catch to scripts loader function

* Fixed unit test

* Temporary move of scripts

* Fixed unit test coverage

* Added more clever way to load scripts

* Fixed settlement window content response for multiple windows

* Added check for liquidity check before calculating liquidity and adjusting NET_DEBIT_CAP

* Added unit test for liquidity check

* Added filtering for settlementWindowContent when closing settlement windows to only add entries for ledgerAccountTypes linked to NET settlement models

* #1885: Update API documentation (#330)

* Update API documentation

* Fix audit issues

* Add unit tests

* Fix integration test

* Resolve audit issues

* Fix audit

* Remove hapi-swagger

* Update deps

* Minor fix

* docker-compose to use personal dockerhub

* test fix

* chore: update license file (#329)

* [Security] Bump urijs from 1.19.2 to 1.19.5 (#331)

Bumps [urijs](https://github.com/medialize/URI.js) from 1.19.2 to 1.19.5. **This update includes a security fix.**
- [Release notes](https://github.com/medialize/URI.js/releases)
- [Changelog](https://github.com/medialize/URI.js/blob/gh-pages/CHANGELOG.md)
- [Commits](https://github.com/medialize/URI.js/compare/v1.19.2...v1.19.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* added check for settlement model in transfersettlement handler

* feat: Continious Gross Settlement

* dependencies update

* deleted gitlab-ci.yaml

Co-authored-by: Miguel de Barros <miguel@debarros.me>
Co-authored-by: Georgi Georgiev <georgi.georgiev@modusbox.com>
Co-authored-by: HenkKodde <36304517+HenkKodde@users.noreply.github.com>
Co-authored-by: Rajiv Mothilal <rajivmothilal@gmail.com>
Co-authored-by: Sam <elnyry@users.noreply.github.com>
Co-authored-by: shashi165 <33355509+shashi165@users.noreply.github.com>
Co-authored-by: Georgi Georgiev <g.georgi@gmail.com>
Co-authored-by: Lewis Daly <lewisdaly@me.com>
Co-authored-by: Lewis Daly <lewis@vesselstech.com>
Co-authored-by: Juan Correa <gibaros@users.noreply.github.com>
Co-authored-by: Steven Oderayi <oderayi@gmail.com>
Co-authored-by: deonbotha <deon.botha@modusbox.com>
Co-authored-by: lazolalucas <lazolalucas@users.noreply.github.com>
Co-authored-by: Deon Botha <darkwingduck@Deons-MacBook-Pro.local>
Co-authored-by: ndonnan <neal.donnan@gmail.com>
Co-authored-by: Neal Donnan <neal.donnan@modusbox.com>
Co-authored-by: Valentin <valentin.genev@modusbox.com>
Co-authored-by: Adrian Enns <ennsak@gmail.com>
Co-authored-by: vijayg10 <33152110+vijayg10@users.noreply.github.com>
Co-authored-by: Claudio <claudio.viola@happycog.com>
Co-authored-by: Lazola Lucas <lazola.lucas@modusbox.com>
Co-authored-by: Keith Douglas <keith.douglas@modusbox.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Shashikant Hirugade <shashi.pioneer@gmail.com>

* docker-compose.yaml and integration-runner.env fixed

* addressed some pr comments

* fix: vulnerability checks

* fix: updated central-ledger dependency to address security vunlerability

* fix: dependencies update

* updated central-services-error-handling version

Co-authored-by: Miguel de Barros <miguel@debarros.me>
Co-authored-by: Georgi Georgiev <georgi.georgiev@modusbox.com>
Co-authored-by: HenkKodde <36304517+HenkKodde@users.noreply.github.com>
Co-authored-by: Rajiv Mothilal <rajivmothilal@gmail.com>
Co-authored-by: Sam <elnyry@users.noreply.github.com>
Co-authored-by: shashi165 <33355509+shashi165@users.noreply.github.com>
Co-authored-by: Georgi Georgiev <g.georgi@gmail.com>
Co-authored-by: Lewis Daly <lewisdaly@me.com>
Co-authored-by: Lewis Daly <lewis@vesselstech.com>
Co-authored-by: Juan Correa <gibaros@users.noreply.github.com>
Co-authored-by: Steven Oderayi <oderayi@gmail.com>
Co-authored-by: deonbotha <deon.botha@modusbox.com>
Co-authored-by: lazolalucas <lazolalucas@users.noreply.github.com>
Co-authored-by: Deon Botha <darkwingduck@Deons-MacBook-Pro.local>
Co-authored-by: ndonnan <neal.donnan@gmail.com>
Co-authored-by: Neal Donnan <neal.donnan@modusbox.com>
Co-authored-by: Valentin <valentin.genev@modusbox.com>
Co-authored-by: Adrian Enns <ennsak@gmail.com>
Co-authored-by: vijayg10 <33152110+vijayg10@users.noreply.github.com>
Co-authored-by: Claudio <claudio.viola@happycog.com>
Co-authored-by: Lazola Lucas <lazola.lucas@modusbox.com>
Co-authored-by: Keith Douglas <keith.douglas@modusbox.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Shashikant Hirugade <shashi.pioneer@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants