cabal-version: 2.2

name:                   tasty-discover
version:                4.2.4
synopsis:               Test discovery for the tasty framework.
description:            Automatic test discovery and runner for the tasty framework.
                      
                        Prefix your test case names and tasty-discover will discover, collect and run them.
                      
                        All popular test libraries are covered. Configure once and then just write your tests.
                        Avoid forgetting to add test modules to your Cabal/Hpack files.
                      
                        Tasty ingredients are included along with various configuration options for different
                        use cases.
                      
                        Please see the `README.md` below for how to get started.
category:               Testing
stability:              Experimental
homepage:               https://github.com/haskell-works/tasty-discover
bug-reports:            https://github.com/haskell-works/tasty-discover/issues
author:                 Luke Murphy
maintainer:             John Ky <newhoggy@gmail.com>
copyright:              2016 Luke Murphy
                        2020-2021 John Ky
license:                MIT
license-file:           LICENSE
tested-with:            GHC == 9.2.2, GHC == 9.0.2, GHC == 8.10.7, GHC == 8.8.4, GHC == 8.6.5
build-type:             Simple
extra-source-files:     CHANGELOG.md
                        README.md

source-repository head
  type: git
  location: https://github.com/haskell-works/tasty-discover

common base                       { build-depends: base                       >= 4.11       && < 5      }

common bytestring                 { build-depends: bytestring                 >= 0.9      && < 1.0      }
common containers                 { build-depends: containers                 >= 0.4      && < 1.0      }
common directory                  { build-depends: directory                  >= 1.1      && < 2.0      }
common filepath                   { build-depends: filepath                   >= 1.3      && < 2.0      }
common Glob                       { build-depends: Glob                       >= 0.8      && < 1.0      }
common hedgehog                   { build-depends: hedgehog                   >= 1.0      && < 2.0      }
common hspec                      { build-depends: hspec                      >= 2.7      && < 2.9      }
common hspec-core                 { build-depends: hspec-core                 >= 2.7.10   && < 2.11     }
common tasty                      { build-depends: tasty                      >= 1.3      && < 2.0      }
common tasty-discover             { build-depends: tasty-discover             >= 4.0      && < 5.0      }
common tasty-golden               { build-depends: tasty-golden               >= 2.0      && < 3.0      }
common tasty-hedgehog             { build-depends: tasty-hedgehog             >= 1.1      && < 2.0      }
common tasty-hspec                { build-depends: tasty-hspec                >= 1.1      && < 1.3      }
common tasty-hunit                { build-depends: tasty-hunit                >= 0.10     && < 0.11     }
common tasty-quickcheck           { build-depends: tasty-quickcheck           >= 0.10     && < 0.11     }
common tasty-smallcheck           { build-depends: tasty-smallcheck           >= 0.8      && < 1.0      }

library
  exposed-modules:      Test.Tasty.Discover
                        Test.Tasty.Discover.Internal.Config
                        Test.Tasty.Discover.Internal.Driver
                        Test.Tasty.Discover.Internal.Generator
                        Test.Tasty.Discover.TastyInfo
                        Test.Tasty.Discover.Version
  other-modules:        Paths_tasty_discover
  autogen-modules:      Paths_tasty_discover
  hs-source-dirs:       src
  ghc-options:          -Wall
  build-depends:        base            >= 4.8      && < 5.0
                      , Glob            >= 0.8      && < 1.0
                      , containers      >= 0.4      && < 1.0
                      , directory       >= 1.1      && < 2.0
                      , filepath        >= 1.3      && < 2.0
                      , tasty           >= 1.3      && < 2.0
  default-language:     Haskell2010

executable              tasty-discover
  import:               base
                      , Glob
                      , containers
                      , directory
                      , filepath
  main-is:              executable/Main.hs
  autogen-modules:      Paths_tasty_discover
  other-modules:        Paths_tasty_discover
  ghc-options:          -Wall
  build-depends:        tasty-discover
  default-language:     Haskell2010

test-suite tasty-discover-test
  import:               base
                      , Glob
                      , bytestring
                      , containers
                      , directory
                      , filepath
                      , hedgehog
                      , hspec
                      , hspec-core
                      , tasty
                      , tasty-golden
                      , tasty-hedgehog
                      , tasty-hspec
                      , tasty-hunit
                      , tasty-quickcheck
                      , tasty-smallcheck
  type:                 exitcode-stdio-1.0
  main-is:              Driver.hs
  ghc-options:          -threaded -rtsopts -with-rtsopts=-N
  other-modules:        ConfigTest
                        DiscoverTest
                        SubMod.FooBaz
                        SubMod.PropTest
                        SubMod.SubSubMod.PropTest
                        Paths_tasty_discover
  autogen-modules:      Paths_tasty_discover
  hs-source-dirs:       test
  ghc-options:          -Wall
  build-depends:        tasty-discover
  default-language:     Haskell2010
  build-tool-depends:   tasty-discover:tasty-discover
