В F # у меня есть запись с несколькими полями:
type myRecord = { a:float; b:float; c:float }
Я использую FsCheck для проверки некоторых свойств, использующих эту запись. Для (надуманного) примера,
let verify_this_property (r:myRecord) = myFunction(r) = (r.a * r.b) / r.c
Из-за внутренних ограничений реализации myFunction я хотел бы иметь FsCheck создать тестовые примеры, в которых каждое из полей a, b, c ограничено неотрицательными числами с плавающей запятой.
Я подозреваю, что это требует создания генератора для myRecord , но мне не удалось найти никаких примеров того, как это сделать.
Кто-нибудь может дать руководство?