Как я могу настроить простой тест с помощью Cabal?
Вопрос
У меня есть проект Haskell и Cabal package-description, который позволяет мне создавать и устанавливать мой пакет с
$ cabal configure $ cabal build $ cabal install
Но как насчет cabal test
?В справке Cabal говорится о настройке набора тестов с помощью UserHooks, но как я могу это сделать?
Решение
Как упоминал Дункан в ответе Грега, Cabal-1.10 имеет поддержку наборов тестов из коробки.
В руководство пользователя кажется, у меня есть лучшая информация, которую я нашел о том, как это использовать.
Вот фрагмент из руководства, в котором показано, как использовать exitcode-stdio
тип теста:
фу.заговор
Name: foo
Version: 1.0
License: BSD3
Cabal-Version: >= 1.9.2
Build-Type: Simple
Test-Suite test-foo
type: exitcode-stdio-1.0
main-is: test-foo.hs
build-depends: base
тест-foo.hs:
module Main where
import System.Exit (exitFailure)
main = do
putStrLn "This test always fails!"
exitFailure
Другие советы
Для одного из подходов см. Настройка простого теста с помощью Cabal.
У этого подхода есть недостатки, и есть открытый билет Кабалы это предполагает возможность более прямого указания тестов, например ,,
test
test-is: Test
build-depends: QuickCheck
hs-source-dirs: tests src