packages feed

quickcheck-monoid-subclasses-0.3.0.7: quickcheck-monoid-subclasses.cabal

cabal-version:  3.0
name:           quickcheck-monoid-subclasses
version:        0.3.0.7
bug-reports:    https://github.com/jonathanknowles/quickcheck-monoid-subclasses/issues
license:        Apache-2.0
license-file:   LICENSE
author:         Jonathan Knowles
maintainer:     mail@jonathanknowles.net
copyright:      2022–2026 Jonathan Knowles
category:       Testing
synopsis:       Testing monoid subclass instances with QuickCheck
description:

  QuickCheck support for testing instances of type classes defined in the
  monoid-subclasses library.

extra-doc-files:
    CHANGELOG.md
    README.md

common dependency-base
    build-depends:base                        >= 4.14.3.0     && < 4.23
common dependency-bytestring
    build-depends:bytestring                  >= 0.10.12.0    && < 0.13
common dependency-commutative-semigroups
    build-depends:commutative-semigroups      >= 0.1.0.0      && < 0.3
common dependency-containers
    build-depends:containers                  >= 0.6.5.1      && < 0.9
common dependency-hspec
    build-depends:hspec                       >= 2.10.7       && < 2.12
common dependency-hspec-quickcheck-classes
    build-depends:hspec-quickcheck-classes    >= 0.0.0.0      && < 0.1
common dependency-monoid-subclasses
    build-depends:monoid-subclasses           >= 1.2.3        && < 1.3
common dependency-pretty-show
    build-depends:pretty-show                 >= 1.10         && < 1.11
common dependency-QuickCheck
    build-depends:QuickCheck                  >= 2.14.2       && < 2.19
common dependency-quickcheck-classes
    build-depends:quickcheck-classes          >= 0.6.5.0      && < 0.7
common dependency-semigroupoids
    build-depends:semigroupoids               >= 5.3.7        && < 6.1
common dependency-text
    build-depends:text                        >= 1.2.4.1      && < 2.2
common dependency-vector
    build-depends:vector                      >= 0.12.3.1     && < 0.14

common extensions
    default-extensions:
        ConstraintKinds
        DataKinds
        DerivingStrategies
        FlexibleContexts
        FlexibleInstances
        GeneralizedNewtypeDeriving
        LambdaCase
        NoImplicitPrelude
        PolyKinds
        ScopedTypeVariables
        TypeApplications
        ViewPatterns

source-repository head
    type: git
    location: https://github.com/jonathanknowles/quickcheck-monoid-subclasses

library
    import:
      , dependency-base
      , dependency-monoid-subclasses
      , dependency-QuickCheck
      , dependency-quickcheck-classes
      , extensions
    build-depends:
      , internal
    default-language:
        Haskell2010
    hs-source-dirs:
        src/public
    exposed-modules:
        Test.QuickCheck.Classes.Monoid.Factorial
        Test.QuickCheck.Classes.Monoid.GCD
        Test.QuickCheck.Classes.Monoid.LCM
        Test.QuickCheck.Classes.Monoid.Monus
        Test.QuickCheck.Classes.Monoid.Null
        Test.QuickCheck.Classes.Semigroup.Cancellative
        Test.QuickCheck.Classes.Semigroup.Factorial

library internal
    import:
      , dependency-base
      , dependency-pretty-show
      , dependency-QuickCheck
      , dependency-semigroupoids
      , extensions
    default-language:
        Haskell2010
    hs-source-dirs:
        src/internal
    exposed-modules:
        Internal
        Internal.Semigroup.Eq
        Internal.Semigroup.Tuple

library prelude
    import:
      , dependency-base
      , dependency-containers
      , dependency-monoid-subclasses
      , dependency-QuickCheck
      , dependency-quickcheck-classes
      , extensions
    build-depends:
      , internal
      , quickcheck-monoid-subclasses
    default-language:
        Haskell2010
    hs-source-dirs:
        src/prelude
    exposed-modules:
        Internal.Prelude

test-suite test
    import:
      , dependency-base
      , dependency-bytestring
      , dependency-commutative-semigroups
      , dependency-containers
      , dependency-hspec
      , dependency-hspec-quickcheck-classes
      , dependency-monoid-subclasses
      , dependency-QuickCheck
      , dependency-quickcheck-classes
      , dependency-text
      , dependency-vector
      , extensions
    build-depends:
      , quickcheck-monoid-subclasses
    default-language:
        Haskell2010
    ghc-options:
        -threaded -with-rtsopts=-N
    main-is:
        Spec.hs
    hs-source-dirs:
        src/test
    other-modules:
        ClassSpec
        SpecHook
    type:
        exitcode-stdio-1.0
    build-tool-depends:
        hspec-discover:hspec-discover == 2.*