Сryptocurrency development analysis

Description

This adds functionality to the node state adaptor to query the current security parameter, slot ID of the tip header, and maximum transaction size. It also makes it partly mockable so that we can still query these parameters also in tests.

## Linked issue

https://iohk.myjetbrains.com/youtrack/issue/CBR-376
https://iohk.myjetbrains.com/youtrack/issue/CBR-353

## Type of change

— [x] 🐞 Bug fix (non-breaking change which fixes an issue)
— [x] 🛠 New feature (non-breaking change which adds functionality)
— [ ] ⚠️ Breaking change (fix or feature that would cause existing functionality to change)
— [ ] 🏭 Refactoring that does not change existing functionality but does improve things like code readability, structure etc
— [ ] 🔨 New or improved tests for existing code
— [ ] ⛑ git-flow chore (backport, hotfix, etc)

## Developer checklist

— [ ] I have read the [style guide](https://github.com/input-output-hk/cardano-sl/blob/develop/docs/style-guide.md) document, and my code follows the code style of this project.
— [ ] If my code deals with exceptions, it follows the [guidelines](https://github.com/input-output-hk/cardano-sl/blob/develop/docs/exceptions.md).
— [ ] I have updated any documentation accordingly, if needed. Documentation changes can be reflected in opening a PR on [cardanodocs.com](https://github.com/input-output-hk/cardanodocs.com), amending the inline [Haddock](https://www.haskell.org/haddock/) comments, any relevant README file or one of the document listed in the [docs](https://github.com/input-output-hk/cardano-sl/tree/develop/docs) directory.
— [ ] CHANGELOG entry has been added and is linked to the correct PR on GitHub.

## Testing checklist

— [ ] I have added tests to cover my changes.
— [ ] All new and existing tests passed.

## QA Steps

## Screenshots (if available)

You can view, comment on, or merge this pull request online at:

https://github.com/input-output-hk/cardano-sl/pull/3410

— Commit Summary —

* [CBR-376] Add functions to query node state
* [CBR-353] Don’t use hardcoded max tx size
* [CBR-376] Don’t use hardcoded k/tip slot ID
* [CBR-376] Take assurance level into account
* [CBR-353] Make NodeStateAdaptor partly mockable

— File Changes —

M wallet-new/src/Cardano/Wallet/Kernel/ChainState.hs (54)
M wallet-new/src/Cardano/Wallet/Kernel/DB/HdWallet.hs (12)
M wallet-new/src/Cardano/Wallet/Kernel/DB/Read.hs (23)
M wallet-new/src/Cardano/Wallet/Kernel/NodeStateAdaptor.hs (208)
M wallet-new/src/Cardano/Wallet/Kernel/Transactions.hs (10)
M wallet-new/src/Cardano/Wallet/WalletLayer/Kernel/Transactions.hs (56)
M wallet-new/test/unit/Test/Spec/Fixture.hs (8)
M wallet-new/test/unit/Test/Spec/Kernel.hs (4)

— Patch Links —

https://github.com/input-output-hk/cardano-sl/pull/3410.patch
https://github.com/input-output-hk/cardano-sl/pull/3410.diff

Добавить комментарий