Как заставить Haskell QuickCheck 2.4 увеличить # тесты?

Хорошо, как я узнал из моего предыдущего вопроса, книга RWH уже устарела для QuickCheck. И, несмотря на все прочитанные мной посты, в которых рассказывается, как невероятно просто использовать QuickCheck, я не могу найти места, в котором рассказывалось бы, как изменить количество тестов, запускаемых для свойства.

RWH говорит:

handyCheck limit = check defaultConfig {
                     configMaxTest = limit
                   , configEvery   = \_ _ -> ""
                   }

Как это сделать с помощью QuickCheck 2.4? Что еще более важно, как бы я узнал сам? Пожалуйста, не говорите мне, что я должен был понять это из документации API.

2 ответа

Решение

Ты ищешь:

quickCheckWith stdArgs { maxSuccess = 5000 } someProp

Как я узнал

  1. Я пошел к документации API.
  2. Второе, что я увидел после quickCheck был Args введите с maxSuccess поле.
  3. Я не хотел писать все поля, поэтому я искал значение типа Args - нахождение stdArgs, (Используйте функцию поиска в вашем браузере - обычно Ctrl-F). ОТО, я мог бы использовать Google.
  4. Мне нужно было использовать мой Args напечатайте где-нибудь, чтобы я продолжал искать. Следующая строка была quickCheckWith - Бинго! С другой стороны, я мог бы использовать Google.

Как еще вы можете узнать

Как я уже говорил выше, вы могли бы использовать hoogle, чтобы найти множество функций, если вы понимаете, Args Тип - это ядро ​​того, что вам нужно (из пикши).

В противном случае вы, вероятно, будете вынуждены взглянуть на то, что делают другие пакеты, а это значит, что вам нужно знать, на что стоит обратить внимание. Папка примеров в QuickCheck кажется очевидной, но не все пакеты содержат такие примеры. Используя обратные зависимости, вы часто можете найти пакет для просмотра, но для QC многие пакеты не имеют явных зависимостей.

Для тех, кто хочет запустить все тесты сразу и предоставить их конфигурацию:

return []
main = $forAllProperties (quickCheckWithResult stdArgs { maxSuccess = 500 })
Другие вопросы по тегам