From 55ab7c1d82581d698dec0aa09ec2e0dbdaff0cd5 Mon Sep 17 00:00:00 2001 From: eljamm Date: Mon, 31 Aug 2026 17:19:24 +0200 Subject: [PATCH] cdxgen: add passthru tests --- pkgs/by-name/cd/cdxgen/package.nix | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/pkgs/by-name/cd/cdxgen/package.nix b/pkgs/by-name/cd/cdxgen/package.nix index f962b51cac5e..6acc880e371f 100644 --- a/pkgs/by-name/cd/cdxgen/package.nix +++ b/pkgs/by-name/cd/cdxgen/package.nix @@ -8,6 +8,10 @@ fetchPnpmDeps, pnpmConfigHook, stdenv, + + # tests + runCommand, + testers, }: stdenv.mkDerivation (finalAttrs: { pname = "cdxgen"; @@ -55,6 +59,24 @@ stdenv.mkDerivation (finalAttrs: { find $out -xtype l -print -delete ''; + passthru.tests = { + version = testers.testVersion { + package = finalAttrs.finalPackage; + }; + + sbom = + runCommand "${finalAttrs.pname}-${finalAttrs.version}-test-sbom" + { + nativeBuildInputs = [ finalAttrs.finalPackage ]; + } + '' + pushd ${finalAttrs.src}/test/repotests/npm-smoke + cdxgen -t npm -o $out/bom.json . + grep -q '"bomFormat"' "$out/bom.json" + popd + ''; + }; + meta = { description = "Creates CycloneDX Software Bill-of-Materials (SBOM) for your projects from source and container images"; mainProgram = "cdxgen";