We use the bors-ng bot to merge PRs. In short, when someone replies bors r+
, your PR has been scheduled for final tests and will be automatically merged. If a maintainer replies bors delegate+
, then you have been granted the authority to merge your own PR (usually this will happen if there are some trivial changes required). For a full list of bors commands, see the bors documentation.
Our aim is to provide a number of tests to be safe from regression. Currently, the unit tests and the linting is automated, however, the integration tests have to be run manually.
libtock-rs
currently has two compilation targets: riscv32imac-unknown-none-elf
and thumbv7em-none-eabi
. You can build the library and the examples using the script build_examples.sh
.
There a a number of tests which run in our travis-ci environment. You can run them using cargo test --workspace
.
If you have a nRF52-dk
you can run the integration tests as follows. The pins P0.03 and P0.04 need to be connected (on a nRF52-DK). Then do the following:
tockloader listen
The desired test output is:
The expected output on the UART console will be as follows.
[test-results] heap_test = "Heap works." formatting = works should_be_one = 1 gpio_works = true trait_obj_value_usize = 1 trait_obj_value_string = string callbacks_work = true all_tests_run = true