Subject: [bug#49867] [PATCH v2 11/31] gnu: Add ocaml-crowbar.

From: pukkamustard <[email-masked]>
Date: Mon, 9 Aug 2021 07:01:04 +0000

* gnu/packages/ocaml.scm (ocaml-crowbar): New variable.
---
 gnu/packages/ocaml.scm | 36 ++++++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 5a7acb4ba8..dba715d2f5 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7528,6 +7528,42 @@ breaks, while respecting the constraints imposed by the structure of the
 document and by the text width.")
     (license license:lgpl2.0)))
 
+(define-public ocaml-crowbar
+  (package
+    (name "ocaml-crowbar")
+    (version "0.2")
+    (home-page "https://github.com/stedolan/crowbar")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url home-page)
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "0wjfc9irvirfkic32ivvj6qb7r838w08b0d3vmngigbjpjyc9b14"))))
+    (build-system dune-build-system)
+    (arguments
+     ;; Tests require ocaml-xmldiff which requires OCaml 4.12.0
+     `(#:tests? #f))
+    (propagated-inputs
+     `(("ocaml-ocplib-endian" ,ocaml-ocplib-endian)
+       ("ocaml-cmdliner" ,ocaml-cmdliner)
+       ("ocaml-afl-persistent" ,ocaml-afl-persistent)))
+    (native-inputs
+     `(("ocaml-calendar" ,ocaml-calendar)
+       ("ocaml-fpath" ,ocaml-fpath)
+       ("ocaml-uucp" ,ocaml-uucp)
+       ("ocaml-uunf" ,ocaml-uunf)
+       ("ocaml-uutf" ,ocaml-uutf)
+       ("ocaml-pprint" ,ocaml-pprint)))
+    (synopsis "Ocaml library for tests, let a fuzzer find failing cases")
+    (description "Crowbar is a library for testing code, combining QuickCheck-style
+property-based testing and the magical bug-finding powers of
+[afl-fuzz](http://lcamtuf.coredump.cx/afl/).")
+    (license license:expat)))
+
 (define-public js-of-ocaml
   (package
     (name "js-of-ocaml")
-- 
2.32.0