Visitar URL original
GitHub - sanjorgek/QuickCheckVariant: Generator of "valid" and "invalid" data in a type class · GitHub
Skip to content

About

Generator of "valid" and "invalid" data in a type class

Resources

Stars

1 star

Watchers

1 watching

Forks

Latest commit

 

History

30 Commits

Folders and files

Repository files navigation

QuickCheckVariant

Generator of "valid" and "invalid" data in a type class

QuickCheckVariant pipeline status

For example, if you created

data Person = Anonymous { getId::String } | Client { getUsername::String, getName::String, getEmail::String} deriving(Show,Eq)

We can provide means to generate valid and invalid data, like:

instance Variant Person where
  valid = do
    id <- alternative
    username <- alternative
    name <- alternative
    domain <- alternative
    ext <- alternative
    (oneof . return) [Anonymous id, Client username name (username++"@"++domain++ext)]
  invalid = do
    username <- alternative
    name <- alternative
    return $ Client username name ""

See this post for more details

More badges

QuickCheckVariant

forthebadge

forthebadge

forthebadge

forthebadge

About

Generator of "valid" and "invalid" data in a type class

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages