PréludeChargé par défaut — aucun import nécessaire.
Arbitrary — générateurs par défaut pour les tests fondés sur les propriétés
Synopsis
interface Arbitrary a where
arbitrary : Gen a
Un type doté d'un Gen canonique (un générateur pur avec réduction intégrée, voir Core.Gen). oppi test résout arbitrary au type de chaque variable quantifiée, l'exécute pour produire des valeurs d'essai et — sur une propriété réfutée — utilise son arbre de réduction pour signaler un contre-exemple minimal.
Pour écrire une instance, construisez-la avec les combinateurs de générateurs mapGen/pureGen/bindGen plutôt que map/pure/>>=.
Instances : Bool,
Char,
Int,
Int16,
Int32,
Int64,
Int8,
Json,
Nat,
Rational,
Regex,
String,
Word16,
Word32,
Word64,
Word8
arbitraryListN : Arbitrary a => Int -> Gen (List a)
gen : Arbitrary a => Int -> a
Passerelle de commodité : une unique valeur engendrée à partir d'une graine (taille fixée à 30). Permet aux appelants qui propagent la graine (et au lanceur de propriétés actuel) de tirer une valeur sans toucher directement à la machinerie Gen/arbre-de-réduction.