nim-codex/codex/utils
Eric 37b3d99c3d
Improve integration testing client (CodexClient) and json serialization (#514)
* Improve integration testing client (CodexClient) and json serialization

The current client used for integration testing against the REST endpoints for Codex accepts and passes primitive types. This caused a hard to diagnose bug where a `uint` was not being deserialized correctly.

In addition, the json de/serializing done between the CodexClient and REST client was not easy to read and was not tested.

These changes bring non-primitive types to most of the CodexClient functions, allowing us to lean on the compiler to ensure we're providing correct typings. More importantly, a json de/serialization util was created as a drop-in replacement for the std/json lib, with the main two differences being that field serialization is opt-in (instead of opt-out as in the case of json_serialization) and serialization errors are captured and logged, making debugging serialization issues much easier.

* Update integration test to use nodes=2 and tolerance=1

* clean up
2023-09-01 15:44:41 +10:00
..
addrutils.nim Improving proc/func formatting consistency (#454) 2023-06-22 08:11:18 -07:00
asyncheapqueue.nim Slot queue (#455) 2023-07-25 12:50:30 +10:00
asyncspawn.nim [marketplace] Load sales state from chain (#306) 2023-03-08 14:34:26 +01:00
asyncstatemachine.nim Cancel and wait for asyncstatemachine futures when stopping (#493) 2023-07-31 15:09:34 +10:00
fileutils.nim Enable stylecheck (#353) 2023-03-10 08:02:54 +01:00
json.nim Improve integration testing client (CodexClient) and json serialization (#514) 2023-09-01 15:44:41 +10:00
keyutils.nim Bump deps take2 (#492) 2023-08-01 16:47:57 -07:00
optionalcast.nim [utils] Add operator `as` for optional casting 2022-10-25 15:10:35 +11:00
stintutils.nim feat: bigint uses decimal over hex encoding (#452) 2023-06-21 07:46:18 +02:00
then.nim Cancel and wait for asyncstatemachine futures when stopping (#493) 2023-07-31 15:09:34 +10:00
timer.nim Improving proc/func formatting consistency (#454) 2023-06-22 08:11:18 -07:00
trackedfutures.nim Cancel and wait for asyncstatemachine futures when stopping (#493) 2023-07-31 15:09:34 +10:00