at master 1.1 kB view raw
1{ 2 nixpkgs ? ../../.., 3 system ? builtins.currentSystem, 4 pkgs ? import nixpkgs { 5 config = { }; 6 overlays = [ ]; 7 inherit system; 8 }, 9 nixVersions ? import ../../tests/nix-for-tests.nix { inherit pkgs; }, 10 libpath ? ../.., 11 # Random seed 12 seed ? null, 13}: 14 15pkgs.runCommand "lib-path-tests" 16 { 17 nativeBuildInputs = [ 18 nixVersions.stable 19 ] 20 ++ (with pkgs; [ 21 jq 22 bc 23 ]); 24 } 25 '' 26 # Needed to make Nix evaluation work 27 export TEST_ROOT=$(pwd)/test-tmp 28 export NIX_BUILD_HOOK= 29 export NIX_CONF_DIR=$TEST_ROOT/etc 30 export NIX_LOCALSTATE_DIR=$TEST_ROOT/var 31 export NIX_LOG_DIR=$TEST_ROOT/var/log/nix 32 export NIX_STATE_DIR=$TEST_ROOT/var/nix 33 export NIX_STORE_DIR=$TEST_ROOT/store 34 export PAGER=cat 35 36 cp -r ${libpath} lib 37 export TEST_LIB=$PWD/lib 38 39 echo "Running unit tests lib/path/tests/unit.nix" 40 nix-instantiate --eval --show-trace \ 41 --argstr libpath "$TEST_LIB" \ 42 lib/path/tests/unit.nix 43 44 echo "Running property tests lib/path/tests/prop.sh" 45 bash lib/path/tests/prop.sh ${toString seed} 46 47 touch $out 48 ''