Когда я хочу протестировать чистый код с помощью QuickCheck
, мне часто приходится писать экземпляр Arbitrary
. Для тестирования монадического кода я могу использовать Test.QuickCheck.Monadic
, как описано в этой статье.
Мой вопрос : существует ли какой-нибудь канонический способ генерации данных, который зависит от монадического контекста? В частности, существует ли монадическая версия Arbitrary? Как бы вы генерировали данные, требующие монадического контекста?