diff options
author | Robert Hensing <robert@roberthensing.nl> | 2024-06-16 14:30:24 +0200 |
---|---|---|
committer | Robert Hensing <robert@roberthensing.nl> | 2024-06-16 14:30:49 +0200 |
commit | 5b8c64f198ff59b13c651ac80967f6052f6f987b (patch) | |
tree | ebf0659e51a6437a15f37f66f41612472d523dcf /pkgs/by-name/xu | |
parent | 23ab0c4be36143056181b791519eb7b94ff569c5 (diff) |
xunit-viewer: Add basic tests
Diffstat (limited to 'pkgs/by-name/xu')
-rw-r--r-- | pkgs/by-name/xu/xunit-viewer/package.nix | 10 | ||||
-rw-r--r-- | pkgs/by-name/xu/xunit-viewer/test/example.junit.xml | 8 | ||||
-rw-r--r-- | pkgs/by-name/xu/xunit-viewer/test/example.nix | 16 |
3 files changed, 34 insertions, 0 deletions
diff --git a/pkgs/by-name/xu/xunit-viewer/package.nix b/pkgs/by-name/xu/xunit-viewer/package.nix index 4978ababd1b5e..7c31b82aac7b3 100644 --- a/pkgs/by-name/xu/xunit-viewer/package.nix +++ b/pkgs/by-name/xu/xunit-viewer/package.nix @@ -3,6 +3,8 @@ buildNpmPackage, fetchFromGitHub, nix-update-script, + callPackage, + testers, xunit-viewer, }: let version = "10.6.1"; @@ -22,6 +24,14 @@ buildNpmPackage { 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"; 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 0000000000000..a87b270fe2f3f --- /dev/null +++ b/pkgs/by-name/xu/xunit-viewer/test/example.junit.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- taken from the nix test suite and then stripped down --> +<testsuites tests="280" failures="0" disabled="2" errors="0" time="0.2" timestamp="2024-06-16T13:50:02.511" name="AllTests"> + <testsuite name="parseShebangContent" tests="14" failures="0" disabled="0" skipped="0" errors="0" time="0.001" timestamp="2024-06-16T13:50:02.511"> + <testcase name="basic" file="tests/unit/libutil/args.cc" line="10" status="run" result="completed" time="0." timestamp="2024-06-16T13:50:02.511" classname="parseShebangContent" /> + <testcase name="empty" file="tests/unit/libutil/args.cc" line="18" status="run" result="completed" time="0." timestamp="2024-06-16T13:50:02.511" classname="parseShebangContent" /> + </testsuite> +</testsuites> 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 0000000000000..574b9d784951e --- /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 '<body' $out/index.html + # Can't easily grep for parts of the original data, because it ends up + # embedded as base64 encoded data (and slightly modified?). + # We'd have to really dissect it or render it with a browser. + # Fortunately, we've already caught the most severe packaging problems + # with just this. + ) +'' |