úÎÌ‚      Varaint class((c) Jorge Santiago Alvarez Cuadros, 2015GPL-3sanjorgek@ciencias.unam.mx experimentalportableSafe ºCThe class of things wich can be tested with invalid or valid input.Property for valid inputProperty for invalid inputYou can defineNinstance (Varaint a) => Arbitrary a where {arbitrary = oneof [valid, invalid]})Get a generator of valid random data type+Get a generator of invalid random data type Adds a callback BAdds the given string to the counterexample if the property fails. Like :, but tries to shrink the argument for failing test cases.Adds a callbackBAdds the given string to the counterexample if the property fails.Like :, but tries to shrink the argument for failing test cases.5Instead of variant we use valid or invalid generatorsSame as Testeable       0QuickCheckVariant-1.0.0.0-HqMyvYLJ0Z86boki1zBzIpTest.QuickCheck.Variant VarTestable propertyValidpropertyInvalidVariantvalidinvalidmapTotalResultValidmapRoseResultValid mapPropValid callbackValidcounterexampleValidshowCounterexampleValidforAllShrinkValidmapTotalResultInvalidmapRoseResultInvalidmapPropInvalidcallbackInvalidcounterexampleInvalidshowCounterexampleInvalidforAllShrinkInvalid$fVarTestable(->)$fVarTestableBool(QuickCheck-2.10.1-BUFYQzp5Pjm7JbQeTzW89lTest.QuickCheck.PropertyforAll