Cabal 不执行 quickCheck 测试

Cabal not performing quickCheck test

我正在编写一个 cabal 文件来安装一个用 Haskell 编写的库。我想在安装时执行一些测试(用 quickCheck 编写)。

cabal 文件如下所示:

...
build-type:          Simple
cabal-version:       >=1.8


Test-Suite my_tests
  Type:               exitcode-stdio-1.0
  Hs-Source-Dirs:     test
  Main-is:            Tests.hs

Library
  Hs-Source-Dirs:     src
  Exposed-modules:      HsMesher.Fonctions
                      , HsMesher.Types
                      , HsMesher.Algorithmes1D.Arcs
                      , HsMesher.Algorithmes1D.Segments

  Build-depends:       base ==4.5.*

执行测试的 Test.hs 文件是:

import Test.QuickCheck
import HsMesher.Algorithmes1D.Segments
import HsMesher.Algorithmes1D.Arcs
import HsMesher.Types

...

main = do
  putStrLn "My tests"
  quickCheck prop_test1
  quickCheck prop_test2

当我 运行 runhaskell test/Tests.hs 测试程序正确执行时。

但是当我键入 cabal configure --enable-tests && cabal build && cabal test 时,没有执行测试并且我收到以下消息:

cabal:未启用测试套件。你记得配置吗 '--启用测试'?

然而,使用 cabal install 正确安装库并使用 cabal sdist 正确存档。

你知道哪里出了问题吗?
quickCheck 与 Cabal 的集成有什么不明白的地方吗?

我正在使用 cabal v1.14.0、ghc v7.4.1

调用测试套件时不要忘记依赖关系很重要,因为 cabal 在您忘记依赖关系时不会明确抱怨。

Test-Suite my_tests
  Type:               exitcode-stdio-1.0
  Hs-Source-Dirs:     test
  Main-is:            Tests.hs
  Build-depends:      base ==4.5.* , HsMesher, QuickCheck