quickcheck-classes-base: QuickCheck common typeclasses from `base`

[ bsd3, library, testing ] [ Propose Tags ]

This libary is a minimal variant of `quickcheck-classes` that only provides laws for typeclasses from base. The main purpose of splitting this out is so that primitive can depend on `quickcheck-classes-base` in its test suite, avoiding the circular dependency that arises if `quickcheck-classes` is used instead.

This library provides QuickCheck properties to ensure that typeclass instances adhere to the set of laws that they are supposed to. There are other libraries that do similar things, such as `genvalidity-hspec` and checkers. This library differs from other solutions by not introducing any new typeclasses that the user needs to learn.

Note: on GHC < 8.5, this library uses the higher-kinded typeclasses (Data.Functor.Classes.Show1, Data.Functor.Classes.Eq1, Data.Functor.Classes.Ord1, etc.), but on GHC >= 8.5, it uses `-XQuantifiedConstraints` to express these constraints more cleanly.

Modules

[Index] [Quick Jump]

Flags

Manual Flags

NameDescriptionDefault
unary-laws

Include infrastructure for testing class laws of unary type constructors.

Enabled
binary-laws

Include infrastructure for testing class laws of binary type constructors. Disabling `unary-laws` while keeping `binary-laws` enabled is an unsupported configuration.

Enabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.6.0.0, 0.6.1.0, 0.6.2.0
Change log changelog.md
Dependencies base (>=4.5 && <5), base-orphans (>=0.1), bifunctors, containers (>=0.4.2.1), contravariant, fail, ghc-prim, QuickCheck (>=2.10.0), semigroups (>=0.17), tagged, transformers (>=0.5.0 && <0.6) [details]
License BSD-3-Clause
Copyright 2019 Andrew Martin
Author Andrew Martin, chessai
Maintainer andrew.thaddeus@gmail.com
Category Testing
Home page https://github.com/andrewthad/quickcheck-classes#readme
Source repo head: git clone https://github.com/andrewthad/quickcheck-classes
Uploaded by andrewthad at 2019-08-08T17:14:51Z
Distributions Arch:0.6.2.0, LTSHaskell:0.6.2.0, NixOS:0.6.2.0, Stackage:0.6.2.0
Reverse Dependencies 2 direct, 5 indirect [details]
Downloads 6170 total (64 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2019-08-08 [all 1 reports]