我使用Spock和wreq在 Haskell 中编写了一个非常简单的应用程序。我想写一些测试,但我不知道该怎么做。
该应用程序所做的只是向另一台服务器发出 HTTP 请求,并将 JSON 响应转换为对人类友好的消息。如果有帮助,这里是代码。我想编写一个测试,在给定某个 JSON 响应的情况下断言人性化消息是正确的。
在 Ruby 中,我会模拟 HTTP 客户端,在这种情况下wreq
,以控制我得到的 JSON 响应,但我不确定在 Haskell 中如何,甚至是否可以做到这一点。
根据我从研究中收集的信息,听起来类型类约束类型变量是要走的路,这对我来说就像依赖注入,但我不确定如何在 Spock 和wreq。
Spock 测试教程描述了如何在听起来很棒的水平上测试Spock IO Application
。我不确定的部分是如何“注入”模拟 HTTP 客户端来控制 JSON 响应。
任何帮助表示赞赏!