В 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 , но я не смог найти ни одного примера того, как это сделать.
Кто-нибудь может дать руководство?