cabal-version: 3.0

name: skeletest
version: 0.1.0
x-revision: 1
synopsis: Batteries-included, opinionated test framework
description: Batteries-included, opinionated test framework. See README.md for more details.
homepage: https://github.com/brandonchinn178/skeletest#readme
bug-reports: https://github.com/brandonchinn178/skeletest/issues
author: Brandon Chinn <brandonchinn178@gmail.com>
maintainer: Brandon Chinn <brandonchinn178@gmail.com>
license: BSD-3-Clause
license-file: LICENSE.md
category: Testing
build-type: Simple
extra-source-files:
  README.md
  CHANGELOG.md
  test/__snapshots__/ExampleSpec.snap.md
  test/Skeletest/__snapshots__/AssertionsSpec.snap.md
  test/Skeletest/__snapshots__/PropSpec.snap.md
  test/Skeletest/__snapshots__/MainSpec.snap.md
  test/Skeletest/__snapshots__/PredicateSpec.snap.md
  test/Skeletest/Internal/__snapshots__/SnapshotSpec.snap.md
  test/Skeletest/Internal/__snapshots__/CLISpec.snap.md
  test/Skeletest/Internal/__snapshots__/FixturesSpec.snap.md
  test/Skeletest/Internal/__snapshots__/TestTargetsSpec.snap.md
  test/Skeletest/Internal/__snapshots__/SpecSpec.snap.md

source-repository head
  type: git
  location: https://github.com/brandonchinn178/skeletest

library
  hs-source-dirs: src
  exposed-modules:
    Skeletest
    Skeletest.Assertions
    Skeletest.Internal.CLI
    Skeletest.Internal.Constants
    Skeletest.Internal.Error
    Skeletest.Internal.Fixtures
    Skeletest.Internal.GHC
    Skeletest.Internal.GHC.Compat
    Skeletest.Internal.Markers
    Skeletest.Internal.Plugin
    Skeletest.Internal.Predicate
    Skeletest.Internal.Preprocessor
    Skeletest.Internal.Snapshot
    Skeletest.Internal.Spec
    Skeletest.Internal.TestInfo
    Skeletest.Internal.TestRunner
    Skeletest.Internal.TestTargets
    Skeletest.Internal.Utils.Color
    Skeletest.Internal.Utils.Diff
    Skeletest.Internal.Utils.HList
    Skeletest.Internal.Utils.Map
    Skeletest.Main
    Skeletest.Plugin
    Skeletest.Predicate
    Skeletest.Prop.Gen
    Skeletest.Prop.Internal
    Skeletest.Prop.Range
  if impl(ghc >= 9.6) && impl(ghc < 9.8)
    other-modules:
        Skeletest.Internal.GHC.Compat_9_6
  if impl(ghc >= 9.8) && impl(ghc < 9.10)
    other-modules:
        Skeletest.Internal.GHC.Compat_9_8
  if impl(ghc >= 9.10) && impl(ghc < 9.12)
    other-modules:
        Skeletest.Internal.GHC.Compat_9_10
  build-depends:
      base < 5
    , aeson
    , aeson-pretty
    , ansi-terminal >= 0.4.0
    , containers
    , Diff >= 0.5 && < 1.0
    , directory
    , filepath
    , ghc ^>= 9.6 || ^>= 9.8 || ^>= 9.10
    , hedgehog
    , megaparsec
    , ordered-containers >= 0.2.4
    , parser-combinators
    , pretty
    , recover-rtti
    , template-haskell
    , text
    , transformers
    , unliftio >= 0.2.17
  default-language: GHC2021
  ghc-options: -Wall -Wcompat

executable skeletest-preprocessor
  main-is: src/bin/skeletest-preprocessor.hs
  build-depends:
      base
    , skeletest
    , text
  default-language: GHC2021
  ghc-options: -Wall -Wcompat

test-suite skeletest-tests
  type: exitcode-stdio-1.0
  ghc-options: -F -pgmF=skeletest-preprocessor
  build-tool-depends: skeletest:skeletest-preprocessor
  hs-source-dirs: test
  main-is: Main.hs
  other-modules:
    ExampleSpec
    Skeletest.AssertionsSpec
    Skeletest.Internal.CLISpec
    Skeletest.Internal.FixturesSpec
    Skeletest.Internal.SnapshotSpec
    Skeletest.Internal.SpecSpec
    Skeletest.Internal.TestTargetsSpec
    Skeletest.MainSpec
    Skeletest.PredicateSpec
    Skeletest.PropSpec
    Skeletest.TestUtils.Integration
  build-depends:
      base
    , aeson
    , containers
    , directory
    , filepath
    , skeletest
    , process
    , text
    , unliftio
  default-language: GHC2021
  ghc-options: -Wall -Wcompat