首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Hspec编写嵌套断言

使用Hspec编写嵌套断言
EN

Stack Overflow用户
提问于 2021-05-03 04:29:49
回答 1查看 57关注 0票数 0

Ihm正在努力用HSpec实现一个看似简单的测试问题:我想测试一个函数

代码语言:javascript
复制
myFunc :: (Exception e) a -> Either e MyRecord

在一个测试用例中,我想首先断言返回值是一个Right值,然后展开该值以断言其内容。我还没有想出一种方法来在没有繁琐的case表达式的情况下做到这一点。有没有同时允许模式匹配的断言操作符?

我正在寻找的是以下内容(伪Haskell):

代码语言:javascript
复制
describe "myFunc" $ do
    it "should return funky stuff" $ do
      let result = myFunc <testArgument>
      result `shouldBe` (Right testRecord)
      testRecord `shouldBe` <expectedRecord>

这只是为了说明这个想法,当然,RHS上的模式匹配是不起作用的。

EN

回答 1

Stack Overflow用户

发布于 2021-05-03 04:52:59

shouldSatisfy中使用自定义函数,如下所示:result `shouldSatisfy` either (const False) (<expectedRecord> ==)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67360841

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档