如何运行作为已安装/安装的Cabal软件包的一部分的测试?

时间:2015-10-09 14:26:43

标签: haskell testing cabal package-managers cabal-install

我使用cabal从Hackage安装了一个Haskell软件包,并希望运行作为软件包一部分的测试套件,但我不清楚{{1}文档如何做到这一点。

我试过了:

cabal

及其各种组合和排列,但似乎没有运行测试:我没有关于测试运行的报告,也没有生成我知道测试应该生成的输出。

如何运行作为已安装的cabal install --reinstall --enable-tests --run-tests the-package 软件包或我正在安装的软件包的一部分的测试?

1 个答案:

答案 0 :(得分:4)

--run-tests标志似乎不适用于当前版本的cabal--enable-tests标志不再将测试作为cabal的新功能运行。在问题解决之前,您可以 手动 通过执行以下操作来验证包是否通过了测试套件:

  1. 使用cabal下载包源
  2. 使用cabal在沙盒中构建程序包
  3. 使用cabal在沙箱中运行测试
  4. 使用此系列cabal命令运行the-package

    的测试
    cabal get the-package
    cd the-package*
    cabal sandbox init
    cabal install --dependencies-only
    cabal configure --enable-tests
    cabal build
    cabal test
    cd ../
    rm -r the-package*
    

    或者使用这个等效的单行:

    cabal get the-package && cd the-package* && cabal sandbox init && cabal install --dependencies-only && cabal configure --enable-tests && cabal build && cabal test && cd ../ && rm -r the-package*