我刚刚开始使用FsCheck,想深入挖掘一下,我有以下测试用例:
[Property]
public void some_test(HttpStatusCode httpStatusCode)
现在,我只想要失败的httpStatusCode
,如何使用FsCheck实现?我有以下代码:
Prop.ForAll<HttpStatusCode>(code => new Func<bool>(() => !new HttpResponseMessage(code).IsSuccessStatusCode).When(true)).QuickCheck();
但不知道如何将其挂钩到我的测试用例的Property
属性中。网上的例子对于如此微不足道的事情来说相当复杂。任何帮助或指导将不胜感激。
对于this这样的东西会更好,但是对于自定义对象和自定义逻辑。
干杯。
答案 0 :(得分:0)
您可以使用When
方法进行过滤。
类似的东西:
Prop.ForAll<HttpStatusCode>(code =>
!new HttpResponseMessage(code).IsSuccessStatusCode)
.When(code is failure)
)
.QuickCheck();