forked from cdsmith/explainable-predicates
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathexplainable-predicates.cabal
110 lines (90 loc) · 3.73 KB
/
explainable-predicates.cabal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
cabal-version: 2.4
name: explainable-predicates
version: 0.1.2.4
synopsis: Predicates that can explain themselves.
description: Explainable predicates are essentially functions from types
to 'Bool' which can additionally describe themselves and
explain why an argument does or doesn't match. They are
intended to be used during unit tests to provide better
error messages when tests fail. For example, if a
collection is missing an element, an explainable predicate
can tell you which element is missing.
category: Testing
homepage: https://github.com/cdsmith/explainable-predicates
bug-reports: https://github.com/cdsmith/explainable-predicates/issues
license: BSD-3-Clause
license-file: LICENSE
author: Chris Smith <[email protected]>
maintainer: Chris Smith <[email protected]>
extra-source-files: CHANGELOG.md, README.md
tested-with: GHC == 8.6.5 || == 8.8.4 || == 8.10.7 || == 9.0.2 || == 9.2.8 || == 9.4.8 || == 9.6.5 || == 9.8.2 || == 9.10.1
source-repository head
type: git
location: git://github.com/cdsmith/explainable-predicates.git
flag regex
description: Enable regular expression matching
manual: True
default: True
flag containers
description: Enable container matching, which depends on mono-traversable
manual: True
default: True
flag quickcheck
description: Enable QuickCheck integration
manual: True
default: True
flag hunit
description: Enable HUnit/Hspec integration
manual: True
default: True
flag dev
description: Developer build
manual: True
default: False
library
exposed-modules: Test.Predicates,
Test.Predicates.Internal.FlowMatcher
other-modules: Test.Predicates.Internal.Util
build-depends: array >= 0.5.2 && < 0.6,
base >=4.12.0 && < 4.21,
syb >= 0.7.2 && < 0.8,
template-haskell >= 2.13.0 && < 2.23,
hs-source-dirs: src
default-language: Haskell2010
ghc-options: -Wall -Wcompat -Wincomplete-uni-patterns
if flag(regex)
build-depends: regex-tdfa >= 1.3.1 && < 1.4,
cpp-options: -DREGEX
if flag(containers)
build-depends: mono-traversable >= 1.0.15 && < 1.1,
cpp-options: -DCONTAINERS
if flag(quickcheck)
build-depends: QuickCheck >= 2.8 && < 2.15,
exposed-modules: Test.Predicates.QuickCheck
if flag(hunit)
build-depends: HUnit >= 1.3.0 && < 1.7,
exposed-modules: Test.Predicates.HUnit
if flag(dev)
ghc-options: -Werror
test-suite tests
type: exitcode-stdio-1.0
main-is: Main.hs
build-depends: base,
doctest-exitcode-stdio,
doctest-lib,
explainable-predicates,
hspec,
hs-source-dirs: test
default-language: Haskell2010
ghc-options: -threaded -Wall -Wcompat -Wincomplete-uni-patterns
if flag(regex)
cpp-options: -DREGEX
if flag(containers)
cpp-options: -DCONTAINERS
if flag(regex) && flag(containers)
other-modules: DocTests.All,
DocTests.Test.Predicates,
DocTests.Test.Predicates.Internal.FlowMatcher
cpp-options: -DDOCTESTS
if flag(dev)
ghc-options: -Werror