tvl-depot/users/zseri/store-ref-scanner/tests.nix
zseri 1cc8aa56a4 refactor(zseri/store-ref-scanner): get rid of proc_unroll dependency
Change-Id: I0d4a8b2af814fd2870c3eb4218ee4fbaba1216f5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4605
Tested-by: BuildkiteCI
Reviewed-by: zseri <zseri.devel@ytrizja.de>
2021-12-25 05:03:10 +00:00

32 lines
843 B
Nix

{ depot, lib, pkgs, ... }:
let
parent = depot.users.zseri.store-ref-scanner;
in
pkgs.buildRustCrate {
pname = "store-ref-scanner-tests";
inherit (parent) crateName src version edition;
buildTests = true;
postInstall = ''
set -ex
export RUST_BACKTRACE=1
# recreate a file hierarchy as when running tests with cargo
# the source for test data
# build outputs
testRoot=target/debug
mkdir -p $testRoot
chmod +w -R .
# test harness executables are suffixed with a hash,
# like cargo does this allows to prevent name collision
# with the main executables of the crate
hash=$(basename $out)
ls -lasR $out
for file in $out/tests/*; do
f=$testRoot/$(basename $file)-$hash
cp $file $f
$f 2>&1 | tee -a $out/tests.log
done
rm -rf $out/tests
set +ex
'';
}