diff --git a/cov.sh b/cov.sh new file mode 100755 index 000000000..9f2a87a47 --- /dev/null +++ b/cov.sh @@ -0,0 +1,21 @@ +#!/bin/sh +# Installing KCOV under ubuntu +# https://users.rust-lang.org/t/tutorial-how-to-collect-test-coverages-for-rust-project/650# +### Install deps +# $ sudo apt-get install libcurl4-openssl-dev libelf-dev libdw-dev cmake gcc binutils-dev libiberty-dev +# +### Compile kcov +# $ wget https://github.com/SimonKagstrom/kcov/archive/master.tar.gz && tar xf master.tar.gz +# $ cd kcov-master && mkdir build && cd build +# $ cmake .. && make && sudo make install + +### Running coverage +if ! type kcov > /dev/null; then + echo "Install kcov first (details inside this file). Aborting." + exit 1 +fi + +cargo test --no-run || exit $? +mkdir -p target/coverage +kcov --exclude-pattern ~/.multirust --include-pattern src --verify target/coverage target/debug/ethcore* +xdg-open target/coverage/index.html diff --git a/util/cov.sh b/util/cov.sh new file mode 120000 index 000000000..72bb061f8 --- /dev/null +++ b/util/cov.sh @@ -0,0 +1 @@ +../cov.sh \ No newline at end of file