Question

J'ai un projet Haskell et une description de paquetage Cabal qui me permettent de construire et d'installer mon paquet avec

$ cabal configure
$ cabal build
$ cabal install

Mais qu'en est-il de cabal test? L’aide de Cabal dit de configurer une suite de tests avec UserHooks, mais comment puis-je le faire?

Était-ce utile?

La solution

Comme Duncan l'a mentionné dans sa réponse, Cabal-1.10 prend en charge les suites de tests prêtes à l'emploi.

Le manuel semble avoir le meilleure information que j'ai trouvée sur la façon de s'en servir.

Voici un extrait du manuel qui explique comment utiliser le exitcode-stdio type de test:

foo.cabal

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

test-foo.hs:

module Main where

import System.Exit (exitFailure)

main = do
    putStrLn "This test always fails!"
    exitFailure

Autres conseils

Pour une approche, voir Créer un test simple avec Cabal .

Cette approche présente des inconvénients et il existe un billet ouvert sur Cabal qui suggère d'être capable de spécifier des tests plus directement, par exemple ,

test
  test-is: Test
  build-depends: QuickCheck
  hs-source-dirs: tests src
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top