如何使用 cabal 在 ghcid 中运行测试套件?
Posted
技术标签:
【中文标题】如何使用 cabal 在 ghcid 中运行测试套件?【英文标题】:How to run test suite in ghcid with cabal? 【发布时间】:2020-08-15 16:24:44 【问题描述】:我在https://www.parsonsmatt.org/2018/05/19/ghcid_for_the_win.html 的堆栈中找到了这样做的参考,并在此处提及:https://github.com/ndmitchell/ghcid/issues/128
我尝试过的:
[nix-shell:~/NewProjects/orgmode-parse]$ cabal v2-repl test
cabal: Cannot open a repl for the package test, it is not in this project
(either directly or indirectly). If you want to add it to the project then
edit the cabal.project file.
[nix-shell:~/NewProjects/orgmode-parse]$ cabal v2-repl Test.test
cabal: Unknown target 'Test.test'.
There is no component 'Test.test'.
[nix-shell:~/NewProjects/orgmode-parse]$ cabal v2-repl Test.test
cabal: Unknown target 'Test.test'.
There is no component 'Test.test'.
【问题讨论】:
【参考方案1】:ghcid --command='cabal v2-repl test:tests' --test 'Main.main'
tests
是 cabal 文件中定义的测试套件的名称。而Main.main
指的是Main
模块的main
函数。
【讨论】:
实际上这似乎有一个限制,因为它只会重新加载对测试文件本身的更改,而不是相关的可执行文件/库。 github.com/ndmitchell/ghcid/issues/208#issuecomment-674493644以上是关于如何使用 cabal 在 ghcid 中运行测试套件?的主要内容,如果未能解决你的问题,请参考以下文章
使用 cabal 的详细 0.9 测试时出现“Prelude.read: no parse”错误
在 Ubuntu 14.04.5 中使用 cabal 时,如何在 Haskell 中安装分析库?