Crates.io | ic-test-state-machine-client |
lib.rs | ic-test-state-machine-client |
version | 3.0.1 |
source | src |
created_at | 2023-01-12 12:27:23.112635 |
updated_at | 2023-11-23 11:59:43.497752 |
description | Rust library to interact with the ic-test-state-machine. |
homepage | https://docs.rs/ic-test-state-machine-client |
repository | https://github.com/dfinity/test-state-machine-client |
max_upload_size | |
id | 757090 |
size | 34,416 |
This is a client library for the test-state-machine
binary from the IC repository: https://github.com/dfinity/ic/tree/master/rs/state_machine_tests
Whenever a new StateMachine
is created, the library spawns a child process, which it will communicate with using stdio
. If the debug
flag is passed in, the binary will print debug information to stderr
(as to not interfere with the protocol going over stdin/stdout
).
The ic-test-state-machine
is an incomplete wrapper around the ic-state-machine-tests
library (in the same crate). It was created to decouple the lengthy build process and the many dependencies of the IC repo from clients of the ic-test-state-machine
.
The prebuilt binary can be downloaded from https://download.dfinity.systems/ic/$sha/binaries/x86_64-$platform/ic-test-state-machine.gz, where sha
is the commit sha of a commit on the master branch of the IC repository and platform
is either linux
or darwin
.
The ic-test-state-machine
binary requires openssl 3
. On MacOs it can be installed using homebrew by running brew install openssl@3
.
While testing with the ic-test-state-machine
might help the development process, it is not a replacement for testing with the actual replica.