| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Propellor.Property.List
Synopsis
- props :: Props UnixLike
- data Props metatypes
- toProps :: forall {k} (metatypes :: k). [Property (MetaTypes metatypes)] -> Props (MetaTypes metatypes)
- propertyList :: forall {k} (metatypes :: k). SingI metatypes => Desc -> Props (MetaTypes metatypes) -> Property (MetaTypes metatypes)
- combineProperties :: forall {k} (metatypes :: k). SingI metatypes => Desc -> Props (MetaTypes metatypes) -> Property (MetaTypes metatypes)
Documentation
props :: Props UnixLike Source #
Start accumulating a list of properties.
Properties can be added to it using (&) etc.
Props is a combination of a list of properties, with their combined metatypes.
toProps :: forall {k} (metatypes :: k). [Property (MetaTypes metatypes)] -> Props (MetaTypes metatypes) Source #
propertyList :: forall {k} (metatypes :: k). SingI metatypes => Desc -> Props (MetaTypes metatypes) -> Property (MetaTypes metatypes) Source #
Combines a list of properties, resulting in a single property that when run will run each property in the list in turn, and print out the description of each as it's run. Does not stop on failure; does propagate overall success/failure.
For example:
propertyList "foo" $ props & bar & baz
combineProperties :: forall {k} (metatypes :: k). SingI metatypes => Desc -> Props (MetaTypes metatypes) -> Property (MetaTypes metatypes) Source #
Combines a list of properties, resulting in one property that ensures each in turn. Stops if a property fails.
combineProperties "foo" $ props & bar & baz
This is similar to using mconcat with a list of properties,
except it can combine together different types of properties.