about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/development/ocaml-modules/junit/alcotest.nix14
-rw-r--r--pkgs/development/ocaml-modules/junit/default.nix26
-rw-r--r--pkgs/development/ocaml-modules/junit/ounit.nix14
-rw-r--r--pkgs/top-level/ocaml-packages.nix4
4 files changed, 58 insertions, 0 deletions
diff --git a/pkgs/development/ocaml-modules/junit/alcotest.nix b/pkgs/development/ocaml-modules/junit/alcotest.nix
new file mode 100644
index 0000000000000..85abaf7f872b1
--- /dev/null
+++ b/pkgs/development/ocaml-modules/junit/alcotest.nix
@@ -0,0 +1,14 @@
+{ buildDunePackage, junit, alcotest }:
+
+buildDunePackage ({
+  pname = "junit_alcotest";
+
+  inherit (junit) src version meta useDune2;
+
+  propagatedBuildInputs = [
+    junit
+    alcotest
+  ];
+
+  doCheck = false; # 2 tests fail: 1) "Test with unexpected exception"; 2) "with wrong result";
+})
diff --git a/pkgs/development/ocaml-modules/junit/default.nix b/pkgs/development/ocaml-modules/junit/default.nix
new file mode 100644
index 0000000000000..c91625e823b0d
--- /dev/null
+++ b/pkgs/development/ocaml-modules/junit/default.nix
@@ -0,0 +1,26 @@
+{ lib, fetchurl, buildDunePackage, ptime, tyxml }:
+
+buildDunePackage (rec {
+  pname = "junit";
+  version = "2.0.2";
+
+  src = fetchurl {
+    url = "https://github.com/Khady/ocaml-junit/releases/download/${version}/junit-${version}.tbz";
+    sha256 = "00bbx5j8vsy9fqbc04xa3lsalaxicirmbczr65bllfk1afv43agx";
+  };
+
+  propagatedBuildInputs = [
+    ptime
+    tyxml
+  ];
+
+  useDune2 = true;
+  doCheck = true;
+
+  meta = with lib; {
+    description = "ocaml-junit is an OCaml package for the creation of JUnit XML reports, proving a typed API to produce valid reports acceptable to Jenkins, comes with packages supporting OUnit and Alcotest.";
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ superherointj ];
+    homepage = "https://github.com/Khady/ocaml-junit";
+  };
+})
diff --git a/pkgs/development/ocaml-modules/junit/ounit.nix b/pkgs/development/ocaml-modules/junit/ounit.nix
new file mode 100644
index 0000000000000..5f261b07236f8
--- /dev/null
+++ b/pkgs/development/ocaml-modules/junit/ounit.nix
@@ -0,0 +1,14 @@
+{ buildDunePackage, junit, ounit }:
+
+buildDunePackage ({
+  pname = "junit_ounit";
+
+  inherit (junit) src version meta useDune2;
+
+  propagatedBuildInputs = [
+    junit
+    ounit
+  ];
+
+  doCheck = true;
+})
diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix
index b58fe1f4294ea..11d511c9c949f 100644
--- a/pkgs/top-level/ocaml-packages.nix
+++ b/pkgs/top-level/ocaml-packages.nix
@@ -543,6 +543,10 @@ let
 
     jsonm = callPackage ../development/ocaml-modules/jsonm { };
 
+    junit = callPackage ../development/ocaml-modules/junit { };
+    junit_ounit = callPackage ../development/ocaml-modules/junit/ounit.nix { };
+    junit_alcotest = callPackage ../development/ocaml-modules/junit/alcotest.nix { };
+
     jwto = callPackage ../development/ocaml-modules/jwto { };
 
     kafka = callPackage ../development/ocaml-modules/kafka { };