ブロックチェーン Tezos において、ノードの立ち上げやクライアントを使ったインタラクションをOCaml上で実行できるフレームワーク Tezt
が爆誕したので試してみる。
Tezos開発者がOCamlでTezosの tezos
プロジェクトに内包される形で提供されようとして現在 Merge Request が出ている段階である。
- MR: https://gitlab.com/tezos/tezos/-/merge_requests/1881
- source code: https://gitlab.com/nomadic-labs/tezos/-/tree/romain-tezt
- スライド資料: https://gitlab.com/romain.nl/slides/-/blob/master/tezt.pdf
- 作っている人: nomadic labsの Romainさん
- Nodeを別プロセスとして新しく起動する、終了する
- Nodeプロセスを監視して、準備中になるまで待つとか、一定のblockレベル溜まるまで待つとかできる
- RPCコール経由でNodeに働きかける
- Clientからbakeする
- すでに起動しているNodeの扱い (イベント補足とかの整合性を考えなければできる?未確認)
- Clientでの任意のコマンド実行 (簡単な改造でいける)
TODO
- Ubuntu 18.04
- opam 2.0.4
commit:
e83c47a68
からの差分:tezt_sample_on_e83c47a68.diff
tezt/tests/sample.ml
dune exec tezt/tests/sample.exe -- --verbose