gnu: sbcl-cl-cffi-gtk: Update to 20200417.
[jackhill/guix/guix.git] / gnu / packages / haskell-check.scm
index ea7f30e..c6e8946 100644 (file)
@@ -10,6 +10,7 @@
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Tonton <tonton@riseup.net>
 ;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
+;;; Copyright © 2019 Timothy Sample <samplet@ngyro.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -184,6 +185,36 @@ you combine your unit tests, golden tests, QuickCheck/SmallCheck properties,
 and any other types of tests into a single test suite.")
     (license license:expat)))
 
+(define-public ghc-tasty-hedgehog
+  (package
+    (name "ghc-tasty-hedgehog")
+    (version "1.0.0.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://hackage.haskell.org/package/"
+                           "tasty-hedgehog/tasty-hedgehog-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1mbg5q0c0xfrk4npfj60pi693igb7r5l78x6xf9fk2jglw0nmxhz"))))
+    (build-system haskell-build-system)
+    (inputs
+     `(("ghc-tagged" ,ghc-tagged)
+       ("ghc-tasty" ,ghc-tasty)
+       ("ghc-hedgehog" ,ghc-hedgehog)))
+    (native-inputs
+     `(("ghc-tasty-expected-failure" ,ghc-tasty-expected-failure)))
+    (arguments
+     `(#:cabal-revision
+       ("1" "1n6797fm8swyrk8cw7zxz593gq82wx8dayvm204rmgcz75bslcpn")))
+    (home-page "https://github.com/qfpl/tasty-hedgehog")
+    (synopsis "Integration for tasty and hedgehog")
+    (description "This package provides the means for integrating the
+@url{https://hackage.haskell.org/package/hedgehog, hedgehog testing library}
+with the @url{https://hackage.haskell.org/package/tasty, tasty testing
+framework}.")
+    (license license:bsd-3)))
+
 (define-public ghc-tasty-hunit
   (package
     (name "ghc-tasty-hunit")
@@ -231,6 +262,31 @@ test framework.")
 tasty.")
     (license license:expat)))
 
+(define-public ghc-tasty-lua
+  (package
+    (name "ghc-tasty-lua")
+    (version "0.2.0.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://hackage.haskell.org/package/"
+                           "tasty-lua/tasty-lua-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0xlj36rrhkx312h7smx6ay20rhlhxvw2ma2ckdnzv1pvmdn6p5qx"))))
+    (build-system haskell-build-system)
+    (inputs
+     `(("ghc-file-embed" ,ghc-file-embed)
+       ("ghc-hslua" ,ghc-hslua)
+       ("ghc-tasty" ,ghc-tasty)))
+    (native-inputs
+     `(("ghc-tasty-hunit" ,ghc-tasty-hunit)))
+    (home-page "https://github.com/hslua/tasty-lua")
+    (synopsis "Write tests in Lua, integrate into tasty")
+    (description "This package gives users the ability to define tasty tests
+from Lua.")
+    (license license:expat)))
+
 (define-public ghc-tasty-th
   (package
     (name "ghc-tasty-th")
@@ -261,7 +317,7 @@ test-framework.")
 (define-public ghc-tasty-rerun
   (package
     (name "ghc-tasty-rerun")
-    (version "1.1.12")
+    (version "1.1.14")
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -269,7 +325,7 @@ test-framework.")
                     "tasty-rerun-" version ".tar.gz"))
               (sha256
                (base32
-                "05lp4zy6lwd916snq6hs43848n62j9vdfl3s8sfivqydrax0vvd8"))))
+                "0s0zj8ds4g1w2cjzm2lh25ivg962jigqdrbj08v3dbz64lx4mlzr"))))
     (build-system haskell-build-system)
     (inputs
      `(("ghc-optparse-applicative" ,ghc-optparse-applicative)
@@ -795,7 +851,7 @@ implementations of cryptographic ciphers.")
 (define-public ghc-hedgehog
   (package
     (name "ghc-hedgehog")
-    (version "0.6.1")
+    (version "1.0.1")
     (source
      (origin
        (method url-fetch)
@@ -805,13 +861,14 @@ implementations of cryptographic ciphers.")
              ".tar.gz"))
        (sha256
         (base32
-         "0xz10ycdm5vk9nrcym1fi83k19frfwqz18bz8bnpzwvaj0j41yfj"))))
+         "1qc7hkqbnsk3f5r26wc35r3qiy941nmcxhfqgcq9027kw4gs0bi0"))))
     (build-system haskell-build-system)
     (inputs
      `(("ghc-ansi-terminal" ,ghc-ansi-terminal)
        ("ghc-async" ,ghc-async)
        ("ghc-concurrent-output" ,ghc-concurrent-output)
        ("ghc-exceptions" ,ghc-exceptions)
+       ("ghc-fail" ,ghc-fail)
        ("ghc-lifted-async" ,ghc-lifted-async)
        ("ghc-mmorph" ,ghc-mmorph)
        ("ghc-monad-control" ,ghc-monad-control)
@@ -856,3 +913,53 @@ To get started quickly, see the examples:
 configuration.  This library provides the common bits for writing custom
 @file{Setup.hs} files.")
     (license license:bsd-3)))
+
+(define-public ghc-testing-type-modifiers
+  (package
+    (name "ghc-testing-type-modifiers")
+    (version "0.1.0.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append "https://hackage.haskell.org/package/"
+                            "testing-type-modifiers/testing-type-modifiers-"
+                            version ".tar.gz"))
+        (sha256
+          (base32
+            "1wh2n95n39ivv6kbqn42vbzrj8zagsmk6f2al2qj40bg5kgdl2q5"))))
+    (build-system haskell-build-system)
+    (home-page "https://hackage.haskell.org/package/testing-type-modifiers")
+    (synopsis "Data type modifiers for property based testing")
+    (description "Property based testing libraries such as QuickCheck tend to
+include type modifiers.  Most of them are used to quantify over subsets of a
+type.  This library is intended to supply these modifiers to be used by
+testing libraries, in an effort to make properties more portable between
+testing frameworks.")
+    (license license:unlicense)))
+
+(define-public ghc-testing-feat
+  (package
+    (name "ghc-testing-feat")
+    (version "1.1.0.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append "https://hackage.haskell.org/package/"
+                            "testing-feat/testing-feat-" version ".tar.gz"))
+        (sha256
+          (base32
+            "1v2qzzpf1s008g7q6q67glf7vbm1pkpq4rc3ii74f4g6vhfx610r"))))
+    (build-system haskell-build-system)
+    (inputs
+      `(("ghc-quickcheck" ,ghc-quickcheck)
+        ("ghc-size-based" ,ghc-size-based)
+        ("ghc-testing-type-modifiers" ,ghc-testing-type-modifiers)
+        ("ghc-semigroups" ,ghc-semigroups)))
+    (home-page "https://github.com/JonasDuregard/testing-feat")
+    (synopsis "Functional Enumeration of Algebraic Types")
+    (description "Feat (Functional Enumeration of Algebraic Types)
+provides enumerations as functions from natural numbers to
+values (similar to @code{toEnum} but for any algebraic data type).  This
+can be used for SmallCheck-style systematic testing, QuickCheck-style
+random testing, and hybrids of the two.")
+    (license license:bsd-3)))