packages feed

tasty-falsify-0.1.0: tasty-falsify.cabal

cabal-version:      3.0
name:               tasty-falsify
version:            0.1.0
synopsis:           Integration of @falsify@ with the @tasty@ test framework
description:        Typically @falsify@ properties are run as part of a larger
                    test suite; this package provides the necessary
                    infrastructure for checking @falsify@ properties in a
                    @tasty@ test suite.

license:            BSD-3-Clause
license-file:       LICENSE
author:             Edsko de Vries
maintainer:         edsko@well-typed.com
copyright:          Well-Typed LLP
category:           Testing
build-type:         Simple
extra-doc-files:    CHANGELOG.md
tested-with:        GHC==8.10.7
                  , GHC==9.0.2
                  , GHC==9.2.8
                  , GHC==9.4.8
                  , GHC==9.6.7
                  , GHC==9.8.4
                  , GHC==9.10.3
                  , GHC==9.12.4
                  , GHC==9.14.1

source-repository head
  type:     git
  location: https://github.com/well-typed/falsify

common lang
  ghc-options:
      -Wall
      -Wredundant-constraints
      -Widentities
  build-depends:
      base >= 4.12 && < 4.23
  default-language:
      Haskell2010
  default-extensions:
      BangPatterns
      DataKinds
      DefaultSignatures
      DeriveAnyClass
      DeriveFoldable
      DeriveFunctor
      DeriveGeneric
      DeriveTraversable
      DerivingStrategies
      DerivingVia
      DisambiguateRecordFields
      FlexibleContexts
      FlexibleInstances
      GADTs
      GeneralizedNewtypeDeriving
      InstanceSigs
      KindSignatures
      LambdaCase
      MultiParamTypeClasses
      MultiWayIf
      NamedFieldPuns
      NumericUnderscores
      PatternSynonyms
      QuantifiedConstraints
      RankNTypes
      ScopedTypeVariables
      StandaloneDeriving
      TupleSections
      TypeApplications
      TypeOperators
      ViewPatterns

  if impl(ghc >= 9.2)
    ghc-options: -Wunused-packages

library
  import:
      lang
  exposed-modules:
      Test.Tasty.Falsify
  other-modules:
      Test.Tasty.Falsify.CLI
      Test.Tasty.Falsify.Options
      Test.Tasty.Falsify.Test
  hs-source-dirs:
      src
  build-depends:
    , data-default         >= 0.7  && < 0.9
    , falsify              >= 0.4  && < 0.5
    , optparse-applicative >= 0.16 && < 0.20
    , tagged               >= 0.8  && < 0.9
    , tasty                >= 1.3  && < 1.6

test-suite test-tasty-falsify
  import:
      lang
  type:
      exitcode-stdio-1.0
  hs-source-dirs:
      test
  main-is:
      Main.hs
  other-modules:
      TestSuite.Generator.Compound
      TestSuite.Generator.Context
      TestSuite.Generator.Function
      TestSuite.Generator.Marking
      TestSuite.Generator.Precision
      TestSuite.Generator.Prim
      TestSuite.Generator.Selective
      TestSuite.Generator.Shrinking
      TestSuite.Generator.Simple
      TestSuite.Util.List
  build-depends:
      -- Inherited bounds from the main library
    , data-default
    , falsify
    , tasty
    , tasty-falsify
  build-depends:
    , containers >= 0.6  && < 0.9
    , QuickCheck >= 2.14 && < 2.19
    , selective  >= 0.4  && < 0.8