snix/users/sterni/blipqn/default.nix
sterni a031b918b1 test(sterni/blipqn): add sanity check
This tests that a single pixel is set in the correct place and correctly
sent over UDP.

Change-Id: I617dda739262b4c6cf55c0bf99d2f3e141adece3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/13013
Reviewed-by: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
2025-01-17 15:50:33 +00:00

43 lines
821 B
Nix

{ pkgs, lib, ... }:
let
inherit (pkgs) llvmPackages;
drv = llvmPackages.stdenv.mkDerivation {
name = "blipqn";
src = lib.cleanSource ./.;
makeFlags = [ "PREFIX=$(out)" ];
nativeBuildInputs = [
llvmPackages.clang-tools
];
buildInputs = [
pkgs.cbqn
];
doCheck = true;
checkInputs = [
pkgs.netcat-openbsd
];
checkPhase = ''
runHook preCheck
nc -lu 2323 > raw &
BQN ./examples.bqn localhost 2323 32 10 235
kill %1
base64 raw > received
diff -u received - <<EOF
AAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
EOF
runHook postCheck
'';
meta.ci.targets = [ "debug" ];
passthru.debug = drv.overrideAttrs (old: {
CFLAGS = "-g -Werror -DFLIPDOT_DEBUG=1";
});
};
in
drv