Ich versuche zu lernen, wie man FsCheck richtig verwendet und es mit Expecto im Moment integriert. Ich kann Eigenschaftstests ausführen, wenn ich die standardmäßige FsCheck-Konfiguration verwende, aber wenn ich versuche, meinen eigenen Generator zu verwenden, verursacht dies eine Stapelüberlauf-Ausnahme.Expecto FsCheck bekomme Stapelüberlauf Ausnahme beim Generieren von String
Hier ist mein Generator
type NameGen() =
static member Name() =
Arb.generate<string * string>
|> Gen.where (fun (firstName, lastName) ->
firstName.Length > 0 && lastName.Length > 0
)
|> Gen.map (fun (first, last) -> sprintf "%s %s" first last)
|> Arb.fromGen
|> Arb.convert string id
Und ich versuche es so zu verwenden:
let config = { FsCheckConfig.defaultConfig with arbitrary = [typeof<NameGen>] }
let propertyTests input =
let output = toInitials input
output.EndsWith(".")
testPropertyWithConfig config "Must end with period" propertyTests
Die Ausnahme geworfen wird, bevor es in die Gen.where
Funktion
Was mache ich falsch? Danke