Я пишу файл клики для установки библиотеки, написанной на 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: наборы тестов не включены. Вы не забыли настроить с помощью '--enable-tests'?
Однако библиотека правильно установлена с cabal install
и правильно заархивирована с cabal sdist
.
Есть ли у вас идеи, что не так?
Есть ли что-то, чего я не понял в интеграции quickCheck с Cabal?
Я использую cabal v1.14.0, ghc v7.4.1
cabal biuld
работает? Я ожидаю, что для теста потребуетсяbuild-depends: base, yourlibrary
(по крайней мере). - person d8d0d65b3f7cf42   schedule 19.03.2015