构建haskell堆栈测试而不运行
我做了一个非常简单的项目,测试套件失败了 现在,当我运行构建haskell堆栈测试而不运行,haskell,command-line-arguments,haskell-stack,build-tools,Haskell,Command Line Arguments,Haskell Stack,Build Tools,我做了一个非常简单的项目,测试套件失败了 现在,当我运行stack--test--no run tests build时,我希望它构建项目,但不运行测试。相反,它运行以下测试: ➜ noruntests-play git:(master) stack --test --no-run-tests build noruntests-play-0.1.0.0: test (suite: test) test: error CallStack (from HasCallStack): error
stack--test--no run tests build
时,我希望它构建项目,但不运行测试。相反,它运行以下测试:
➜ noruntests-play git:(master) stack --test --no-run-tests build
noruntests-play-0.1.0.0: test (suite: test)
test: error
CallStack (from HasCallStack):
error, called at tests/Tests.hs:4:8 in main:Main
Test suite failure for package noruntests-play-0.1.0.0
test: exited with: ExitFailure 1
Logs printed to console
我做错了什么?谢谢大家! 您应该在
--test
之前放置build
选项,如下所示:
$ stack build --test --no-run-tests
我不确定这是bug还是特性。若你们对开发者的反馈感兴趣,你们可以打开这个问题。就我个人而言,在构建之前通过--test
似乎很奇怪。在某种合理的意义上,测试是构建的子部分,子部分或选项通常指定在主选项的右侧
此外,还有您想要的较短版本(因为build--test
只是test
):
我认为你在某种程度上是对的,另一方面,如果这个选项不被认可,我最好不要默默地把它扔掉,而是报告一个错误或警告。我来买票。
$ stack test --no-run-tests