mock-chronik-client
Version:
Testing utility to mock the Chronik indexer client and support unit tests that need to mock chronik related API calls.
127 lines (67 loc) • 3.52 kB
Markdown
# mock-chronik-client
Testing utility to mock the Chronik indexer client and support unit tests that need to mock chronik related API calls.
## Usage
Mock chronik API calls including tx broadcasting and paginated tx history. Also includes an Agora mock. See unit tests for latest usage.
## Questions?
If you have any implementation questions regarding this mock tool please check the test suite in `/test/index.test.js` or feel free to reach out to the development team via the [eCash Development Telegram](https://t.me/eCashDevelopment).
### Change Log
1.1.0
- Add support to in-node subscribeToBlocks method and check flag, isSubscribedBlocks
1.1.1
- Patch error tests
1.2.0
- Add support to calls by `address(address)` returning same as `script(type, hash)`
1.3.0
- Add support for `subscribeToAddress` and `unsubscribeFromAddress` websocket methods
1.4.0
- Add support for `ws.unsubscribe` method and fix errors in `ws` tests
1.4.1
- Patch repo path in package.json
1.5.0
- Add support for ws subscribe methods and shape found in in-node chronik-client
1.6.0
- Match shape of `subs` object in `ChronikClientNode` for `ChronikClientNode` ws methods and support unsubscribe from blocks
1.7.0
- Allow getting and setting utxos() and history() by tokenId
1.8.0
- Allow getting history without specifying pageNumber or pageSize
1.9.0
- Support `blockTxs` endpoint
- Update websocket subs shape to match ChronikClientNode
1.9.1
- Upgrading npm dependencies [D16380](https://reviews.bitcoinabc.org/D16380)
1.10.0
- Allow getting and setting `history()` by `lokadId` [D16382](https://reviews.bitcoinabc.org/D16382)
1.10.1
- Return missing `numTxs` key from `history()` calls [D16617](https://reviews.bitcoinabc.org/D16617)
1.11.0
- Add support for `MockAgora`, a simple set-and-return mock for some `ecash-agora` class methods [D16737](https://reviews.bitcoinabc.org/D16737)
1.12.0
- Extend `MockAgora` support to cover `offeredFungibleTokenIds()` and `activeOffersByTokenId()` methods [D16929](https://reviews.bitcoinabc.org/D16929)
1.12.1
- Build published version with dependencies from `npm` [D17227](https://reviews.bitcoinabc.org/D17227)
1.12.2
- Add `MockAgora` to stub ts declarations [D17274](https://reviews.bitcoinabc.org/D17274)
1.12.3
- Add dummy `plugin` method to allow construction of `new Agora()` from `ecash-agora` with a `MockChronikClient` [D17279](https://reviews.bitcoinabc.org/D17279)
2.0.0
[D17332](https://reviews.bitcoinabc.org/D17332)
- Full implementation of typescript
- Set history and utxos by script, address, or tokenId in one step (prev 2)
- Set history by lokadId in one step (prev 2)
- Better type checking
- Improved mock websocket (now it more closely follows the API of chronik-client)
- Add `broadcastTxs` method
- Add `chronikInfo` method
2.0.1
- Build before deployment so it also works for non-ts users [D17338](https://reviews.bitcoinabc.org/D17338)
2.1.0
- Support for Agora plugin websocket subscriptions [D17369](https://reviews.bitcoinabc.org/D17369)
2.1.1
- Upgrade to dependency-free `ecashaddrjs` [D17269](https://reviews.bitcoinabc.org/D17269)
2.1.2
- Update README [D17506](https://reviews.bitcoinabc.org/D17506)
2.1.3
- Update `package.json` paths for correct typescript `dist` [D17542](https://reviews.bitcoinabc.org/D17542)
3.0.0
- Update types to match latest breaking changes in `chronik-client` [D17727](https://reviews.bitcoinabc.org/D17727)