Files
logos-cpp-sdk/nix/tests.nix
T
Iuri Matias d633575677 add IDL parser & generator (wip) (#33)
* add IDL parser & generator (wip)

* fix fixtures issues affecting tests

* fix fixtures issues affecting tests
2026-03-31 16:29:35 -04:00

54 lines
1.1 KiB
Nix

# Builds and runs the test suite
{ pkgs, common, src }:
pkgs.stdenv.mkDerivation {
pname = "${common.pname}-tests";
version = common.version;
inherit src;
nativeBuildInputs = common.nativeBuildInputs;
buildInputs = common.buildInputs ++ [ pkgs.gtest ];
cmakeFlags = common.cmakeFlags;
dontUseCmakeConfigure = true;
buildPhase = ''
runHook preBuild
mkdir -p build-tests
cd build-tests
cmake ../tests -GNinja $cmakeFlags
ninja
cd ..
runHook postBuild
'';
doCheck = true;
checkPhase = ''
runHook preCheck
cd build-tests
ctest --output-on-failure
cd ..
runHook postCheck
'';
installPhase = ''
runHook preInstall
mkdir -p $out/bin
cp build-tests/sdk/sdk_tests $out/bin/
cp build-tests/generator/generator_tests $out/bin/
cp build-tests/experimental/experimental_tests $out/bin/
# Copy test fixtures needed by experimental_tests at runtime
mkdir -p $out/fixtures
cp tests/experimental/fixtures/* $out/fixtures/
runHook postInstall
'';
inherit (common) meta;
}