From a7afb088df4ac7935af825fee31db6e81bb5acb1 Mon Sep 17 00:00:00 2001 From: Jeremy Fitzhardinge Date: Sat, 26 Jan 2019 18:24:45 -0800 Subject: [PATCH] Add a CI test for cargoless use of clippy-driver --- ci/base-tests.sh | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/ci/base-tests.sh b/ci/base-tests.sh index 17eec3a4149b..38a8453cda16 100755 --- a/ci/base-tests.sh +++ b/ci/base-tests.sh @@ -25,6 +25,30 @@ export CARGO_TARGET_DIR=`pwd`/target/ ./util/dev update_lints --check cargo +nightly fmt --all -- --check +# Check running clippy-driver without cargo +( + export LD_LIBRARY_PATH=$(rustc --print sysroot)/lib + + # Check sysroot handling + sysroot=$(./target/debug/clippy-driver --print sysroot) + test $sysroot = $(rustc --print sysroot) + + sysroot=$(./target/debug/clippy-driver --sysroot /tmp --print sysroot) + test $sysroot = /tmp + + sysroot=$(SYSROOT=/tmp ./target/debug/clippy-driver --print sysroot) + test $sysroot = /tmp + + # Make sure this isn't set - clippy-driver should cope without it + unset CARGO_MANIFEST_DIR + + # Run a lint and make sure it produces the expected output. It's also expected to exit with code 1 + ! ./target/debug/clippy-driver --emit metadata --crate-type bin tests/ui/cstring.rs 2> cstring.stderr + diff cstring.stderr tests/ui/cstring.stderr + + # TODO: CLIPPY_CONF_DIR / CARGO_MANIFEST_DIR +) + # make sure tests are formatted # some lints are sensitive to formatting, exclude some files