3

テスト用に 2 つの実際のパラメーターを取得する関数があります。両方の値は、完全に恣意的であることができない適切な形式である必要があるため、Arbitrary インスタンスによって作成されます。
だから私は次のコードを作成します

let updating (x:SomeType) (y:SomeOtherType) =
    let result = update x y
    result.someProp = x.someProp
    && result.otherProp = y.otherProp

let arbSomeType = 
    Arb.generate<SomeType> 
        |> Gen.filter fun x -> x.checkSomeStuff
        |> Arb.fromGen

let arbSomeType = 
    Arb.generate<SomeOtherType> 
        |> Gen.filter fun x -> x.checkPropertiesOfThis
        |> Arb.fromGen

しかし、これら 2 つの Arbitrary インスタンスを結合して、テスト メソッドのシグネチャと一致させるにはどうすればよいでしょうか?

//let prop = Prop.forAll arbSomeType + arbSomeType updating

Check.QuickThrowOnFailure prop
4

1 に答える 1