Скажем, я хочу написать некоторые модульные тесты для функции (!!)
.
my_prop xs n = ...
Я хочу ограничить n только действительными индексами, и я знаю, что могу сделать что-то вроде
my_prop xs n = (not.null) (drop n xs) ==> ...
Но это делает так, что подавляющее большинство сгенерированных случаев являются недействительными и отбрасываются. Есть ли способ, который я могу настроить, чтобы QuickCheck сначала генерировал список xs
и использует его значение для генерации только допустимых случаев n
?