Ich habe wirklich nicht verwendet FsUnit, aber so etwas wie dies funktionieren sollte ...
testedFunc() |> Option.isSome |> should be true
Oder weil eine Option bereits eine IsSome Eigenschaft hat, könnten Sie dies tun, aber der Fall vorsichtig sein - es ist anders als die Option.isSome
Funktion.
testedFunc().IsSome |> should be true
Ein dritter Ansatz wäre, um die Funktion zu komponieren zusammen Sie mit Option.isSome
Prüfung sind eine Funktion zu erhalten, die boolean direkt zurückgibt. Dies ist in diesem Beispiel nicht so nützlich, aber wenn Sie eine Funktion zum Zurücksetzen von Optionen mehrere Male mit einer Vielzahl von Eingaben testen müssen, könnte dieser Ansatz dazu beitragen, doppelten Code zu reduzieren.
let testedFunc = testedFunc >> Option.isSome
testedFunc() |> should be true
Zum Vergleich mit Unquote (http://code.google.com/p/unquote/), siehe https://gist.github.com/2366849 –