Test coverage (#4596)

* update .gitignore

* add test-with-coverage.sh

* coverage gutters extension comment

* move lcov.info to target folder

---------

Co-authored-by: SleeplessOne1917 <28871516+SleeplessOne1917@users.noreply.github.com>
This commit is contained in:
dullbananas 2024-04-11 01:32:07 -07:00 committed by GitHub
parent 64760ec960
commit 0f6b13a4ec
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

26
scripts/test-with-coverage.sh Executable file
View file

@ -0,0 +1,26 @@
#!/usr/bin/env bash
set -e
CWD="$(cd -P -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd -P)"
cd $CWD/../
PACKAGE="$1"
echo "$PACKAGE"
source scripts/start_dev_db.sh
# tests are executed in working directory crates/api (or similar),
# so to load the config we need to traverse to the repo root
export LEMMY_CONFIG_LOCATION=../../config/config.hjson
export RUST_BACKTRACE=1
cargo install cargo-llvm-cov
# Create lcov.info file, which is used by things like the Coverage Gutters extension for VS Code
cargo llvm-cov --workspace --all-features --no-fail-fast --lcov --output-path target/lcov.info
# Add this to do printlns: -- --nocapture
pg_ctl stop --silent
rm -rf $PGDATA