Safe Haskell | None |
---|---|
Language | Haskell2010 |
- genJSON :: Ranges -> Gen ByteString
- genJSONValue :: Ranges -> Gen Value
- genConstrainedJSON :: Ranges -> Schema -> Gen ByteString
- genConstrainedJSONValue :: Ranges -> Schema -> Gen Value
- data Schema
- readSchema :: (MonadIO m, MonadThrow m) => FilePath -> m Schema
- data Ranges = Ranges {
- _numberRange :: NumberRange
- _integerRange :: IntegerRange
- _stringRange :: StringRange
- _arrayRange :: ArrayRange
- _objectRange :: ObjectRange
- newtype NumberRange = NumberRange {}
- newtype StringRange = StringRange {}
- newtype ArrayRange = ArrayRange {
- unArrayRange :: Range Int
- newtype ObjectRange = ObjectRange {}
- sensibleRanges :: Ranges
- numberRange :: Lens' Ranges NumberRange
- integerRange :: Lens' Ranges IntegerRange
- stringRange :: Lens' Ranges StringRange
- arrayRange :: Lens' Ranges ArrayRange
- objectRange :: Lens' Ranges ObjectRange
Documentation
genJSON :: Ranges -> Gen ByteString Source #
Generator for arbitrary unconstrained JSON values encoded as UTF-8
genConstrainedJSON :: Ranges -> Schema -> Gen ByteString Source #
Generator for arbitrary JSON values constrained by the given JSON Schema and encoded as UTF-8
genConstrainedJSONValue :: Ranges -> Schema -> Gen Value Source #
Generator for arbitrary JSON values constrained by the given JSON Schema
readSchema :: (MonadIO m, MonadThrow m) => FilePath -> m Schema Source #
Reads a JSON Schema from a filepath
Ranges | |
|
newtype NumberRange Source #
newtype StringRange Source #
newtype ArrayRange Source #
newtype ObjectRange Source #
sensibleRanges :: Ranges Source #
Sensible ranges for arbitrary JSON values if you're too lazy to define some
integerRange :: Lens' Ranges IntegerRange Source #