Я использую doctest, и мне нравится тот факт, что я могу тестировать неэкспортированные функции, откуда они определены:
module Foo (frobnicate) where
-- |
-- >>> randomInt = 42
-- True
randomInt :: Int
randomInt = 42
До сих пор я хранил экземпляры QuickCheck в test-suite
, поэтому library
не зависит от тестовых пакетов, но это означает, что я не могу запускать QuickCheck из doctests.
Я, конечно, не могу использовать doctest и запустить QC из test-suite
, но тогда мне придется экспортировать каждую функцию, которую я хочу протестировать.
Есть ли способ иметь doctests, которые используют экземпляры QC без зависимости основного library
от QC (и без перезаписи экземпляров в doctest "repl")?