diff --git a/pkgs/by-name/xu/xunit-viewer/package.nix b/pkgs/by-name/xu/xunit-viewer/package.nix new file mode 100644 index 000000000000..7c31b82aac7b --- /dev/null +++ b/pkgs/by-name/xu/xunit-viewer/package.nix @@ -0,0 +1,42 @@ +{ + lib, + buildNpmPackage, + fetchFromGitHub, + nix-update-script, + callPackage, + testers, xunit-viewer, +}: +let + version = "10.6.1"; +in +buildNpmPackage { + pname = "xunit-viewer"; + inherit version; + + src = fetchFromGitHub { + owner = "lukejpreston"; + repo = "xunit-viewer"; + rev = "v${version}"; + hash = "sha256-n9k1Z/wofExG6k/BxtkU8M+Lo3XdCgCh8VFj9jcwL1Q="; + }; + + npmDepsHash = "sha256-6PV0+G1gzUWUjOfwRtVeALVFFiwkCAB33yB9W0PCGfc="; + + passthru.updateScript = nix-update-script { }; + + passthru.tests = { + version = testers.testVersion { + package = xunit-viewer; + version = "unknown"; # broken, but at least it runs + }; + example = callPackage ./test/example.nix { }; + }; + + meta = { + description = "View your xunit results using JavaScript"; + homepage = "https://lukejpreston.github.io/xunit-viewer"; + license = with lib.licenses; [ mit ]; + maintainers = with lib.maintainers; [ pluiedev ]; + platforms = lib.platforms.all; + }; +} diff --git a/pkgs/by-name/xu/xunit-viewer/test/example.junit.xml b/pkgs/by-name/xu/xunit-viewer/test/example.junit.xml new file mode 100644 index 000000000000..a87b270fe2f3 --- /dev/null +++ b/pkgs/by-name/xu/xunit-viewer/test/example.junit.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/pkgs/by-name/xu/xunit-viewer/test/example.nix b/pkgs/by-name/xu/xunit-viewer/test/example.nix new file mode 100644 index 000000000000..574b9d784951 --- /dev/null +++ b/pkgs/by-name/xu/xunit-viewer/test/example.nix @@ -0,0 +1,16 @@ +{ xunit-viewer, runCommand, ... }: + +runCommand "test-xunit-viewer" { + nativeBuildInputs = [ xunit-viewer ]; +} '' + mkdir $out + xunit-viewer -r ${./example.junit.xml} -o $out/index.html + ( set -x + grep '