mcuboot/sim/README.rst

55 lines
1.4 KiB
ReStructuredText

MCUboot Simulator
#################
This is a small simulator designed to exercise the mcuboot upgrade
code, specifically testing untimely reset scenarios to make sure the
code is robust.
Prerequisites
=============
The simulator is written in Rust_, and you will need to install it to
build it. The installation_ page describes this process. The
simulator can be built with the stable release of Rust.
.. _Rust: https://www.rust-lang.org/
.. _installation: https://www.rust-lang.org/en-US/install.html
Dependent code
--------------
The simulator depends on some external modules. These are stored as
submodules within git. To fetch these dependencies the first time::
$ git submodule update --init
will clone and check out these trees in the appropriate place.
Testing
=======
The tests are written as unit tests in Rust, and can be built and run
automatically::
$ cargo test
this should download and compile the necessary dependencies, compile
the relevant modules from mcuboot, build the simulator, and run the
tests.
Debugging
=========
If the simulator indicates a failure, you can turn on additional
logging by setting ``RUST_LOG=warn`` or ``RUST_LOG=error`` in the
environment::
$ RUST_LOG=warn ./target/release/bootsim run ...
It is also possible to run specific tests, for example::
$ cargo test -- basic_revert
which will run only the `basic_revert` test.