【发布时间】:2021-05-11 22:30:10
【问题描述】:
我不确定如何在FsUnit.Xunit 中编写测试。
我想检查列表中的至少一个元素是否满足谓词。我知道如何使用should be True 编写此代码,但通常您可以使用专用函数获得更好的错误消息。
希望这段代码能清楚地说明我想要实现的目标:
open Xunit
open FsUnit.Xunit
type Foo =
{
X : int
}
[<Fact>]
let ``squares`` () =
let xs =
[ { X = 1 }; { X = 2 }; { X = 3 } ]
|> List.map (fun foo -> { X = foo.X * foo.X })
actual
|> should exists (satisfies (fun foo -> foo.X = 9)) // Not real code
【问题讨论】: